feat(hott): add some [constructor] attributes
This commit is contained in:
parent
3887efa7c1
commit
54da5bcbda
3 changed files with 10 additions and 10 deletions
|
@ -489,7 +489,7 @@ end join_switch
|
||||||
protected definition ap_assoc_inv_glue_inl {A B : Type} (C : Type) (a : A) (b : B)
|
protected definition ap_assoc_inv_glue_inl {A B : Type} (C : Type) (a : A) (b : B)
|
||||||
: ap (to_inv (join.assoc A B C)) (glue a (inl b)) = ap inl (glue a b) :=
|
: ap (to_inv (join.assoc A B C)) (glue a (inl b)) = ap inl (glue a b) :=
|
||||||
begin
|
begin
|
||||||
unfold join.assoc, unfold equiv.trans, rewrite ap_compose, krewrite join.elim_glue,
|
unfold join.assoc, rewrite ap_compose, krewrite join.elim_glue,
|
||||||
rewrite ap_compose, krewrite join.elim_glue, rewrite ap_inv, krewrite join.elim_glue,
|
rewrite ap_compose, krewrite join.elim_glue, rewrite ap_inv, krewrite join.elim_glue,
|
||||||
unfold switch_coh, unfold join.symm, unfold join.swap, esimp, rewrite eq.inv_inv
|
unfold switch_coh, unfold join.symm, unfold join.swap, esimp, rewrite eq.inv_inv
|
||||||
end
|
end
|
||||||
|
@ -497,7 +497,7 @@ end join_switch
|
||||||
protected definition ap_assoc_inv_glue_inr {A C : Type} (B : Type) (a : A) (c : C)
|
protected definition ap_assoc_inv_glue_inr {A C : Type} (B : Type) (a : A) (c : C)
|
||||||
: ap (to_inv (join.assoc A B C)) (glue a (inr c)) = glue (inl a) c :=
|
: ap (to_inv (join.assoc A B C)) (glue a (inr c)) = glue (inl a) c :=
|
||||||
begin
|
begin
|
||||||
unfold join.assoc, unfold equiv.trans, rewrite ap_compose, krewrite join.elim_glue,
|
unfold join.assoc, rewrite ap_compose, krewrite join.elim_glue,
|
||||||
rewrite ap_compose, krewrite join.elim_glue, rewrite ap_inv, krewrite join.elim_glue,
|
rewrite ap_compose, krewrite join.elim_glue, rewrite ap_inv, krewrite join.elim_glue,
|
||||||
unfold switch_coh, unfold join.symm, unfold join.swap, esimp, rewrite eq.inv_inv
|
unfold switch_coh, unfold join.symm, unfold join.swap, esimp, rewrite eq.inv_inv
|
||||||
end
|
end
|
||||||
|
|
|
@ -148,7 +148,7 @@ namespace is_equiv
|
||||||
ap_con_eq_con_ap (right_inv f) q,inv_con_cancel_left,ap_id],
|
ap_con_eq_con_ap (right_inv f) q,inv_con_cancel_left,ap_id],
|
||||||
end
|
end
|
||||||
|
|
||||||
definition is_equiv_ap [instance] (x y : A) : is_equiv (ap f : x = y → f x = f y) :=
|
definition is_equiv_ap [instance] [constructor] (x y : A) : is_equiv (ap f : x = y → f x = f y) :=
|
||||||
adjointify
|
adjointify
|
||||||
(ap f)
|
(ap f)
|
||||||
(eq_of_fn_eq_fn' f)
|
(eq_of_fn_eq_fn' f)
|
||||||
|
@ -313,10 +313,10 @@ namespace equiv
|
||||||
protected definition refl [refl] [constructor] : A ≃ A :=
|
protected definition refl [refl] [constructor] : A ≃ A :=
|
||||||
equiv.mk id !is_equiv_id
|
equiv.mk id !is_equiv_id
|
||||||
|
|
||||||
protected definition symm [symm] (f : A ≃ B) : B ≃ A :=
|
protected definition symm [symm] [constructor] (f : A ≃ B) : B ≃ A :=
|
||||||
equiv.mk f⁻¹ !is_equiv_inv
|
equiv.mk f⁻¹ !is_equiv_inv
|
||||||
|
|
||||||
protected definition trans [trans] (f : A ≃ B) (g : B ≃ C) : A ≃ C :=
|
protected definition trans [trans] [constructor] (f : A ≃ B) (g : B ≃ C) : A ≃ C :=
|
||||||
equiv.mk (g ∘ f) !is_equiv_compose
|
equiv.mk (g ∘ f) !is_equiv_compose
|
||||||
|
|
||||||
infixl ` ⬝e `:75 := equiv.trans
|
infixl ` ⬝e `:75 := equiv.trans
|
||||||
|
|
|
@ -72,7 +72,7 @@ namespace fiber
|
||||||
|
|
||||||
-- pre and post composition with equivalences
|
-- pre and post composition with equivalences
|
||||||
open function
|
open function
|
||||||
protected definition equiv_postcompose {B' : Type} (g : B → B') [H : is_equiv g]
|
protected definition equiv_postcompose [constructor] {B' : Type} (g : B → B') [H : is_equiv g]
|
||||||
: fiber (g ∘ f) (g b) ≃ fiber f b :=
|
: fiber (g ∘ f) (g b) ≃ fiber f b :=
|
||||||
calc
|
calc
|
||||||
fiber (g ∘ f) (g b) ≃ Σa : A, g (f a) = g b : fiber.sigma_char
|
fiber (g ∘ f) (g b) ≃ Σa : A, g (f a) = g b : fiber.sigma_char
|
||||||
|
@ -82,7 +82,7 @@ namespace fiber
|
||||||
end
|
end
|
||||||
... ≃ fiber f b : fiber.sigma_char
|
... ≃ fiber f b : fiber.sigma_char
|
||||||
|
|
||||||
protected definition equiv_precompose {A' : Type} (g : A' → A) [H : is_equiv g]
|
protected definition equiv_precompose [constructor] {A' : Type} (g : A' → A) [H : is_equiv g]
|
||||||
: fiber (f ∘ g) b ≃ fiber f b :=
|
: fiber (f ∘ g) b ≃ fiber f b :=
|
||||||
calc
|
calc
|
||||||
fiber (f ∘ g) b ≃ Σa' : A', f (g a') = b : fiber.sigma_char
|
fiber (f ∘ g) b ≃ Σa' : A', f (g a') = b : fiber.sigma_char
|
||||||
|
@ -98,7 +98,7 @@ open unit is_trunc pointed
|
||||||
|
|
||||||
namespace fiber
|
namespace fiber
|
||||||
|
|
||||||
definition fiber_star_equiv (A : Type) : fiber (λx : A, star) star ≃ A :=
|
definition fiber_star_equiv [constructor] (A : Type) : fiber (λx : A, star) star ≃ A :=
|
||||||
begin
|
begin
|
||||||
fapply equiv.MK,
|
fapply equiv.MK,
|
||||||
{ intro f, cases f with a H, exact a },
|
{ intro f, cases f with a H, exact a },
|
||||||
|
@ -108,7 +108,7 @@ namespace fiber
|
||||||
rewrite [is_set.elim H (refl star)] }
|
rewrite [is_set.elim H (refl star)] }
|
||||||
end
|
end
|
||||||
|
|
||||||
definition fiber_const_equiv (A : Type) (a₀ : A) (a : A)
|
definition fiber_const_equiv [constructor] (A : Type) (a₀ : A) (a : A)
|
||||||
: fiber (λz : unit, a₀) a ≃ a₀ = a :=
|
: fiber (λz : unit, a₀) a ≃ a₀ = a :=
|
||||||
calc
|
calc
|
||||||
fiber (λz : unit, a₀) a
|
fiber (λz : unit, a₀) a
|
||||||
|
@ -131,7 +131,7 @@ namespace fiber
|
||||||
variables {A : Type} {P Q : A → Type}
|
variables {A : Type} {P Q : A → Type}
|
||||||
variable (f : Πa, P a → Q a)
|
variable (f : Πa, P a → Q a)
|
||||||
|
|
||||||
definition fiber_total_equiv {a : A} (q : Q a)
|
definition fiber_total_equiv [constructor] {a : A} (q : Q a)
|
||||||
: fiber (total f) ⟨a , q⟩ ≃ fiber (f a) q :=
|
: fiber (total f) ⟨a , q⟩ ≃ fiber (f a) q :=
|
||||||
calc
|
calc
|
||||||
fiber (total f) ⟨a , q⟩
|
fiber (total f) ⟨a , q⟩
|
||||||
|
|
Loading…
Reference in a new issue