Mercurial > hg > Members > kono > Proof > ZF-in-agda
comparison Ordinals.agda @ 342:b1ccdbb14c92
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 13 Jul 2020 13:55:46 +0900 |
parents | 27d2933c4bd7 |
children | 06f10815d0b3 |
comparison
equal
deleted
inserted
replaced
341:27d2933c4bd7 | 342:b1ccdbb14c92 |
---|---|
226 next< {x} {y} {z} x<nz y<nx | tri≈ ¬a b ¬c = ⊥-elim ((proj2 (proj2 next-limit)) (next z) x<nz (subst (λ k → k o< next x) b y<nx) | 226 next< {x} {y} {z} x<nz y<nx | tri≈ ¬a b ¬c = ⊥-elim ((proj2 (proj2 next-limit)) (next z) x<nz (subst (λ k → k o< next x) b y<nx) |
227 (λ w nz=ow → o<¬≡ nz=ow (subst₂ (λ j k → j o< k ) (sym nz=ow) nz=ow (proj1 (proj2 next-limit) w (subst (λ k → w o< k ) (sym nz=ow) <-osuc) )))) | 227 (λ w nz=ow → o<¬≡ nz=ow (subst₂ (λ j k → j o< k ) (sym nz=ow) nz=ow (proj1 (proj2 next-limit) w (subst (λ k → w o< k ) (sym nz=ow) <-osuc) )))) |
228 next< {x} {y} {z} x<nz y<nx | tri> ¬a ¬b c = ⊥-elim (proj2 (proj2 next-limit) (next z) x<nz (ordtrans c y<nx ) | 228 next< {x} {y} {z} x<nz y<nx | tri> ¬a ¬b c = ⊥-elim (proj2 (proj2 next-limit) (next z) x<nz (ordtrans c y<nx ) |
229 (λ w nz=ow → o<¬≡ (sym nz=ow) (proj1 (proj2 next-limit) _ (subst (λ k → w o< k ) (sym nz=ow) <-osuc )))) | 229 (λ w nz=ow → o<¬≡ (sym nz=ow) (proj1 (proj2 next-limit) _ (subst (λ k → w o< k ) (sym nz=ow) <-osuc )))) |
230 | 230 |
231 osuc< : {x y : Ordinal} → osuc x ≡ y → x o< y | |
232 osuc< {x} {y} refl = <-osuc | |
233 | |
231 nexto=n : {x y : Ordinal} → x o< next (osuc y) → x o< next y | 234 nexto=n : {x y : Ordinal} → x o< next (osuc y) → x o< next y |
232 nexto=n {x} {y} x<noy = next< (proj1 (proj2 next-limit) _ (proj1 next-limit)) x<noy | 235 nexto=n {x} {y} x<noy = next< (proj1 (proj2 next-limit) _ (proj1 next-limit)) x<noy |
233 | 236 |
234 nexto≡ : {x : Ordinal} → next x ≡ next (osuc x) | 237 nexto≡ : {x : Ordinal} → next x ≡ next (osuc x) |
235 nexto≡ {x} with trio< (next x) (next (osuc x) ) | 238 nexto≡ {x} with trio< (next x) (next (osuc x) ) |
236 nexto≡ {x} | tri< a ¬b ¬c = {!!} | 239 -- next x o< next (osuc x ) -> osuc x o< next x o< next (osuc x) -> next x ≡ osuc z -> z o o< next x -> osuc z o< next x -> next x o< next x |
240 nexto≡ {x} | tri< a ¬b ¬c = ⊥-elim ((proj2 (proj2 next-limit)) _ (proj1 (proj2 next-limit) _ (proj1 next-limit) ) a | |
241 (λ z eq → o<¬≡ (sym eq) ((proj1 (proj2 next-limit)) _ (osuc< (sym eq))))) | |
237 nexto≡ {x} | tri≈ ¬a b ¬c = b | 242 nexto≡ {x} | tri≈ ¬a b ¬c = b |
243 -- next (osuc x) o< next x -> osuc x o< next (osuc x) o< next x -> next (osuc x) ≡ osuc z -> z o o< next (osuc x) ... | |
238 nexto≡ {x} | tri> ¬a ¬b c = ⊥-elim ((proj2 (proj2 next-limit)) _ (ordtrans <-osuc (proj1 next-limit)) c | 244 nexto≡ {x} | tri> ¬a ¬b c = ⊥-elim ((proj2 (proj2 next-limit)) _ (ordtrans <-osuc (proj1 next-limit)) c |
239 (λ z eq → o<¬≡ (sym eq) (proj1 (proj2 next-limit) _ (ordtrans <-osuc (subst (λ k → k o< next (osuc x)) eq {!!} ))))) | 245 (λ z eq → o<¬≡ (sym eq) ((proj1 (proj2 next-limit)) _ (osuc< (sym eq))))) |
240 | 246 |
241 record OrdinalSubset (maxordinal : Ordinal) : Set (suc n) where | 247 record OrdinalSubset (maxordinal : Ordinal) : Set (suc n) where |
242 field | 248 field |
243 os→ : (x : Ordinal) → x o< maxordinal → Ordinal | 249 os→ : (x : Ordinal) → x o< maxordinal → Ordinal |
244 os← : Ordinal → Ordinal | 250 os← : Ordinal → Ordinal |