67 lines
2.7 KiB
Text
67 lines
2.7 KiB
Text
/- the construction of the Gysin sequence using the Serre spectral sequence -/
|
||
-- author: Floris van Doorn
|
||
|
||
import .serre
|
||
|
||
open eq pointed is_trunc is_conn is_equiv equiv sphere fiber chain_complex left_module spectrum nat
|
||
prod nat int algebra function spectral_sequence
|
||
|
||
namespace cohomology
|
||
-- set_option pp.universes true
|
||
-- print unreduced_ordinary_cohomology_sphere_of_neq_nat
|
||
-- --set_option formatter.hide_full_terms false
|
||
-- exit
|
||
definition gysin_sequence' {E B : Type*} (n : ℕ) (HB : is_conn 1 B) (f : E →* B)
|
||
(e : pfiber f ≃* sphere (n+1)) (A : AbGroup) : chain_complex +3ℤ :=
|
||
let c := serre_spectral_sequence_map_of_is_conn pt f (EM_spectrum A) 0 (is_strunc_EM_spectrum A) HB in
|
||
let cn : is_normal c := !is_normal_serre_spectral_sequence_map_of_is_conn in
|
||
let deg_d_x : Π(m : ℤ), deg (convergent_spectral_sequence.d c n) ((m+1) - 3, n + 1) = (n + m - 0, 0) :=
|
||
begin
|
||
intro m, refine deg_d_normal_eq cn _ _ ⬝ _,
|
||
refine prod_eq _ !add.right_inv,
|
||
refine add.comm4 (m+1) (-3) n 2 ⬝ _,
|
||
exact ap (λx, x - 1) (add.comm (m + 1) n ⬝ (add.assoc n m 1)⁻¹) ⬝ !add.assoc
|
||
end in
|
||
left_module.LES_of_SESs _ _ _ (λm, convergent_spectral_sequence.d c n (m - 3, n + 1))
|
||
begin
|
||
intro m,
|
||
fapply short_exact_mod_isomorphism,
|
||
rotate 3,
|
||
{ fapply short_exact_mod_of_is_contr_submodules
|
||
(convergence_0 c (n + m) (λm, neg_zero)),
|
||
{ exact zero_lt_succ n },
|
||
{ intro k Hk0 Hkn, apply is_contr_E,
|
||
apply is_contr_ordinary_cohomology,
|
||
refine is_contr_equiv_closed_rev _
|
||
(unreduced_ordinary_cohomology_sphere_of_neq_nat A Hkn Hk0),
|
||
apply group.equiv_of_isomorphism, apply unreduced_ordinary_cohomology_isomorphism,
|
||
exact e⁻¹ᵉ* }},
|
||
{ symmetry, refine Einf_isomorphism c (n+1) _ _ ⬝lm
|
||
convergent_spectral_sequence.α c n (n + m - 0, 0) ⬝lm
|
||
isomorphism_of_eq (ap (graded_homology _ _) _) ⬝lm
|
||
!graded_homology_isomorphism ⬝lm
|
||
cokernel_module_isomorphism_homology _ _ _,
|
||
{ exact sorry },
|
||
{ exact sorry },
|
||
{ exact (deg_d_x m)⁻¹ },
|
||
{ intro x, apply @eq_of_is_contr, apply is_contr_E,
|
||
apply is_normal.normal2 cn,
|
||
refine lt_of_le_of_lt (@le_of_eq ℤ _ _ _ (ap (pr2 ∘ deg (convergent_spectral_sequence.d c n))
|
||
(deg_d_x m) ⬝ ap pr2 (deg_d_normal_eq cn _ _))) _,
|
||
refine lt_of_le_of_lt (le_of_eq (zero_add (-(n+1)))) _,
|
||
apply neg_neg_of_pos, apply of_nat_succ_pos }},
|
||
{ reflexivity },
|
||
{ exact sorry }
|
||
end
|
||
|
||
-- (λm, short_exact_mod_isomorphism
|
||
-- _
|
||
-- isomorphism.rfl
|
||
-- _
|
||
-- (short_exact_mod_of_is_contr_submodules
|
||
-- (convergent_HDinf X _)
|
||
-- (zero_lt_succ n)
|
||
-- _))
|
||
|
||
|
||
end cohomology
|