annotate README.md @ 1464:484f83b04b5d default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 03 Jan 2024 19:29:23 +0900
parents 003424a36fed
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
337
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
1 Constructing ZF Set Theory in Agda
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
2 ============
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
3
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
4 Shinji KONO (kono@ie.u-ryukyu.ac.jp), University of the Ryukyus
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
5
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
6 ## ZF in Agda
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
7
1200
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
8 [zfc](https://shinji-kono.github.io/zf-in-agda/html/zfc.html) axiom of choice
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
9
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
10 [NSet](https://shinji-kono.github.io/zf-in-agda/html/NSet.html) Naive Set Theory
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
11
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
12 [Ordinals](https://shinji-kono.github.io/zf-in-agda/html/Ordinals.html) axiom of Ordinals
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
13
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
14 [OD](https://shinji-kono.github.io/zf-in-agda/html/OD.html) a model of ZF based on Ordinal Definable Set with assumptions
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
15
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
16 [ODC](https://shinji-kono.github.io/zf-in-agda/html/ODC.html) Law of exclude middle from axiom of choice assumptions
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
17
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
18 [LEMC](https://shinji-kono.github.io/zf-in-agda/html/LEMC.html) choice with assumption of the Law of exclude middle
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
19
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
20 [BAlgebra](https://shinji-kono.github.io/zf-in-agda/html/BAlgebra.html) Boolean algebra on OD (not yet done)
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
21
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
22 [zorn](https://shinji-kono.github.io/zf-in-agda/html/zorn.html) Zorn lemma
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
23
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
24 [Topology](https://shinji-kono.github.io/zf-in-agda/html/Topology.html) Topology
337
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
25
1200
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
26 [Tychonoff](https://shinji-kono.github.io/zf-in-agda/html/Tychonoff.html)
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
27
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
28 [VL](https://shinji-kono.github.io/zf-in-agda/html/VL.html) V and L
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
29
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
30 [cardinal](https://shinji-kono.github.io/zf-in-agda/html/cardinal.html) Cardinals
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
31
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
32 [filter](https://shinji-kono.github.io/zf-in-agda/html/filter.html) Filter
337
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
33
1200
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
34 [generic-filter](https://shinji-kono.github.io/zf-in-agda/html/generic-filter.html) Generic Filter
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
35
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
36 [maximum-filter](https://shinji-kono.github.io/zf-in-agda/html/maximum-filter.html) Maximum filter by Zorn lemma
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
37
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
38 [ordinal](https://shinji-kono.github.io/zf-in-agda/html/ordinal.html) countable model of Ordinals
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
39
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
40 [OPair](https://shinji-kono.github.io/zf-in-agda/html/OPair.html) Orderd Pair and Direct Product
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
41
1387
003424a36fed is this agda's bug?
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 1200
diff changeset
42 [bijection](https://shinji-kono.github.io/zf-in-agda/html/bijection.html) Bijection without HOD
003424a36fed is this agda's bug?
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 1200
diff changeset
43
1200
42000f20fdbe fix README
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 431
diff changeset
44
337
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
45 ```
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
46
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
47 ## Ordinal Definable Set
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
48
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
49 It is a predicate has an Ordinal argument.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
50
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
51 In Agda, OD is defined as follows.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
52
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
53 ```
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
54 record OD : Set (suc n ) where
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
55 field
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
56 def : (x : Ordinal ) → Set n
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
57 ```
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
58
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
59 This is not a ZF Set, because it can contain entire Ordinals.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
60
338
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 337
diff changeset
61 ## HOD : Hereditarily Ordinal Definable
337
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
62
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
63 What we need is a bounded OD, the containment is limited by an ordinal.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
64
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
65 ```
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
66 record HOD : Set (suc n) where
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
67 field
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
68 od : OD
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
69 odmax : Ordinal
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
70 <odmax : {y : Ordinal} → def od y → y o< odmax
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
71 ```
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
72
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
73 In classical Set Theory, HOD stands for Hereditarily Ordinal Definable, which means
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
74
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
75 ```
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
76 HOD = { x | TC x ⊆ OD }
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
77 ```
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
78
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
79 TC x is all transitive closure of x, that is elements of x and following all elements of them are all OD. But
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
80 what is x? In this case, x is an Set which we don't have yet. In our case, HOD is a bounded OD.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
81
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
82 ## 1 to 1 mapping between an HOD and an Ordinal
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
83
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
84 HOD is a predicate on Ordinals and the solution is bounded by some ordinal. If we have a mapping
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
85
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
86 ```
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
87 od→ord : HOD → Ordinal
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
88 ord→od : Ordinal → HOD
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
89 oiso : {x : HOD } → ord→od ( od→ord x ) ≡ x
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
90 diso : {x : Ordinal } → od→ord ( ord→od x ) ≡ x
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
91 ```
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
92
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
93 we can check an HOD is an element of the OD using def.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
94
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
95 A ∋ x can be define as follows.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
96
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
97 ```
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
98 _∋_ : ( A x : HOD ) → Set n
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
99 _∋_ A x = def (od A) ( od→ord x )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
100
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
101 ```
431
a5f8084b8368 reorganiztion for apkg
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 359
diff changeset
102 In ψ : Ordinal → Set, if A is a record { od = { def = λ x → ψ x } ...} , then
337
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
103
431
a5f8084b8368 reorganiztion for apkg
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 359
diff changeset
104 A ∋ x = def (od A) ( od→ord x ) = ψ (od→ord x)
337
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
105
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
106 They say the existing of the mappings can be proved in Classical Set Theory, but we
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
107 simply assumes these non constructively.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 276
diff changeset
108