{-# OPTIONS --without-K #-}
open import lib.Basics
open import lib.types.Paths
open import lib.types.Pi
open import lib.types.Unit
open import lib.types.Nat
open import lib.types.TLevel
open import lib.types.Pointed
open import lib.types.Sigma
open import lib.NType2
open import lib.types.PathSeq
open import nicolai.pseudotruncations.Preliminary-definitions
open import nicolai.pseudotruncations.Liblemmas
open import nicolai.pseudotruncations.SeqColim
module nicolai.pseudotruncations.wconst-preparation where
module wconst-init {i} {C : Sequence {i}} (wc : wconst-chain C) (a₀ : fst C O) where
A = fst C
f = snd C
SC = SeqCo C
ins-wconst : (n : ℕ) → wconst (ins {C = C} n)
ins-wconst n a₁ a₂ =
ins n a₁ =⟨ glue n a₁ ⟩
ins (S n) (f n a₁) =⟨ ap (ins (S n)) (wc n a₁ a₂) ⟩
ins (S n) (f n a₂) =⟨ ! (glue n a₂) ⟩
ins n a₂ ∎
î-def : (n : ℕ) → (a : A n) → (ins {C = C} n a) =-= (ins O a₀)
î-def n a =
ins n a
=⟪ glue n a ⟫
ins (S n) (f n a)
=⟪ ap (ins (S n)) (wc n _ _) ⟫
ins (S n) (lift-point C a₀ (S n))
=⟪ ! (lift-point-= C a₀ (S n)) ⟫
ins O a₀
∎∎