26
Schemas as Toposes Steven Vickers Department of Pure Mathematics Open University Z schemas – specification 1st order theories – logic geometric theories toposes – as generalized topological spaces

Schemas as Toposes Steven Vickers Department of Pure Mathematics Open University Z schemas – specification1st order theories – logic geometric theories

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

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

product

power 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. groups

Group [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 disjunctions

e.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