Programming and Proving with Higher Inductive Types
|
|
- Magdalene Jacobs
- 5 years ago
- Views:
Transcription
1 Programming and Proving with Higher Inductive Types Dan Licata Wesleyan University Department of Mathematics and Computer Science
2 Constructive Type Theory Three senses of constructivity: [Martin-Löf] 2
3 Constructive Type Theory [Martin-Löf] Three senses of constructivity: Non-affirmation of certain classical principles provides axiomatic freedom 2
4 Synthetic geometry Euclid s postulates 1. To draw a straight line from any point to any point. 2. To produce a finite straight line continuously in a straight line. 3. To describe a circle with any center and distance. 4. That all right angles are equal to one another. 5. That, if a straight line falling on two straight lines make the interior angles on the same side less than to right angles,the two straight lines, if produced indefinitely, meet on that side on which are the angles less than the to right angles. 3
5 Synthetic geometry Euclid s postulates 1. To draw a straight line from any point to any point. 2. To produce a finite straight line continuously in a straight line. 3. To describe a circle with any center and distance. 4. That all right angles are equal to one another. 5. That, if a straight line falling on two straight lines make the interior angles on the same side less than to right angles,the two straight lines, if produced indefinitely, meet on that side on which are the angles less than the to right angles. Cartesian 3
6 Synthetic geometry Euclid s postulates 1. To draw a straight line from any point to any point. 2. To produce a finite straight line continuously in a straight line. 3. To describe a circle with any center and distance. 4. That all right angles are equal to one another. 5. That, if a straight line falling on two straight lines make the interior angles on the same side less than to right angles,the two straight lines, if produced indefinitely, meet on that side on which are the angles less than the to right angles. models Cartesian 3
7 Synthetic geometry Euclid s postulates 1. To draw a straight line from any point to any point. 2. To produce a finite straight line continuously in a straight line. 3. To describe a circle with any center and distance. 4. That all right angles are equal to one another. models Cartesian 3
8 Synthetic geometry Euclid s postulates 1. To draw a straight line from any point to any point. 2. To produce a finite straight line continuously in a straight line. 3. To describe a circle with any center and distance. 4. That all right angles are equal to one another. models Cartesian Spherical 3
9 Synthetic geometry Euclid s postulates 1. To draw a straight line from any point to any point. 2. To produce a finite straight line continuously in a straight line. 3. To describe a circle with any center and distance. 4. That all right angles are equal to one another. 5. Two distinct lines meet at two antipodal points. models Cartesian Spherical 3
10 Synthetic mathematics Type theory 1.τ ::= b τ 1 τ 2 2.e ::= x e 1 e 2 λx.e 3.(λx.e)e 2 = e[e 2 /x] 4
11 Synthetic mathematics Type theory 1.τ ::= b τ 1 τ 2 2.e ::= x e 1 e 2 λx.e 3.(λx.e)e 2 = e[e 2 /x] Set-theoretic functions 4
12 Synthetic mathematics Type theory 1.τ ::= b τ 1 τ 2 2.e ::= x e 1 e 2 λx.e 3.(λx.e)e 2 = e[e 2 /x] Set-theoretic functions Domain-theoretic functions 4
13 Synthetic mathematics Type theory Set-theoretic functions 1.τ ::= b τ 1 τ 2 2.e ::= x e 1 e 2 λx.e 3.(λx.e)e 2 = e[e 2 /x] 4.Y(f) = f(y(f)) Domain-theoretic functions 4
14 Constructive Type Theory Three senses of constructivity: 5
15 Constructive Type Theory Three senses of constructivity: Non-affirmation of certain classical principles provides axiomatic freedom 5
16 Constructive Type Theory Three senses of constructivity: Non-affirmation of certain classical principles provides axiomatic freedom Computational interpretation supports software verification and proof automation 5
17 Computational Interpretation There is an algorithm that, given a closed program e : bool, computes either an equality e = true, or an equality e = false. 6
18 Computational Interpretation There is an algorithm that, given a closed program e : bool, computes either an equality e = true, or an equality e = false. Requires functions with arbitrary domain/ range to be computable, but stating theorem for bool offers some flexibility 6
19 Computational Interpretation There is an algorithm that, given a closed program e : bool, computes either an equality e = true, or an equality e = false. Requires functions with arbitrary domain/ range to be computable, but stating theorem for bool offers some flexibility Basis for software verification and proof automation 6
20 Constructive Type Theory Three senses of constructivity: Non-affirmation of certain classical principles provides axiomatic freedom Computational interpretation supports software verification and proof automation 7
21 Constructive Type Theory Three senses of constructivity: Non-affirmation of certain classical principles provides axiomatic freedom Computational interpretation supports software verification and proof automation Props-as-types allows proof-relevant mathematics 7
22 Proof relevance x : A 8
23 Proof relevance x : A x =A y equality type 8
24 Proof relevance x : A p : x =A y equality type 8
25 Proof relevance x : A p : x =A y equality type Any structure or property C can be transported along an equality 8
26 Proof relevance x : A p : x =A y equality type Any structure or property C can be transported along an equality transport C (p) : C(x)! C(y) 8
27 Proof relevance x : A p : x =A y equality type Any structure or property C can be transported along an equality transport C (p) : C(x)! C(y) Leibniz s indiscernability of identicals 8
28 Proof relevance x : A p : x =A y equality type Any structure or property C can be transported along an equality transport C (p) : C(x)! C(y) Leibniz s indiscernability of identicals by a function: can it do real work? 8
29 Proof relevance x : A p : x =A y equality type 9
30 Proof relevance x : A p : x =A y equality type p1 = x=y p2 9
31 Proof relevance x : A p : x =A y equality type q : p1 = x=y p2 9
32 Proof relevance x : A p : x =A y equality type q : p1 = x=y p2 q1 = p1=p2 q2 9
33 Proof relevance x : A p : x =A y equality type q : p1 = x=y p2 r : q1 = p1=p2 q2 9
34 ... Proof relevance x : A p : x =A y equality type q : p1 = x=y p2 r : q1 = p1=p2 q2 higher equalities radically expand the kind of math that can be done synthetically 9
35 Homotopy Type Theory type theory category theory homotopy theory [Hofmann,Streicher,Awodey,Warren,Voevodsky Lumsdaine,Gambino,Garner,van den Berg] 10
36 Types as spaces α M N 11
37 Types as spaces type A is a space α M N 11
38 Types as spaces type A is a space α M N programs M:A are points 11
39 Types as spaces type A is a space α M N programs M:A are points proofs of equality α : M =A N are paths 11
40 Types as spaces type A is a space α path operations M N programs M:A are points proofs of equality α : M =A N are paths 11
41 Types as spaces type A is a space id α N M path operations id : M = M (refl) programs M:A are points proofs of equality α : M =A N are paths 11
42 Types as spaces type A is a space id α α -1 N M path operations id : M = M (refl) α -1 : N = M (sym) programs M:A are points proofs of equality α : M =A N are paths 11
43 Types as spaces type A is a space id α α -1 N M β P path operations id : M = M (refl) α -1 : N = M (sym) β o α : M = P (trans) programs M:A are points proofs of equality α : M =A N are paths 11
44 Homotopy Deformation of one path into another α β 12
45 Homotopy Deformation of one path into another α β 12
46 Homotopy Deformation of one path into another α = 2-dimensional path between paths β 12
47 Homotopy Deformation of one path into another α β = 2-dimensional path between paths δ : α =x=y β 12
48 Homotopy Deformation of one path into another α β = 2-dimensional path between paths δ : α =x=y β Then homotopies between homotopies. 12
49 Types as spaces type A is a space id α α -1 N M β path operations id : M = M (refl) α -1 : N = M (sym) β o α : M = P (trans) programs M:A are points P proofs of equality α : M =A N are paths homotopies ul : id o α = M=N α il : α -1 o α = M=M id asc : γ o (β o α) =M=P (γ o β) o α 13
50 Homotopy Type Theory type theory category theory homotopy theory [Hofmann,Streicher,Awodey,Warren,Voevodsky Lumsdaine,Gambino,Garner,van den Berg] 14
51 Types as -groupoids type A is an -groupoid infinite-dimensional algebraic structure, with morphisms, morphisms between morphisms,... each level has a groupoid structure, and they interact morphisms id : M = M (refl) α -1 : N = M (sym) β o α : M = P (trans) morphisms between morphisms ul : id o α = M=N α il : α -1 o α = M=M id asc : γ o (β o α) =M=P (γ o β) o α 15
52 Path induction Type of paths from a to somewhere y2 p2 y1 y3 p1 p3 a is inductively generated by id a 16
53 Path induction Type of paths from a to somewhere y2 p2 y1 y3 p1 p3 a is inductively generated by id a Fix a type A with element a:a. For a family of types C(y:A, p:a=y), to give an element of C(y,p) for all y and p:a=y, suffices to give an element of C(a,id) 16
54 Type theory is a synthetic theory of spaces/ -groupoids 17
55 Homotopy Type Theory type theory new programs and types category theory homotopy theory 18
56 Univalence [Voevodsky] 19
57 Univalence [Voevodsky] Equivalence of types is a generalization to spaces of bijection of sets 19
58 Univalence [Voevodsky] Equivalence of types is a generalization to spaces of bijection of sets Univalence axiom: equality of types (A =Type B) is (equivalent to) equivalence of types (Equiv A B) 19
59 Univalence [Voevodsky] Equivalence of types is a generalization to spaces of bijection of sets Univalence axiom: equality of types (A =Type B) is (equivalent to) equivalence of types (Equiv A B) all structures/properties respect equivalence 19
60 Univalence [Voevodsky] Equivalence of types is a generalization to spaces of bijection of sets Univalence axiom: equality of types (A =Type B) is (equivalent to) equivalence of types (Equiv A B) all structures/properties respect equivalence Not by collapsing equivalence, but by exploiting proof-relevant equality: transport does real work 19
61 Higher inductive types [Bauer,Lumsdaine,Shulman,Warren] New way of forming types: Inductive type specified by generators not only for points (elements), but also for paths 20
62 Constructivity Non-affirmation of classical principles Computational interpretation? Proof-relevant mathematics 21
63 Homotopy Type Theory type theory new programs and types new possibilities for computerchecked proofs category theory homotopy theory 22
64 Outline 1.Certified homotopy theory 2.Certified software 23
65 Outline 1.Certified homotopy theory 2.Certified software 24
66 Homotopy Theory A branch of topology, the study of spaces and continuous deformations 25 [image from wikipedia]
67 Homotopy in HoTT π1(s 1 ) = Z πk<n(s n ) = 0 Hopf fibration π2(s 2 ) = Z π3(s 2 ) = Z James Construction Freudenthal πn(s n ) = Z K(G,n) Cohomology axioms Blakers-Massey Van Kampen Covering spaces Whitehead for n-types π4(s 3 ) = Z? [Brunerie, Finster, Hou, Licata, Lumsdaine, Shulman] 26
68 Homotopy in HoTT π1(s 1 ) = Z πk<n(s n ) = 0 Hopf fibration π2(s 2 ) = Z π3(s 2 ) = Z James Construction Freudenthal πn(s n ) = Z K(G,n) Cohomology axioms Blakers-Massey Van Kampen Covering spaces Whitehead for n-types π4(s 3 ) = Z? [Brunerie, Finster, Hou, Licata, Lumsdaine, Shulman] 26
69 Homotopy Groups Homotopy groups of a space X: π1(x) is fundamental group (group of loops) π2(x) is group of homotopies (2-dimensional loops) π3(x) is group of 3-dimensional loops 27
70 Telling spaces apart = 28
71 Telling spaces apart = fundamental group is non-trivial (Z Z) fundamental group is trivial 28
72 The Circle Circle S 1 is a higher inductive type generated by loop base 29
73 The Circle Circle S 1 is a higher inductive type generated by base : S 1 loop : base = base base loop 29
74 The Circle Circle S 1 is a higher inductive type generated by point base : S 1 loop : base = base base loop 29
75 The Circle Circle S 1 is a higher inductive type generated by point path base : S 1 loop : base = base base loop 29
76 The Circle Circle S 1 is a higher inductive type generated by point path base : S 1 loop : base = base loop -1 id base loop Free type: equipped with structure id loop -1 inv : loop o loop -1 = id... loop o loop 29
77 The Circle Circle recursion: function S 1! X determined by base loop base : X loop : base = base base loop 30
78 The Circle Circle recursion: function S 1! X determined by base loop base : X loop : base = base base loop Circle induction: To prove a predicate P for all points on the circle, suffices to prove P(base), continuously in the loop 30
79 Fundamental group of circle How many different loops are there on the circle, up to homotopy? base loop 31
80 Fundamental group of circle How many different loops are there on the circle, up to homotopy? id base loop 31
81 Fundamental group of circle How many different loops are there on the circle, up to homotopy? id loop base loop 31
82 Fundamental group of circle How many different loops are there on the circle, up to homotopy? id loop loop -1 base loop 31
83 Fundamental group of circle How many different loops are there on the circle, up to homotopy? id loop loop -1 loop o loop base loop 31
84 Fundamental group of circle How many different loops are there on the circle, up to homotopy? id loop loop -1 loop o loop loop -1 o loop -1 base loop 31
85 Fundamental group of circle How many different loops are there on the circle, up to homotopy? id loop loop -1 loop o loop loop -1 o loop -1 loop o loop -1 base loop 31
86 Fundamental group of circle How many different loops are there on the circle, up to homotopy? id loop loop -1 loop o loop loop -1 o loop -1 base loop loop o loop -1 = id 31
87 Fundamental group of circle How many different loops are there on the circle, up to homotopy? base loop id 0 loop loop -1 loop o loop loop -1 o loop -1 loop o loop -1 = id 31
88 Fundamental group of circle How many different loops are there on the circle, up to homotopy? base loop id loop 0 1 loop -1 loop o loop loop -1 o loop -1 loop o loop -1 = id 31
89 Fundamental group of circle How many different loops are there on the circle, up to homotopy? base loop id loop loop loop o loop loop -1 o loop -1 loop o loop -1 = id 31
90 Fundamental group of circle How many different loops are there on the circle, up to homotopy? base loop id loop loop -1 loop o loop loop -1 o loop -1 loop o loop -1 = id 31
91 Fundamental group of circle How many different loops are there on the circle, up to homotopy? base loop id loop loop -1 loop o loop loop -1 o loop loop o loop -1 = id 31
92 Fundamental group of circle How many different loops are there on the circle, up to homotopy? base loop id loop loop -1 loop o loop loop -1 o loop -1 loop o loop -1 = id
93 Fundamental group of circle How many different loops are there on the circle, up to homotopy? base loop id loop loop -1 loop o loop loop -1 o loop integers are codes for paths on the circle loop o loop -1 = id 0 31
94 Fundamental group of circle Definition. Ω(S 1 ) is the type of loops at base i.e. the type (base =S1 base) 32
95 Fundamental group of circle Definition. Ω(S 1 ) is the type of loops at base i.e. the type (base =S1 base) Theorem. Ω(S 1 ) is equivalent to Z, by a map that sends o to + 32
96 Fundamental group of circle Definition. Ω(S 1 ) is the type of loops at base i.e. the type (base =S1 base) Theorem. Ω(S 1 ) is equivalent to Z, by a map that sends o to + Corollary: Fundamental group of the circle is isomorphic to Z 32
97 Fundamental group of circle Definition. Ω(S 1 ) is the type of loops at base i.e. the type (base =S1 base) Theorem. Ω(S 1 ) is equivalent to Z, by a map that sends o to + Corollary: Fundamental group of the circle is isomorphic to Z 0-truncation (set of connected components) of Ω(S 1 ) 32
98 Fundamental group of circle Theorem. Ω(S 1 ) is equivalent to Z Proof (Shulman, L.): two mutually inverse functions wind : Ω(S 1 )! Z loop - : Z! Ω(S 1 ) 33
99 Fundamental group of circle Theorem. Ω(S 1 ) is equivalent to Z Proof (Shulman, L.): two mutually inverse functions wind : Ω(S 1 )! Z loop - : Z! Ω(S 1 ) loop 0 = id loop +n = loop o loop o loop (n times) loop -n = loop -1 o loop -1 o loop -1 (n times) 33
100 Universal Cover wind : Ω(S 1 )! Z defined by lifting a loop to the cover, and giving the other endpoint of 0 34
101 Universal Cover wind : Ω(S 1 )! Z defined by lifting a loop to the cover, and giving the other endpoint of 0 lifting is functorial 34
102 Universal Cover wind : Ω(S 1 )! Z defined by lifting a loop to the cover, and giving the other endpoint of 0 lifting is functorial lifting loop adds 1 34
103 Universal Cover wind : Ω(S 1 )! Z defined by lifting a loop to the cover, and giving the other endpoint of 0 lifting is functorial lifting loop adds 1 lifting loop -1 subtracts 1 34
104 Universal Cover wind : Ω(S 1 )! Z defined by lifting a loop to the cover, and giving the other endpoint of 0 lifting is functorial lifting loop adds 1 lifting loop -1 subtracts 1 Example: wind(loop o loop -1 ) = = 0 34
105 Universal Cover 35
106 Universal Cover Cover : S 1! Type Cover(base) := Z Cover1(loop) := ua(successor) : Z = Z 35
107 Universal Cover defined by circle recursion Cover : S 1! Type Cover(base) := Z Cover1(loop) := ua(successor) : Z = Z 35
108 Universal Cover defined by circle recursion Cover : S 1! Type Cover(base) := Z Cover1(loop) := ua(successor) : Z = Z interpret loop as add 1 bijection 35
109 Universal Cover defined by circle recursion Cover : S 1! Type Cover(base) := Z Cover1(loop) := ua(successor) : Z = Z univalence interpret loop as add 1 bijection 35
110 Winding number wind : Ω(S 1 )! Z wind(p) = transportcover(p,0) lift p to cover, starting at 0 36
111 Winding number wind : Ω(S 1 )! Z wind(p) = transportcover(p,0) lift p to cover, starting at 0 wind(loop -1 o loop) 36
112 Winding number wind : Ω(S 1 )! Z wind(p) = transportcover(p,0) lift p to cover, starting at 0 wind(loop -1 o loop) = transport Cover (loop -1 o loop, 0) 36
113 Winding number wind : Ω(S 1 )! Z wind(p) = transportcover(p,0) lift p to cover, starting at 0 wind(loop -1 o loop) = transport Cover (loop -1 o loop, 0) = transport Cover (loop -1, transport Cover (loop,0)) 36
114 Winding number wind : Ω(S 1 )! Z wind(p) = transportcover(p,0) lift p to cover, starting at 0 wind(loop -1 o loop) = transport Cover (loop -1 o loop, 0) = transport Cover (loop -1, transport Cover (loop,0)) = transport Cover (loop -1, 1) 36
115 Winding number wind : Ω(S 1 )! Z wind(p) = transportcover(p,0) lift p to cover, starting at 0 wind(loop -1 o loop) = transport Cover (loop -1 o loop, 0) = transport Cover (loop -1, transport Cover (loop,0)) = transport Cover (loop -1, 1) = 0 36
116 Fundamental group of the circle The HoTT book Computer-checked 37
117 πn(s n ) in HoTT k th homotopy group n-dimensional sphere [image from wikipedia] 38
118 πn(s n ) in HoTT k th homotopy group n-dimensional sphere [image from wikipedia] 38
119 πn(s n ) = Z for n 1 Proof: Induction on n Base case: π1(s 1 ) = Z Inductive step: πn+1(s n+1 ) = πn(s n ) 39
120 πn(s n ) = Z for n 1 Proof: Induction on n Base case: π1(s 1 ) = Z Inductive step: πn+1(s n+1 ) = πn(s n ) Key lemma: S n n = Ω(S n+1 ) n 39
121 πn(s n ) = Z for n 1 Proof: Induction on n Base case: π1(s 1 ) = Z Inductive step: πn+1(s n+1 ) = πn(s n ) Key lemma: S n n = Ω(S n+1 ) n n-truncation: best approximation of a type such that all (n+1)-paths are equal 39
122 πn(s n ) = Z for n 1 Proof: Induction on n Base case: π1(s 1 ) = Z Inductive step: πn+1(s n+1 ) = πn(s n ) Key lemma: S n n = Ω(S n+1 ) n n-truncation: best approximation of a type such that all (n+1)-paths are equal higher inductive type generated by basen : S n loopn : Ω n (S n ) 39
123 S n n = Ω(S n+1 ) n n-truncation of S n is the type of codes for loops on S n+1
124 S n n = Ω(S n+1 ) n n-truncation of S n is the type of codes for loops on S n+1 Decode: promote n-dimensional loop on S n to n+1-dimensional loop on S n+1
125 S n n = Ω(S n+1 ) n n-truncation of S n is the type of codes for loops on S n+1 Decode: promote n-dimensional loop on S n to n+1-dimensional loop on S n+1 Encode: define fibration Code(x:S n+1 ) with Code(basen+1) := S n n Code(loopn+1) := equivalence S n n S n n rotating by loopn
126 π2(s 2 ): Hopf fibration
127 Synthetic homotopy theory Gap between informal and formal proofs is small Proofs are constructive*: can run them Results apply in a variety of settings, from simplicial sets (hence topological spaces) to Quillen model categories and -topoi* New type-theoretic proofs/methods 42 *work in progress
128 Outline 1.Certified homotopy theory 2.Certified software 43
129 Patches Patch a a 2c2 diff b c d c = < b --- > d Version control Collaborative editing 44
130 a b c id a b c
131 a b c id a b c a p a q a b d d c c e
132 a b c id a b c q o p a p a q a b d d c c e
133 a b c id a b c a b c p a d c q o p a p a q a b d d c c e
134 a b c id a b c a b c p a d c!p q o p a p a q a b d d c c e
135 a b c id a b c a b c p a d c!p q o p undo/rollback a p a q a b d d c c e
136 Patches are paths a b c id a b c a b c p a d c!p q o p undo/rollback a p a q a b d d c c e
137 Merging a d c p a b c q a b e 46
138 Merging a d c p a b c q a b e q a p d e 46
139 Merging p=b d at 1 p a b q q=c e at 2 c a d c a b e q a p d e 46
140 Merging p=b d at 1 p a b q q=c e at 2 c a d c a b e q a p d e p =p q =q 46
141 Merging p=b d at 1 p a b q q=c e at 2 c a d c = a b e q a p d e p =p q =q 46
142 Merging merge : (p q : Patch)! Σq,p :Patch. Maybe(q o p = p o q) 47
143 Merging merge : (p q : Patch)! Σq,p :Patch. Maybe(q o p = p o q) Equational theory of patches = paths between paths 47
144 Basic Patches f i b r a t i o n a 2 f i b f i a a 2 48
145 Basic Patches Repository is a char vector of length n f i b r a t i o n Basic patch is a i where i<n a 2 f i b f i a a 2 48
146 Patches as a HIT Repos:Type 49
147 Patches as a HIT Repos:Type doc[n] points describe repository contents 49
148 Patches as a HIT Repos:Type a b@i doc[n] points describe repository contents paths are patches 49
149 Patches as a HIT Repos:Type compressed a b@i doc[n] points describe repository contents paths are patches 49
150 Patches as a HIT Repos:Type compressed gzip a b@i doc[n] points describe repository contents paths are patches 49
151 Patches as a HIT Repos:Type compressed gzip a b@i doc[n] points describe repository contents paths are patches 49
152 Patches as a HIT Repos:Type compressed gzip a b@i doc[n] points describe repository contents paths are patches doc[n] doc[n] doc[n] doc[n] 49
153 Patches as a HIT Repos:Type compressed gzip a b@i doc[n] points describe repository contents paths are patches doc[n] a b@i c d@j doc[n] doc[n] c d@j a b@i doc[n] 49
154 Patches as a HIT Repos:Type compressed gzip a b@i doc[n] points describe repository contents paths are patches paths between paths are equations between patches doc[n] a b@i c d@j doc[n] doc[n] c d@j a b@i doc[n] 49
155 Patches as a HIT Repos:Type compressed gzip a b@i doc[n] points describe repository contents paths are patches paths between paths are equations between patches doc[n] a b@i c d@j doc[n] doc[n] c d@j a b@i doc[n] i j 49
156 Generators for HIT 50
157 Generators for HIT Repos : Type 50
158 Generators for HIT Repos : Type doc[n] : Repos compressed : Repos 50
159 Generators for HIT Repos : Type doc[n] : Repos compressed : Repos (a b@i) : doc[n] = doc[n] if a,b:char, i<n gzip : doc[n] = compressed 50
160 Generators for HIT Repos : Type doc[n] : Repos compressed : Repos (a b@i) : doc[n] = doc[n] if a,b:char, i<n gzip : doc[n] = compressed commute: (a b at i)o(c d at j) if i j =(c d at j)o(a b at i) 50
161 Type: Patch Type: Repos Elements: Points: Paths: doc[n] a b@i Equality: (a b at i)o(c d at j)= (c d at j)o(a b at i)... id o p = p = p o id po(qor) = (poq)or Paths between paths: commute : (a b at i)o(c d at j)= (c d at j)o(a b at i)!p o p = id = p o!p p=p p=q if q=p p=r if p=q and q=r!p =!p if p = p p o q = p o q if p = p and q = q 51
162 Repos recursion To define a function it suffices to Repos! A 52
163 Repos recursion To define a function it suffices to Repos! A map the element generators of Repos to elements of A 52
164 Repos recursion To define a function it suffices to Repos! A map the element generators of Repos to elements of A map the equality generators of Repos to equalities between the corresponding elements of A 52
165 Repos recursion To define a function it suffices to Repos! A map the element generators of Repos to elements of A map the equality generators of Repos to equalities between the corresponding elements of A map the equality-between-equality generators to equalities between the corresponding equalities in A 52
166 Repos recursion To define a function it suffices to Repos! A map the element generators of Repos to elements of A map the equality generators of Repos to equalities between the corresponding elements of A map the equality-between-equality generators to equalities between the corresponding equalities in A All functions on Repos respect patches All functions on patches respect patch equality 52
167 Interpreter Goal is to define: interp : doc[n] = doc[n]! Bijection (Vec Char n) (Vec Char n) 53
168 Interpreter Goal is to define: interp : doc[n] = doc[n]! Bijection (Vec Char n) (Vec Char n) interp(id) = (λx.x, ) interp(q o p) = (interp q) ob (interp p) interp(!p) =!b (interp p) interp(a b@i) = swapat a b i 53
169 Interpreter Goal is to define: interp : doc[n] = doc[n]! Bijection (Vec Char n) (Vec Char n) interp(id) = (λx.x, ) interp(q o p) = (interp q) ob (interp p) interp(!p) =!b (interp p) interp(a b@i) = swapat a b i But only tool available is RepoDesc recursion: no direct recursion over paths 53
170 interp : doc[n]=doc[n]! Bijection (Vec Char n) (Vec Char n) interp(a b at i) = swapat a b i Need to pick A and define I(doc[n]) := : A I 1 (a b@i) := : I(doc[n]) = I(doc[n]) I2(compose) := 54
171 interp : doc[n]=doc[n]! Bijection (Vec Char n) (Vec Char n) interp(a b at i) = swapat a b i Key idea: pick A = Type and define I(doc[n]) := : Type I 1 (a b@i) := : I(doc[n]) = I(doc[n]) I2(compose) := 55
172 interp : doc[n]=doc[n]! Bijection (Vec Char n) (Vec Char n) interp(a b at i) = swapat a b i Key idea: pick A = Type and define I(doc[n]) := Vec Char n : Type I 1 (a b@i) := : I(doc[n]) = I(doc[n]) I2(compose) := 56
173 interp : doc[n]=doc[n]! Bijection (Vec Char n) (Vec Char n) interp(a b at i) = swapat a b i Key idea: pick A = Type and define I(doc[n]) := Vec Char n : Type I 1 (a b@i) := : Vec Char n = Vec Char n I2(compose) := 57
174 interp : doc[n]=doc[n]! Bijection (Vec Char n) (Vec Char n) interp(a b at i) = swapat a b i Key idea: pick A = Type and define I(doc[n]) := Vec Char n : Type I 1 (a b@i) := ua(swapat a b i) : Vec Char n = Vec Char n I2(compose) := 58
175 interp : doc[n]=doc[n]! Bijection (Vec Char n) (Vec Char n) interp(a b at i) = swapat a b i Key idea: pick A = Type and define I(doc[n]) := Vec Char n : Type I 1 (a b@i) := ua(swapat a b i) : Vec Char n = Vec Char n I2(compose) := univalence 58
176 interp : doc[n]=doc[n]! Bijection (Vec Char n) (Vec Char n) interp(a b at i) = swapat a b i Key idea: pick A = Type and define I(doc[n]) := Vec Char n : Type I 1 (a b@i) := ua(swapat a b i) : Vec Char n = Vec Char n I2(compose) := <proof about swapat> 59
177 interp : doc[n]=doc[n]! Bijection (Vec Char n) (Vec Char n) interp(p) = ua -1 (I1(p)) Key idea: pick A = Type and define I(doc[n]) := Vec Char n : Type I 1 (a b@i) := ua(swapat a b i) : Vec Char n = Vec Char n I2(compose) := <proof about swapat> 60
178 interp : doc[n]=doc[n]! Bijection (Vec Char n) (Vec Char n) interp(p) = ua -1 (I1(p)) Satisfies the desired equations (as propositional equalities): interp(id) = (λx.x, ) interp(q o p) = (interp q) ob (interp p) interp(!p) =!b (interp p) interp(a b@i) = swapat a b i 61
179 Summary 62
180 Summary I : Repos! Type interprets Repos as Types, patches as bijections, satisfying patch equalities 62
181 Summary I : Repos! Type interprets Repos as Types, patches as bijections, satisfying patch equalities Higher inductive elim. defines functions that respect equality: you specify what happens on the generators; homomorphically extended to id,o,!,... 62
182 Summary I : Repos! Type interprets Repos as Types, patches as bijections, satisfying patch equalities Higher inductive elim. defines functions that respect equality: you specify what happens on the generators; homomorphically extended to id,o,!,... Univalence lets you give a computational model of equality proofs (here, patches); guaranteed to satisfy laws 62
183 Summary I : Repos! Type interprets Repos as Types, patches as bijections, satisfying patch equalities Higher inductive elim. defines functions that respect equality: you specify what happens on the generators; homomorphically extended to id,o,!,... Univalence lets you give a computational model of equality proofs (here, patches); guaranteed to satisfy laws Shorter definition and code: 1 basic patch & 4 basic axioms of equality, instead of 4 patches & 14 equations 62
184 Operational semantics Can t run these programs yet Some special cases known, some recent progress: Licata&Harper, POPL 12 Coquand&Barras, 13 Shulman, 13 Bezem&Coquand&Huber, 13 Would support proof automation and programming applications 63
185 Outline 1.Certified homotopy theory 2.Certified software 64
186 Homotopy Type Theory type theory new programs and types category theory new certified programs and proofs homotopy theory 65
Recent Work in Homotopy Type Theory
Recent Work in Homotopy Type Theory Steve Awodey Carnegie Mellon University AMS Baltimore January 2014 Introduction Homotopy Type Theory is a newly discovered connection between logic and topology, based
More informationAn introduction to Homotopy Type Theory
An introduction to Homotopy Type Theory Nicola Gambino University of Palermo Leicester, March 15th, 2013 Outline of the talk Part I: Type theory Part II: Homotopy type theory Part III: Voevodsky s Univalent
More informationUnivalent fibrations in type theory and topology
Univalent fibrations in type theory and topology Dan Christensen University of Western Ontario Wayne State University, April 11, 2016 Outline: Background on type theory Equivalence and univalence A characterization
More informationComputational Higher-Dimensional Type Theory
1 Computational Higher-Dimensional Type Theory Carlo Angiuli 1 Robert Harper 1 Todd Wilson 2 1 Carnegie Mellon University 2 California State University, Fresno January 20, 2017 Homotopy Type Theory (HoTT)
More informationA NEW PROOF-ASSISTANT THAT REVISITS HOMOTOPY TYPE THEORY THE THEORETICAL FOUNDATIONS OF COQ USING NICOLAS TABAREAU
COQHOTT A NEW PROOF-ASSISTANT THAT REVISITS THE THEORETICAL FOUNDATIONS OF COQ USING HOMOTOPY TYPE THEORY NICOLAS TABAREAU The CoqHoTT project Design and implement a brand-new proof assistant by revisiting
More informationCubical Homotopy Type Theory
Cubical Homotopy Type Theory Steve Awodey Carnegie Mellon University Logic Colloquium and CLMPS August 2015 Outline I. Basic ideas of Homotopy Type Theory. II. The univalence axiom. III. Higher inductive
More informationCategorical models of type theory
1 / 59 Categorical models of type theory Michael Shulman February 28, 2012 2 / 59 Outline 1 Type theory and category theory 2 Categorical type constructors 3 Dependent types and display maps 4 Fibrations
More informationInterpretations and Models. Chapter Axiomatic Systems and Incidence Geometry
Interpretations and Models Chapter 2.1-2.4 - Axiomatic Systems and Incidence Geometry Axiomatic Systems in Mathematics The gold standard for rigor in an area of mathematics Not fully achieved in most areas
More informationCalculating the Fundamental Group of the Circle in Homotopy Type Theory
Calculating the Fundamental Group of the Circle in Homotopy Type Theory Daniel R. Licata Institute for Advanced Study drl@cs.cmu.edu Michael Shulman Institute for Advanced Study mshulman@ias.edu arxiv:1301.3443v1
More informationUsing Agda to Explore Path-Oriented Models of Type Theory
1/22 Using Agda to Explore Path-Oriented Models of Type Theory Andrew Pitts joint work with Ian Orton Computer Laboratory Outline 2/22 The mathematical problem find new models of Homotopy Type Theory Why
More informationA GRAPH FROM THE VIEWPOINT OF ALGEBRAIC TOPOLOGY
A GRAPH FROM THE VIEWPOINT OF ALGEBRAIC TOPOLOGY KARL L. STRATOS Abstract. The conventional method of describing a graph as a pair (V, E), where V and E repectively denote the sets of vertices and edges,
More informationLecture 11 COVERING SPACES
Lecture 11 COVERING SPACES A covering space (or covering) is not a space, but a mapping of spaces (usually manifolds) which, locally, is a homeomorphism, but globally may be quite complicated. The simplest
More informationCubical sets as a classifying topos
Chalmers CMU Now: Aarhus University Homotopy Type Theory The homotopical interpretation of type theory: types as spaces upto homotopy dependent types as fibrations (continuous families of spaces) identity
More informationHomotopical Patch Theory
Homotopical Patch Theory Carlo Angiuli Carnegie Mellon University cangiuli@cs.cmu.edu Ed Morehouse Carnegie Mellon University edmo@cs.cmu.edu Daniel R. Licata Wesleyan University dlicata@wesleyan.edu Robert
More informationA Model of Type Theory in Simplicial Sets
A Model of Type Theory in Simplicial Sets A brief introduction to Voevodsky s Homotopy Type Theory T. Streicher Fachbereich 4 Mathematik, TU Darmstadt Schlossgartenstr. 7, D-64289 Darmstadt streicher@mathematik.tu-darmstadt.de
More informationNegations in Refinement Type Systems
Negations in Refinement Type Systems T. Tsukada (U. Tokyo) 14th March 2016 Shonan, JAPAN This Talk About refinement intersection type systems that refute judgements of other type systems. Background Refinement
More informationin simplicial sets, or equivalently a functor
Contents 21 Bisimplicial sets 1 22 Homotopy colimits and limits (revisited) 10 23 Applications, Quillen s Theorem B 23 21 Bisimplicial sets A bisimplicial set X is a simplicial object X : op sset in simplicial
More informationConstructing the Propositional Truncation using Non-recursive HITs
Constructing the Propositional Truncation using Non-recursive HITs Floris van Doorn Carnegie Mellon University January 19, 2016 Floris van Doorn (CMU) Constructing Propositional Truncation January 19,
More information! B be a covering, where B is a connected graph. Then E is also a
26. Mon, Mar. 24 The next application is the computation of the fundamental group of any graph. We start by specifying what we mean by a graph. Recall that S 0 R is usually defined to be the set S 0 =
More informationNotes on Spherical Geometry
Notes on Spherical Geometry Abhijit Champanerkar College of Staten Island & The Graduate Center, CUNY Spring 2018 1. Vectors and planes in R 3 To review vector, dot and cross products, lines and planes
More informationA NEW PROOF-ASSISTANT THAT REVISITS HOMOTOPY TYPE THEORY THE THEORETICAL FOUNDATIONS OF COQ USING NICOLAS TABAREAU
COQHOTT A NEW PROOF-ASSISTANT THAT REVISITS THE THEORETICAL FOUNDATIONS OF COQ USING HOMOTOPY TYPE THEORY NICOLAS TABAREAU The CoqHoTT project Design and implement a brand-new proof assistant by revisiting
More informationNotes on categories, the subspace topology and the product topology
Notes on categories, the subspace topology and the product topology John Terilla Fall 2014 Contents 1 Introduction 1 2 A little category theory 1 3 The subspace topology 3 3.1 First characterization of
More informationA MODEL CATEGORY STRUCTURE ON THE CATEGORY OF SIMPLICIAL CATEGORIES
A MODEL CATEGORY STRUCTURE ON THE CATEGORY OF SIMPLICIAL CATEGORIES JULIA E. BERGNER Abstract. In this paper we put a cofibrantly generated model category structure on the category of small simplicial
More informationComputational Higher Type Theory
Computational Higher Type Theory Robert Harper Computer Science Department Carnegie Mellon University HoTT Workshop 2016 Leeds, UK Thanks Joint work with Carlo Angiuli (CMU) and Todd Wilson (CSUF). Thanks
More information4. Definition: topological space, open set, topology, trivial topology, discrete topology.
Topology Summary Note to the reader. If a statement is marked with [Not proved in the lecture], then the statement was stated but not proved in the lecture. Of course, you don t need to know the proof.
More informationRepresentability of Homotopy Groups in Type Theory
Representability of Homotopy Groups in Type Theory Brandon Shapiro Constructive Type Theory The emerging field of homotopy type theory is built around the idea that in intensive type theory types can be
More informationLecture 0: Reivew of some basic material
Lecture 0: Reivew of some basic material September 12, 2018 1 Background material on the homotopy category We begin with the topological category TOP, whose objects are topological spaces and whose morphisms
More informationThe three faces of homotopy type theory. Type theory and category theory. Minicourse plan. Typing judgments. Michael Shulman.
The three faces of homotopy type theory Type theory and category theory Michael Shulman 1 A programming language. 2 A foundation for mathematics based on homotopy theory. 3 A calculus for (, 1)-category
More informationCombinatorics I (Lecture 36)
Combinatorics I (Lecture 36) February 18, 2015 Our goal in this lecture (and the next) is to carry out the combinatorial steps in the proof of the main theorem of Part III. We begin by recalling some notation
More informationAssignments in Mathematics Class IX (Term I) 5. InTroduCTIon To EuClId s GEoMETry. l Euclid s five postulates are : ANIL TUTORIALS
Assignments in Mathematics Class IX (Term I) 5. InTroduCTIon To EuClId s GEoMETry IMporTAnT TErMs, definitions And results l In geometry, we take a point, a line and a plane as undefined terms. l An axiom
More informationLecture 009 (November 25, 2009) Suppose that I is a small category, and let s(r Mod) I be the category of I-diagrams in simplicial modules.
Lecture 009 (November 25, 2009) 20 Homotopy colimits Suppose that I is a small category, and let s(r Mod) I be the category of I-diagrams in simplicial modules. The objects of this category are the functors
More informationProvide a drawing. Mark any line with three points in blue color.
Math 3181 Name: Dr. Franz Rothe August 18, 2014 All3181\3181_fall14h1.tex Homework has to be turned in this handout. For extra space, use the back pages, or blank pages between. The homework can be done
More informationTopic 1: What is HoTT and why?
Topic 1: What is HoTT and why? May 5, 2014 Introduction Homotopy type theory (HoTT) is a newly emerging field of mathematics which is currently being developed as a foundation of mathematics which is in
More informationTopological space - Wikipedia, the free encyclopedia
Page 1 of 6 Topological space From Wikipedia, the free encyclopedia Topological spaces are mathematical structures that allow the formal definition of concepts such as convergence, connectedness, and continuity.
More informationHomology cycle bases from acyclic matchings
Homology cycle bases from acyclic matchings Dmitry Feichtner-Kozlov University of Bremen Kyoto Workshop, January 019 What is... Applied Topology? studying global features of shapes applications in other
More informationAlgebraic Topology: A brief introduction
Algebraic Topology: A brief introduction Harish Chintakunta This chapter is intended to serve as a brief, and far from comprehensive, introduction to Algebraic Topology to help the reading flow of this
More informationTopology Hmwk 3 All problems are from Allen Hatcher Algebraic Topology (online) ch 1
Topology Hmwk 3 All problems are from Allen Hatcher Algebraic Topology (online) ch Andrew Ma December 23, 203 This assignment has been corrected post - grading...6 (a) Proof. Assume for a contradiction
More informationCubical Computational Type Theory & RedPRL
2018.02.07 Cornell Cubical Computational Type Theory & RedPRL >> redprl.org >> Carlo Angiuli Evan Cavallo (*) Favonia Bob Harper Dan Licata Jon Sterling Todd Wilson 1 Vladimir Voevodsky 1966-2017 2 Cubical
More informationCopyright 2009 Pearson Education, Inc. Chapter 9 Section 7 - Slide 1 AND
Copyright 2009 Pearson Education, Inc. Chapter 9 Section 7 - Slide 1 AND Chapter 9 Geometry Copyright 2009 Pearson Education, Inc. Chapter 9 Section 7 - Slide 2 WHAT YOU WILL LEARN Transformational geometry,
More information1.1 Topological Representatives for Automorphisms
Chapter 1 Out(F n ) and Aut(F n ) 1.1 Topological Representatives for Automorphisms Definition 1.1.1. Let X be a topological space with base point P. A self-homotopy equivalence is a base point preserving
More informationLecture 008 (November 13, 2009)
Lecture 008 (November 13, 2009) 17 The Dold-Kan correspondence Suppose that A : op R Mod is a simplicial R-module. Examples to keep in mind are the free simplicial objects R(X) associated to simplicial
More informationA HISTORICAL INTRODUCTION TO ELEMENTARY GEOMETRY
i MATH 119 A HISTORICAL INTRODUCTION TO ELEMENTARY GEOMETRY Geometry is an word derived from ancient Greek meaning earth measure ( ge = earth or land ) + ( metria = measure ). Euclid wrote the Elements
More informationResearch Statement. Daniel R. Licata
Research Statement Daniel R. Licata I study programming languages, with a focus on applications of type theory and logic. I have published papers in major conferences in my area (POPL 2012, MFPS 2011,
More informationPOLYHEDRAL GEOMETRY. Convex functions and sets. Mathematical Programming Niels Lauritzen Recall that a subset C R n is convex if
POLYHEDRAL GEOMETRY Mathematical Programming Niels Lauritzen 7.9.2007 Convex functions and sets Recall that a subset C R n is convex if {λx + (1 λ)y 0 λ 1} C for every x, y C and 0 λ 1. A function f :
More informationA MODEL STRUCTURE FOR QUASI-CATEGORIES
A MODEL STRUCTURE FOR QUASI-CATEGORIES EMILY RIEHL DISCUSSED WITH J. P. MAY 1. Introduction Quasi-categories live at the intersection of homotopy theory with category theory. In particular, they serve
More informationInversive Plane Geometry
Inversive Plane Geometry An inversive plane is a geometry with three undefined notions: points, circles, and an incidence relation between points and circles, satisfying the following three axioms: (I.1)
More informationTHE DOLD-KAN CORRESPONDENCE
THE DOLD-KAN CORRESPONDENCE 1. Simplicial sets We shall now introduce the notion of a simplicial set, which will be a presheaf on a suitable category. It turns out that simplicial sets provide a (purely
More informationIntroduction to Homotopy Type Theory
Introduction to Homotopy Type Theory Lecture notes for a course at EWSCS 2017 Thorsten Altenkirch March 5, 2017 1 What is this course about? To explain what Homotopy Type Theory is, I will first talk about
More informationFinding and Extracting Computational Content in Euclid s Elements
Finding and Extracting Computational Content in Euclid s Elements Ariel Kellison Septemeber 2017 Outline Introduction Computational Content Intro. Why Implement Results and Future Work Implementing Euclid
More informationMath 205B - Topology. Dr. Baez. March 2, Christopher Walker
Math 205B - Topology Dr. Baez March 2, 2007 Christopher Walker Exercise 0.1. Show that the fundamental group of the 3-bouquet of circles is Z Z Z. Generalize this result to the n-bouquet of circles, and
More informationProgramming in homotopy type theory and erasing propositions Gabe Dijkstra
Programming in homotopy type theory and erasing propositions Gabe Dijkstra M.Sc. thesis ICA-3354881 [Supervisors] Wouter Swierstra and Johan Jeuring August 26, 2013 Department of Computing Science Abstract
More informationLecture 18: Groupoids and spaces
Lecture 18: Groupoids and spaces The simplest algebraic invariant of a topological space T is the set π 0 T of path components. The next simplest invariant, which encodes more of the topology, is the fundamental
More informationTopos Theory. Lectures 3-4: Categorical preliminaries II. Olivia Caramello. Topos Theory. Olivia Caramello. Basic categorical constructions
Lectures 3-4: Categorical preliminaries II 2 / 17 Functor categories Definition Let C and D be two categories. The functor category [C,D] is the category having as objects the functors C D and as arrows
More informationMath Introduction to Advanced Mathematics
Math 215 - Introduction to Advanced Mathematics Number Theory Fall 2017 The following introductory guide to number theory is borrowed from Drew Shulman and is used in a couple of other Math 215 classes.
More informationClassifying Spaces and Spectral Sequences
Classifying Spaces and Spectral Sequences Introduction Christian Carrick December 2, 2016 These are a set of expository notes I wrote in preparation for a talk given in the MIT Kan Seminar on December
More informationI. An introduction to Boolean inverse semigroups
I. An introduction to Boolean inverse semigroups Mark V Lawson Heriot-Watt University, Edinburgh June 2016 1 0. In principio The monograph J. Renault, A groupoid approach to C - algebras, Lecture Notes
More informationTowards elementary -toposes
Towards elementary -toposes Michael Shulman 1 1 (University of San Diego) September 13, 2018 Vladimir Voevodsky Memorial Conference Institute for Advanced Study Outline 1 A bit of history 2 Elementary
More informationSimplicial Objects and Homotopy Groups. J. Wu
Simplicial Objects and Homotopy Groups J. Wu Department of Mathematics, National University of Singapore, Singapore E-mail address: matwuj@nus.edu.sg URL: www.math.nus.edu.sg/~matwujie Partially supported
More informationGALOIS THEORY OF SIMPLICIAL COMPLEXES
GALOIS THEORY OF SIMPLICIAL COMPLEXES Marco Grandis 1,* and George Janelidze 2, 1 Dipartimento di Matematica, Università di Genova, via Dodecaneso 35, 16146 Genova, Italy email: grandis@dima.unige.it 2
More informationTest 1, Spring 2013 ( Solutions): Provided by Jeff Collins and Anil Patel. 1. Axioms for a finite AFFINE plane of order n.
Math 532, 736I: Modern Geometry Test 1, Spring 2013 ( Solutions): Provided by Jeff Collins and Anil Patel Part 1: 1. Axioms for a finite AFFINE plane of order n. AA1: There exist at least 4 points, no
More information1 Appendix to notes 2, on Hyperbolic geometry:
1230, notes 3 1 Appendix to notes 2, on Hyperbolic geometry: The axioms of hyperbolic geometry are axioms 1-4 of Euclid, plus an alternative to axiom 5: Axiom 5-h: Given a line l and a point p not on l,
More informationMathematics As A Liberal Art
Math 105 Fall 2015 BY: 2015 Ron Buckmire Mathematics As A Liberal Art Class 26: Friday November 13 Fowler 302 MWF 10:40am- 11:35am http://sites.oxy.edu/ron/math/105/15/ Euclid, Geometry and the Platonic
More informationArithmetic universes as generalized point-free spaces
Arithmetic universes as generalized point-free spaces Steve Vickers CS Theory Group Birmingham * Grothendieck: "A topos is a generalized topological space" *... it's represented by its category of sheaves
More informationProblem 3.1 (Building up geometry). For an axiomatically built-up geometry, six groups of axioms needed:
Math 3181 Dr. Franz Rothe September 29, 2016 All3181\3181_fall16h3.tex Names: Homework has to be turned in this handout. For extra space, use the back pages, or put blank pages between. The homework can
More informationA NOTE ON MORPHISMS DETERMINED BY OBJECTS
A NOTE ON MORPHISMS DETERMINED BY OBJECTS XIAO-WU CHEN, JUE LE Abstract. We prove that a Hom-finite additive category having determined morphisms on both sides is a dualizing variety. This complements
More informationType Theory in Type Theory using Quotient Inductive Types
Type Theory in Type Theory using Quotient Inductive Types Thorsten Altenkirch University of Nottingham {txa,auk}@cs.nott.ac.uk Ambrus Kaposi Abstract We present an internal formalisation of dependent type
More informationSurfaces Beyond Classification
Chapter XII Surfaces Beyond Classification In most of the textbooks which present topological classification of compact surfaces the classification is the top result. However the topology of 2- manifolds
More informationSimplicial Objects and Homotopy Groups
Simplicial Objects and Homotopy Groups Jie Wu Department of Mathematics National University of Singapore July 8, 2007 Simplicial Objects and Homotopy Groups -Objects and Homology Simplicial Sets and Homotopy
More informationLecture notes for Topology MMA100
Lecture notes for Topology MMA100 J A S, S-11 1 Simplicial Complexes 1.1 Affine independence A collection of points v 0, v 1,..., v n in some Euclidean space R N are affinely independent if the (affine
More informationACLT: Algebra, Categories, Logic in Topology - Grothendieck's generalized topological spaces (toposes)
ACLT: Algebra, Categories, Logic in Topology - Grothendieck's generalized topological spaces (toposes) Steve Vickers CS Theory Group Birmingham 1. Sheaves "Sheaf = continuous set-valued map" TACL Tutorial
More informationA point is pictured by a dot. While a dot must have some size, the point it represents has no size. Points are named by capital letters..
Chapter 1 Points, Lines & Planes s we begin any new topic, we have to familiarize ourselves with the language and notation to be successful. My guess that you might already be pretty familiar with many
More informationSIMPLICIAL METHODS IN ALGEBRA AND ALGEBRAIC GEOMETRY. Contents
SIMPLICIAL METHODS IN ALGEBRA AND ALGEBRAIC GEOMETRY W. D. GILLAM Abstract. This is an introduction to / survey of simplicial techniques in algebra and algebraic geometry. We begin with the basic notions
More informationTopic 3: Propositions as types
Topic 3: Propositions as types May 18, 2014 Propositions as types We have seen that the main mathematical objects in a type theory are types. But remember that in conventional foundations, as based on
More informationMAT 3271: Selected Solutions to the Assignment 6
Chapter 2: Major Exercises MAT 3271: Selected Solutions to the Assignment 6 1. Since a projective plan is a model of incidence geometry, Incidence Axioms 1-3 and Propositions 2.1-2.5 (which follow logically
More information1. A model for spherical/elliptic geometry
Math 3329-Uniform Geometries Lecture 13 Let s take an overview of what we know. 1. A model for spherical/elliptic geometry Hilbert s axiom system goes with Euclidean geometry. This is the same geometry
More informationModule 1 Session 1 HS. Critical Areas for Traditional Geometry Page 1 of 6
Critical Areas for Traditional Geometry Page 1 of 6 There are six critical areas (units) for Traditional Geometry: Critical Area 1: Congruence, Proof, and Constructions In previous grades, students were
More informationλ calculus is inconsistent
Content Rough timeline COMP 4161 NICTA Advanced Course Advanced Topics in Software Verification Gerwin Klein, June Andronick, Toby Murray λ Intro & motivation, getting started [1] Foundations & Principles
More informationSynthetic Geometry. 1.1 Foundations 1.2 The axioms of projective geometry
Synthetic Geometry 1.1 Foundations 1.2 The axioms of projective geometry Foundations Def: A geometry is a pair G = (Ω, I), where Ω is a set and I a relation on Ω that is symmetric and reflexive, i.e. 1.
More informationEQUIVARIANT COMPLETE SEGAL SPACES
EQUIVARIANT COMPLETE SEGAL SPACES JULIA E. BERGNER AND STEVEN GREG CHADWICK Abstract. In this paper we give a model for equivariant (, 1)-categories. We modify an approach of Shimakawa for equivariant
More informationHo(T op) Ho(S). Here is the abstract definition of a Quillen closed model category.
7. A 1 -homotopy theory 7.1. Closed model categories. We begin with Quillen s generalization of the derived category. Recall that if A is an abelian category and if C (A) denotes the abelian category of
More informationCSE505, Fall 2012, Midterm Examination October 30, 2012
CSE505, Fall 2012, Midterm Examination October 30, 2012 Rules: The exam is closed-book, closed-notes, except for one side of one 8.5x11in piece of paper. Please stop promptly at Noon. You can rip apart
More informationAn Introduction to Programming and Proving in Agda (incomplete draft)
An Introduction to Programming and Proving in Agda (incomplete draft) Peter Dybjer January 29, 2018 1 A first Agda module Your first Agda-file is called BoolModule.agda. Its contents are module BoolModule
More informationCell-Like Maps (Lecture 5)
Cell-Like Maps (Lecture 5) September 15, 2014 In the last two lectures, we discussed the notion of a simple homotopy equivalences between finite CW complexes. A priori, the question of whether or not a
More informationor else take their intersection. Now define
Samuel Lee Algebraic Topology Homework #5 May 10, 2016 Problem 1: ( 1.3: #3). Let p : X X be a covering space with p 1 (x) finite and nonempty for all x X. Show that X is compact Hausdorff if and only
More informationCurriculum Catalog
2017-2018 Curriculum Catalog 2017 Glynlyon, Inc. Table of Contents GEOMETRY COURSE OVERVIEW... 1 UNIT 1: INTRODUCTION... 1 UNIT 2: LOGIC... 2 UNIT 3: ANGLES AND PARALLELS... 2 UNIT 4: CONGRUENT TRIANGLES
More informationLecture 3: Recursion; Structural Induction
15-150 Lecture 3: Recursion; Structural Induction Lecture by Dan Licata January 24, 2012 Today, we are going to talk about one of the most important ideas in functional programming, structural recursion
More informationThe fundamental group of topological graphs and C -algebras
The fundamental group of topological graphs and C -algebras Based on joint work with A. Kumjian and J. Quigg, Ergodic Theory and Dynamical Systems (2011) University of Texas at San Antonio, 27 April 2012
More informationACLT: Algebra, Categories, Logic in Topology - Grothendieck's generalized topological spaces (toposes)
ACLT: Algebra, Categories, Logic in Topology - Grothendieck's generalized topological spaces (toposes) Steve Vickers CS Theory Group Birmingham 4. Toposes and geometric reasoning How to "do generalized
More informationUnivalent Foundations Project (a modified version of an NSF grant application)
Univalent Foundations Project (a modified version of an NSF grant application) Vladimir Voevodsky October 1, 2010 1 General outline of the proposed project While working on the completion of the proof
More informationFormalising the Foundations of Geometry
Formalising the March 27, 2015 Formalising Mathematics Why formalise? Because some proofs are too hard to verify by inspection (Kepler conjecture, Four-Colour Theorem, ABC conjecture) We need to contribute
More informationLecture-12: Closed Sets
and Its Examples Properties of Lecture-12: Dr. Department of Mathematics Lovely Professional University Punjab, India October 18, 2014 Outline Introduction and Its Examples Properties of 1 Introduction
More informationTOPOLOGY, DR. BLOCK, FALL 2015, NOTES, PART 3.
TOPOLOGY, DR. BLOCK, FALL 2015, NOTES, PART 3. 301. Definition. Let m be a positive integer, and let X be a set. An m-tuple of elements of X is a function x : {1,..., m} X. We sometimes use x i instead
More informationLectures on topology. S. K. Lando
Lectures on topology S. K. Lando Contents 1 Reminder 2 1.1 Topological spaces and continuous mappings.......... 3 1.2 Examples............................. 4 1.3 Properties of topological spaces.................
More informationTHE FUNDAMENTAL GROUP AND THE BROUWER FIXED POINT THEOREM
THE FUNDAMENTAL GROUP AND THE BROUWER FIXED POINT THEOREM NATHAN GILL Abstract. We introduce the concept of the fundamental group of a topological space and demonstrate its utility in classifying spaces
More informationSpaces with algebraic structure
University of California, Riverside January 6, 2009 What is a space with algebraic structure? A topological space has algebraic structure if, in addition to being a topological space, it is also an algebraic
More information4. Simplicial Complexes and Simplicial Homology
MATH41071/MATH61071 Algebraic topology Autumn Semester 2017 2018 4. Simplicial Complexes and Simplicial Homology Geometric simplicial complexes 4.1 Definition. A finite subset { v 0, v 1,..., v r } R n
More informationTowards the syntax and semantics of higher dimensional type theory
Towards the syntax and semantics of higher dimensional type theory Thorsten Altenkirch Nicolai Kraus Oxford, HoTT/UF 18, 8 July [picture by Andrej Bauer, (CC BY-SA 2.5 SI)] The goal: type theory in type
More informationIdentity in Homotopy Type Theory, Part I: The Justification of Path Induction
Identity in Homotopy Type Theory, Part I: The Justification of Path Induction Friday 24 th October, 2014 Abstract Homotopy type theory (HoTT) is a new branch of mathematics that connects algebraic topology
More informationRegarding Python level necessary for the course
Logistics First two recitations (next two weeks) Python basics (installation, basic syntax, basic programming), optional Making models for 3D printing w/ Blender Will announce details through Sakai Regarding
More information751 Problem Set I JWR. Due Sep 28, 2004
751 Problem Set I JWR Due Sep 28, 2004 Exercise 1. For any space X define an equivalence relation by x y iff here is a path γ : I X with γ(0) = x and γ(1) = y. The equivalence classes are called the path
More information