work on spectrify elim

This commit is contained in:
Floris van Doorn 2017-06-08 15:41:57 -04:00
parent 15cc880b15
commit 1b21765391
2 changed files with 17 additions and 4 deletions

View file

@ -399,7 +399,7 @@ namespace seq_colim
equiv.mk _ !is_equiv_seq_colim_rec equiv.mk _ !is_equiv_seq_colim_rec
end functor end functor
definition pseq_colim.elim [constructor] {A : → Type*} {B : Type*} {f : Π{n}, A n →* A (n+1)} definition pseq_colim.elim' [constructor] {A : → Type*} {B : Type*} {f : Π{n}, A n →* A (n+1)}
(g : Πn, A n →* B) (p : Πn, g (n+1) ∘* f ~ g n) : pseq_colim @f →* B := (g : Πn, A n →* B) (p : Πn, g (n+1) ∘* f ~ g n) : pseq_colim @f →* B :=
begin begin
fapply pmap.mk, fapply pmap.mk,
@ -409,6 +409,10 @@ namespace seq_colim
{ esimp, apply respect_pt } { esimp, apply respect_pt }
end end
definition pseq_colim.elim [constructor] {A : → Type*} {B : Type*} {f : Π{n}, A n →* A (n+1)}
(g : Πn, A n →* B) (p : Πn, g (n+1) ∘* f ~* g n) : pseq_colim @f →* B :=
pseq_colim.elim' g p
definition prep0 [constructor] {A : → Type*} (f : pseq_diagram A) (k : ) : A 0 →* A k := definition prep0 [constructor] {A : → Type*} (f : pseq_diagram A) (k : ) : A 0 →* A k :=
pmap.mk (rep0 (λn x, f x) k) pmap.mk (rep0 (λn x, f x) k)
begin induction k with k p, reflexivity, exact ap (@f k) p ⬝ !respect_pt end begin induction k with k p, reflexivity, exact ap (@f k) p ⬝ !respect_pt end

View file

@ -431,8 +431,15 @@ namespace spectrum
-- note: the forward map is (currently) not definitionally equal to gluen. Is that a problem? -- note: the forward map is (currently) not definitionally equal to gluen. Is that a problem?
definition equiv_gluen {N : succ_str} (X : gen_spectrum N) (n : N) (k : ) definition equiv_gluen {N : succ_str} (X : gen_spectrum N) (n : N) (k : )
: X n ≃* Ω[k] (X (n +' k)) := : X n ≃* Ω[k] (X (n +' k)) :=
by induction k with k f; reflexivity; exact f ⬝e* loopn_pequiv_loopn k (equiv_glue X (n +' k)) by induction k with k f; reflexivity; exact f ⬝e* (loopn_pequiv_loopn k (equiv_glue X (n +' k))
⬝e* !loopn_succ_in⁻¹ᵉ* ⬝e* !loopn_succ_in⁻¹ᵉ*)
definition equiv_gluen_inv_succ {N : succ_str} (X : gen_spectrum N) (n : N) (k : ) :
(equiv_gluen X n (k+1))⁻¹ᵉ* ~*
(equiv_gluen X n k)⁻¹ᵉ* ∘* Ω→[k] (equiv_glue X (n +' k))⁻¹ᵉ* ∘* !loopn_succ_in :=
begin
refine !trans_pinv ⬝* pwhisker_left _ _, refine !trans_pinv ⬝* _, refine !to_pinv_pequiv_MK2 ◾* !pinv_pinv
end
definition spectrify_map {N : succ_str} {X : gen_prespectrum N} : X →ₛ spectrify X := definition spectrify_map {N : succ_str} {X : gen_prespectrum N} : X →ₛ spectrify X :=
begin begin
@ -457,7 +464,9 @@ namespace spectrum
fapply smap.mk, fapply smap.mk,
{ intro n, fapply pseq_colim.elim, { intro n, fapply pseq_colim.elim,
{ intro k, refine !equiv_gluen⁻¹ᵉ* ∘* apn k (f (n +' k)) }, { intro k, refine !equiv_gluen⁻¹ᵉ* ∘* apn k (f (n +' k)) },
{ intro k, apply to_homotopy, exact sorry }}, { intro k, refine !passoc ⬝* pwhisker_right _ !equiv_gluen_inv_succ ⬝* _,
refine !passoc ⬝* _, apply pwhisker_left,
refine !passoc ⬝* _, exact sorry }},
{ intro n, exact sorry } { intro n, exact sorry }
end end