Mercurial > hg > Members > kono > Proof > ZF-in-agda
changeset 1379:f2755eab7b91
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 23 Jun 2023 10:09:53 +0900 |
parents | aca9b1e67503 |
children | 9ef69be89d06 |
files | src/bijection.agda |
diffstat | 1 files changed, 16 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/src/bijection.agda Fri Jun 23 08:13:22 2023 +0900 +++ b/src/bijection.agda Fri Jun 23 10:09:53 2023 +0900 @@ -751,27 +751,31 @@ ... | no nisb | record { eq = eq1 } = lem09 i (suc j) (≤-trans lt a≤sa) eq bton : B → ℕ - bton b = count-B (fun→ cn (g b)) + bton b = pred (count-B (fun→ cn (g b))) ntob : (n : ℕ) → B ntob n = CountB.b (lem01 n (maxAC.ac (lem02 n)) (≤-trans (maxAC.n<ca (lem02 n)) (ca≤cb0 (maxAC.ac (lem02 n))) )) biso : (n : ℕ) → bton (ntob n) ≡ n - biso 0 = ? - biso (suc n) = begin -- lem03 _ (≤-trans (maxAC.n<ca (lem02 n )) ?) refl - bton (ntob (suc n)) ≡⟨ ? ⟩ - count-B (fun→ cn (g (CountB.b CB1))) ≡⟨ sym ( cong (λ k → count-B (fun→ cn k)) ( CountB.b=cn CB1)) ⟩ - count-B (fun→ cn (fun← cn (CountB.cb CB1))) ≡⟨ ? ⟩ - count-B (CountB.cb CB1) ≡⟨ CountB.cb=n CB1 ⟩ - ? ≡⟨ ? ⟩ - suc n ∎ where + biso n = begin + bton (ntob n) ≡⟨ refl ⟩ + pred (count-B (fun→ cn (g (CountB.b CB)))) ≡⟨ sym ( cong (λ k → pred (count-B (fun→ cn k))) ( CountB.b=cn CB)) ⟩ + pred (count-B (fun→ cn (fun← cn (CountB.cb CB)))) ≡⟨ cong (λ k → pred (count-B k)) (fiso→ cn _) ⟩ + pred (count-B (CountB.cb CB)) ≡⟨ cong pred (CountB.cb=n CB) ⟩ + pred (suc n) ≡⟨ refl ⟩ + n ∎ where open ≡-Reasoning CB = lem01 n (maxAC.ac (lem02 n)) (≤-trans (maxAC.n<ca (lem02 n)) (ca≤cb0 (maxAC.ac (lem02 n))) ) - CB1 = lem01 (suc n) (maxAC.ac (lem02 (suc n))) (≤-trans (maxAC.n<ca (lem02 (suc n))) (ca≤cb0 (maxAC.ac (lem02 (suc n)))) ) - biso1 : (b : B) → ntob (bton b) ≡ b - biso1 b = ? + biso1 b = InjectiveF.inject gi ( begin + g (ntob (bton b)) ≡⟨ refl ⟩ + g (CountB.b CB) ≡⟨ sym (CountB.b=cn CB) ⟩ + ? ≡⟨ ? ⟩ + g b ∎ ) where + open ≡-Reasoning + n = pred (count-B (fun→ cn (g b))) + CB = lem01 n (maxAC.ac (lem02 n)) (≤-trans (maxAC.n<ca (lem02 n)) (ca≤cb0 (maxAC.ac (lem02 n))) ) bi-∧ : {A B C D : Set} → Bijection A B → Bijection C D → Bijection (A ∧ C) (B ∧ D) bi-∧ {A} {B} {C} {D} ab cd = record {