Schemas as Toposes
description
Transcript of Schemas as Toposes
Schemas as ToposesSteven Vickers
Department of Pure Mathematics
Open University
Z schemas – specification 1st order theories – logic
geometric theories
toposes – as generalized topological spaces
Z schemase.g.
Trans [X]
R: XX
RR R
schema namegeneric set
declaration
predicate
meaning: “function”: {sets} {sets}
X {RXX RR R}
= {transitive relations on X}
First-order theorye.g.
sort X
binary predicate R(x,y)
x,y,z:X. (R(x,y) R(y,z) R(x,z))
vocabulary
axiom
Meaning:
Set of all logical consequences of axioms amongst well-formed formulae using vocabulary.
Models – of a first-order theory
• Interpret vocabulary as actual sets, relations, etc.
• … in such a way that the axioms are all true
e.g. for Trans
A model of Trans is a pair (X,R) with X a set and R a transitive binary relation on it.
Guiding principle:
The purpose of a schema or theory is to delineate a class of models
Schemas as Theories
Relational calculus Predicate calculus
RR R x,y,z. (R(x,y) R(y,z) R(x,z))
Generics as parameters Sorts as carriers
Higher-order First-order
can translate
geometric logic
Types in Z
Z integers cartesian
productpower set
Presence of means can have variables and terms for sets, not just for elements.
e.g. S:X. … Higher order! 1st order logic can’t do this.
Geometric logic
First order, many sorted.
Two levels of axiom formation:
• Formulas: built using , V, , , true, false
• Axioms: x:X, y:Y, … ((x,y,…) (x,y,…))
formulas
e.g. groupsGroup [G]
e: G-1: G G
•: GG G
x,y,z: G (true x•(y•z) = (x•y) •z)
x: G (true x•e = x e•x = x)
x: G (true x•x-1 = e x-1•x = e)
Types out of logic
Th [X, Y, Z]
i: X Z
j: Y Z
x, x': X. (i(x) = i(x') x = x')
y, y': Y. (j(y) = j(y') y = y')
z: Z. (true x: X. z = i(x) y: Y. z = j(y))
x: X, y: Y. (i(x) = j(y) false)
e.g. forcing Z X+Y (disjoint union)
Moral
either:
can eliminate “type constructor” X+Y by introducing new sort with 1st order structure and axioms
or:can harmlessly extend geometric logic
with + as type constructor
Using infinite disjunctionse.g. forcing Y F(X) (finite power set)
Th2 [X, Y]: Y{–}: X Y: YY Y
y,y',y": Y. (true (yy')y" = y(y'y"))
y,y': Y. (true yy' = y'y)
y: Y. (true y = y y = y)
y: Y. (true Vnnat x1, …, xn. y = {x1} …{xn})
x1, …, xm, x'1, …, x'n: X. ({x1} …{xm} = {x'1} …{x'n} 1im V1jn xi = x'j 1jn V1im x'j = xi)
Weak 2nd orderGeometric logic has 2nd order capabilities for finite sets.
e.g.
S: F(X). (…)– in formulas
S: F(X). (…)– in axioms
Also, if S finite and a formula then
xS. (x)
definable as a formula
Vnnat x1, …, xn. (S = {x1} …{xn} 1in (xi))
Topology – e.g. real lineR
L, R Q
true q: Q. L(q) q': Q. R(q')
q, q': Q. (q < q' L(q') L(q))
q: Q. (L(q) q': Q. (q < q' L(q'))
q, q': Q. (q > q' R(q') R(q))
q: Q. (R(q) q': Q. (q > q' R(q'))
q: Q. (L(q) R(q) false)
q, q': Q. (q < q' L(q) R(q'))
Each model is a real number
(Dedekind section)
Topology is intrinsic:each proposition is an
open set
L(q): q < xR(q): x < q
GeoZ – geometric logic as specification language
•Take Z-style calculus
•Modify type system and logic to be geometric
Type constructors:
, +, equalizers, coequalizers, N, Z, Q, F, free algebras
But not:
(power set), (function set), R
•Constrains the language
•… but practical expressive power seems comparable with Z
Geometric logic – summary of features• Advantages (simplicity) of 1st order logic
• … but can emulate higher order features (e.g. weak 2nd order)
• Natural picture: schema specifies “space of implementations”
• Good structure on each class of models – categorical, topological
• Natural to consider maps that are functorial, continuous
Full mathematical answer is abstruse! –
geometric morphisms between classifying toposes
(topos as generalized topological space)
Challenge
Can the mathematics be made less abstruse for the sake of specificational practice?
(And to the benefit of the mathematics too!)
Topology-free spacesSynthetic topology
Idea:
Treat spaces like sets – forget topology
For functions:
Use constraints on mode of definition to ensure
definable continuous
Old examples
• polynomial functions p: R R are automatically continuous
p(x) = anxn + … + a1x + a0
• denotational semantics of programming languages
Given: a functional programming language, and a denotational semantics for it.
Each function written in that language denotes a continuous map between two topological spaces, “semantic domains”.
Continuity guaranteed by general semantic result.
Newer example(Escardo) -calculus
-definable functions between topological spaces are automatically continuous
– even if some of the function spaces don’t properly exist!
Simple proofs of topological results (compactness, closedness, …)
• express logical essence of proof
• hide topological housekeeping (continuity proofs etc.)
Geometric reasoningDescribe points of space = models of geometric theory
intrinsic topology
Describe function using geometric constructions
automatic continuity
Geometrically constructivist mathematics
“topology-free spaces”
Logical approach
locales / formal topologies (propositional theories)
toposes (predicate theories)
Topical Categories of Domains(Vickers)
•Apply methods to denotational semantics.
[SFP] = “space” of SFP domains
•Solving recursive domain equations X F(X):
– any continuous map F: [SFP] [SFP]
– has initial algebra X
– and its structure map : F(X) X is an isomorphism (a fixed point)
– copes with problems like F(X) = [XX]
topos
geometric
morphism
(Topical Categories of Domains)Task: define basic domain constructions (, +, function spaces, power domains, …) geometrically (geometric constructivism).
Then e.g. function space construction is a geometric morphism.
[- -]: [SFP]2 [SFP]
Constructive reasoning
geometric morphism
generalized continuity required for fixed points as limits
If E any local topos (e.g. [SFP]), F: E E any geometric morphism, then F has an initial fixed point.
F() F2() F3() … – take colimit
Mathematical payofffrom geometric constructivism
• Focus on essence of mathematics
• Ignore topological housekeeping (e.g. continuity proofs)
• Includes generalization from topology to toposes
e.g.
• free access to fixed point results (e.g. domain equations)
• [SFP] a presheaf topos
– without examining category structure of topos
• “Spatial” proofs in locale theory
Current work (+ Townsend + Escardo)
• Make -calculus methods work with locales (propositional geometric theories)
• Combine with geometric logic
e.g. PU(PL(X)) $($X)
upper and lower powerlocales
(cf. powerdomains)
Definable in terms of geometric theories
function spaces
– so can use -calculus
Specificational aim
Mathematical “logic of continuity” (topology-free spaces)
Formal GeoZ specification language
Can test more fully in application
ConclusionsComputer science
has big influence on
Pure mathematics
The maths it leads to is worth investigating even for its own sake
… BUT it retains links with computer science:
• motivation
• potential applications