Mercurial > hg > Members > kono > Proof > ZF-in-agda
changeset 1391:250e52f15f43
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 26 Jun 2023 10:42:16 +0900 |
parents | 64b243e501b2 |
children | 8645a167d76b |
files | src/cardinal.agda |
diffstat | 1 files changed, 27 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/src/cardinal.agda Mon Jun 26 09:03:12 2023 +0900 +++ b/src/cardinal.agda Mon Jun 26 10:42:16 2023 +0900 @@ -70,13 +70,23 @@ ay : odef (* a) y x=fy : x ≡ i→ iab _ ay -Image : { a b : Ordinal } → Injection a b → HOD -Image {a} {b} iab = record { od = record { def = λ x → IsImage a b iab x } ; odmax = b ; <odmax = im00 } where +Image : (a : Ordinal) { b : Ordinal } → Injection a b → HOD +Image a {b} iab = record { od = record { def = λ x → IsImage a b iab x } ; odmax = b ; <odmax = im00 } where im00 : {x : Ordinal } → IsImage a b iab x → x o< b im00 {x} record { y = y ; ay = ay ; x=fy = x=fy } = subst₂ ( λ j k → j o< k) (trans &iso (sym x=fy)) &iso (c<→o< (subst ( λ k → odef (* b) k) (sym &iso) (iB iab y ay)) ) -Image⊆b : { a b : Ordinal } → (iab : Injection a b) → Image iab ⊆ * b +record IsInverseImage (a b : Ordinal) (iab : Injection a b ) (x y : Ordinal ) : Set n where + field + ax : odef (* a) x + x=fy : y ≡ i→ iab x ax + +InverseImage : {a : Ordinal} ( b : Ordinal ) → Injection a b → (y : Ordinal ) → HOD +InverseImage {a} b iab y = record { od = record { def = λ x → IsInverseImage a b iab x y } ; odmax = & (* a) ; <odmax = im00 } where + im00 : {x : Ordinal } → IsInverseImage a b iab x y → x o< & (* a) + im00 {x} record { ax = ax ; x=fy = x=fy } = odef< ax + +Image⊆b : { a b : Ordinal } → (iab : Injection a b) → Image a iab ⊆ * b Image⊆b {a} {b} iab {x} record { y = y ; ay = ay ; x=fy = x=fy } = subst (λ k → odef (* b) k) (sym x=fy) (iB iab y ay) _=c=_ : ( A B : HOD ) → Set n @@ -142,19 +152,22 @@ be02 : CN x be02 = subst (λ k → odef k x) *iso lt - fU : Injection (& UC) (& (Image {& UC} {b} (Injection-⊆ UC⊆a f) )) + fU : Injection (& UC) (& (Image (& UC) {b} (Injection-⊆ UC⊆a f) )) fU = record { i→ = λ x lt → IsImage.y (be10 x lt) ; iB = λ x lt → be20 (IsImage.y (be10 x lt)) (be21 x lt) ; inject = ? } where be10 : (x : Ordinal) (lt : odef (* (& UC)) x) → IsImage _ _ (Injection-⊆ UC⊆a f) x - be20 : (x : Ordinal) (lt : odef (* (& UC)) x) → odef (* (& (Image (Injection-⊆ UC⊆a f)))) x + be20 : (x : Ordinal) (lt : odef (* (& UC)) x) → odef (* (& (Image (& UC) (Injection-⊆ UC⊆a f)))) x be20 x lt = subst ( λ k → odef k x ) (sym *iso) (be10 x lt ) be21 : (x : Ordinal) (lt : odef (* (& UC)) x) → odef (* (& UC)) (IsImage.y (be10 x lt)) be21 = ? - g⁻¹ : { x : Ordinal} → odef (* b) x → Ordinal - g⁻¹ = ? - a∋g⁻¹ : { x : Ordinal} → (bx : odef (* b) x ) → odef (* a) (g⁻¹ bx ) - a∋g⁻¹ = ? - is-g⁻¹ : { x : Ordinal} → (bx : odef (* b) x ) → x ≡ fab (g⁻¹ bx ) (a∋g⁻¹ bx) - is-g⁻¹ = ? + g⁻¹ : ( x : Ordinal) → odef (* b) x → Ordinal + g⁻¹ x bx = fba _ bx + a∋g⁻¹ : ( x : Ordinal) → (bx : odef (* b) x ) → odef (* a) (g⁻¹ x bx ) + a∋g⁻¹ x bx = a∋fba x bx + is-g⁻¹ : { x : Ordinal} → (bx : odef (* b) x ) → g⁻¹ (fba x ?) ? ≡ x + is-g⁻¹ {x} bx = begin + ? ≡⟨ ? ⟩ + ? ∎ where + open ≡-Reasoning be10 x lt = record { y = be14 _ (CN.gfix be02) ; ay = ? ; x=fy = ? } where be02 : CN x be02 = subst (λ k → odef k x) *iso lt @@ -165,13 +178,13 @@ be05 0 {x} (a-g ax ¬ib) = ax be05 (suc i) {x} (next-gf lt _) = a∋fba ( fab (be14 i lt) (be05 i lt) ) ( b∋fab _ (be05 i lt)) be16 : (i : ℕ) → {x : Ordinal } → (gfi : gfImage i x) → IsImage _ _ ((Injection-⊆ UC⊆a f)) (be14 i gfi) - be16 0 {x} (a-g ax ¬ib) = record { y = g⁻¹ (b∋fab x ax) - ; ay = subst (λ k → odef k ( g⁻¹ (b∋fab x ax))) (sym *iso) record { i = 0 ; gfix = a-g ? ? } ; x=fy = is-g⁻¹ ? } + be16 0 {x} (a-g ax ¬ib) = record { y = ? + ; ay = subst (λ k → odef k ? ) (sym *iso) record { i = 0 ; gfix = a-g ? ?} ; x=fy = ? } be16 (suc i) {x} (next-gf ix ix₁) = record { y = ? ; ay = ? ; x=fy = ? } be11 : IsImage _ _ ((Injection-⊆ UC⊆a f)) (be14 _ (CN.gfix be02)) be11 = be16 _ (CN.gfix be02) - gU : Injection (& (Image {& UC} {b} (Injection-⊆ UC⊆a f))) (& UC) + gU : Injection (& (Image (& UC) {b} (Injection-⊆ UC⊆a f))) (& UC) gU = ? -- Injection (b - a) b