comparison Putil.agda @ 87:c68956f6c3ad

tc fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Thu, 27 Aug 2020 11:44:58 +0900
parents c5329963c583
children 405c1f727ffe
comparison
equal deleted inserted replaced
86:c5329963c583 87:c68956f6c3ad
208 toℕ (suc (fromℕ< i<sn)) 208 toℕ (suc (fromℕ< i<sn))
209 ∎ ) where open ≡-Reasoning 209 ∎ ) where open ≡-Reasoning
210 pleq2 : toℕ ( x ⟨$⟩ʳ (suc (fromℕ< i<sn)) ) ≡ toℕ ( y ⟨$⟩ʳ (suc (fromℕ< i<sn)) ) 210 pleq2 : toℕ ( x ⟨$⟩ʳ (suc (fromℕ< i<sn)) ) ≡ toℕ ( y ⟨$⟩ʳ (suc (fromℕ< i<sn)) )
211 pleq2 = headeq eq 211 pleq2 = headeq eq
212 212
213 pprep-cong : {n : ℕ} → (x y : Permutation n n ) → x =p= y → pprep x =p= pprep y 213 pprep-cong : {n : ℕ} → {x y : Permutation n n } → x =p= y → pprep x =p= pprep y
214 pprep-cong {n} x y x=y = {!!} where 214 pprep-cong {n} {x} {y} x=y = record { peq = pprep-cong1 } where
215 pprep-cong02 : (x : Permutation 1 1 ) → (q : Fin 1) → (x ⟨$⟩ʳ q) ≡ (pid ⟨$⟩ʳ q) 215 pprep-cong1 : (q : Fin (suc n)) → (pprep x ⟨$⟩ʳ q) ≡ (pprep y ⟨$⟩ʳ q)
216 pprep-cong02 x zero with x ⟨$⟩ʳ zero | inspect (_⟨$⟩ʳ_ x) zero 216 pprep-cong1 zero = refl
217 ... | zero | record { eq = e } = refl 217 pprep-cong1 (suc q) = begin
218 pprep-cong01 : (x : Permutation 1 1 ) → x =p= pid 218 pprep x ⟨$⟩ʳ suc q
219 pprep-cong01 x = record { peq = pprep-cong02 x } 219 ≡⟨⟩
220 pprep-cong0 : (n : ℕ) → (x : Permutation (suc n) (suc n) ) → toℕ (x ⟨$⟩ʳ fromℕ< a<sa ) ≡ n 220 suc ( x ⟨$⟩ʳ q )
221 pprep-cong0 zero x = begin 221 ≡⟨ cong ( λ k → suc k ) ( peq x=y q ) ⟩
222 toℕ (x ⟨$⟩ʳ fromℕ< a<sa) 222 suc ( y ⟨$⟩ʳ q )
223 ≡⟨⟩ 223 ≡⟨⟩
224 toℕ (x ⟨$⟩ʳ zero) 224 pprep y ⟨$⟩ʳ suc q
225 ≡⟨ cong (λ k → toℕ k) (pprep-cong02 x zero) ⟩ 225 ∎ where open ≡-Reasoning
226 toℕ {suc zero} zero 226
227 ≡⟨⟩ 227 pprep-dist : {n : ℕ} → {x y : Permutation n n } → pprep (x ∘ₚ y) =p= (pprep x ∘ₚ pprep y)
228 zero 228 pprep-dist {n} {x} {y} = record { peq = pprep-dist1 } where
229 ∎ where open ≡-Reasoning 229 pprep-dist1 : (q : Fin (suc n)) → (pprep (x ∘ₚ y) ⟨$⟩ʳ q) ≡ ((pprep x ∘ₚ pprep y) ⟨$⟩ʳ q)
230 pprep-cong0 (suc n) x = {!!} 230 pprep-dist1 zero = refl
231 t1 = plist0 (pprep (pid {3})) 231 pprep-dist1 (suc q) = cong ( λ k → suc k ) refl
232 pprep-cong1 : (n : ℕ) → (x : Permutation n n ) → plist0 (pprep x) ≡ n ∷ plist0 x 232
233 pprep-cong1 zero x = refl 233 pswap-cong : {n : ℕ} → {x y : Permutation n n } → x =p= y → pswap x =p= pswap y
234 pprep-cong1 (suc n) x = {!!} 234 pswap-cong {n} {x} {y} x=y = record { peq = pswap-cong1 } where
235 pswap-cong1 : (q : Fin (suc (suc n))) → (pswap x ⟨$⟩ʳ q) ≡ (pswap y ⟨$⟩ʳ q)
236 pswap-cong1 zero = refl
237 pswap-cong1 (suc zero) = refl
238 pswap-cong1 (suc (suc q)) = begin
239 pswap x ⟨$⟩ʳ suc (suc q)
240 ≡⟨⟩
241 suc (suc (x ⟨$⟩ʳ q))
242 ≡⟨ cong ( λ k → suc (suc k) ) ( peq x=y q ) ⟩
243 suc (suc (y ⟨$⟩ʳ q))
244 ≡⟨⟩
245 pswap y ⟨$⟩ʳ suc (suc q)
246 ∎ where open ≡-Reasoning
247
248 pswap-dist : {n : ℕ} → {x y : Permutation n n } → pprep (pprep (x ∘ₚ y)) =p= (pswap x ∘ₚ pswap y)
249 pswap-dist {n} {x} {y} = record { peq = pswap-dist1 } where
250 pswap-dist1 : (q : Fin (suc (suc n))) → ((pprep (pprep (x ∘ₚ y))) ⟨$⟩ʳ q) ≡ ((pswap x ∘ₚ pswap y) ⟨$⟩ʳ q)
251 pswap-dist1 zero = refl
252 pswap-dist1 (suc zero) = refl
253 pswap-dist1 (suc (suc q)) = cong ( λ k → suc (suc k) ) refl
235 254
236 data FL : (n : ℕ )→ Set where 255 data FL : (n : ℕ )→ Set where
237 f0 : FL 0 256 f0 : FL 0
238 _::_ : { n : ℕ } → Fin (suc n ) → FL n → FL (suc n) 257 _::_ : { n : ℕ } → Fin (suc n ) → FL n → FL (suc n)
239 258