Mercurial > hg > Members > kono > Proof > ZF-in-agda
diff Ordinals.agda @ 361:4cbcf71b09c4
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 17 Jul 2020 16:33:30 +0900 |
parents | e27769992399 |
children | 8b0715e28b33 |
line wrap: on
line diff
--- a/Ordinals.agda Wed Jul 15 08:42:30 2020 +0900 +++ b/Ordinals.agda Fri Jul 17 16:33:30 2020 +0900 @@ -264,3 +264,30 @@ os-iso← : {x : Ordinal} → os→ (os← x) (os←limit x) ≡ x os-iso→ : {x : Ordinal} → (lt : x o< maxordinal ) → os← (os→ x lt) ≡ x +module o≤-Reasoning {n : Level} (O : Ordinals {n} ) where + + open inOrdinal O + + resp-o< : Ordinals._o<_ O Respects₂ _≡_ + resp-o< = resp₂ _o<_ + + trans1 : {i j k : Ordinal} → i o< j → j o< osuc k → i o< k + trans1 {i} {j} {k} i<j j<ok with osuc-≡< j<ok + trans1 {i} {j} {k} i<j j<ok | case1 refl = i<j + trans1 {i} {j} {k} i<j j<ok | case2 j<k = ordtrans i<j j<k + + trans2 : {i j k : Ordinal} → i o< osuc j → j o< k → i o< k + trans2 {i} {j} {k} i<oj j<k with osuc-≡< i<oj + trans2 {i} {j} {k} i<oj j<k | case1 refl = j<k + trans2 {i} {j} {k} i<oj j<k | case2 i<j = ordtrans i<j j<k + + open import Relation.Binary.Reasoning.Base.Triple {n} {_} {_} {_} {Ordinal } {_≡_} {_o≤_} {_o<_} + (Preorder.isPreorder OrdPreorder) + ordtrans --<-trans + (resp₂ _o<_) --(resp₂ _<_) + (λ x → ordtrans x <-osuc ) --<⇒≤ + trans1 --<-transˡ + trans2 --<-transʳ + public + hiding (_≈⟨_⟩_) +