Spectral/homotopy/spherical_fibrations.hlean
2016-03-24 13:27:21 -04:00

110 lines
3.4 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import homotopy.join homotopy.smash
open eq equiv trunc function bool join sphere sphere_index sphere.ops prod
open pointed sigma smash
namespace spherical_fibrations
/- classifying type of spherical fibrations -/
definition BG (n : ) : Type₁ :=
Σ(X : Type₀), ∥ X ≃ S n..-1 ∥
definition pointed_BG [instance] [constructor] (n : ) : pointed (BG n) :=
pointed.mk ⟨ S n..-1 , tr erfl ⟩
definition pBG [constructor] (n : ) : Type* := pointed.mk' (BG n)
definition BG_succ (n : ) : BG n → BG (n+1) :=
begin
intro X, cases X with X p,
apply sigma.mk (susp X), induction p with f, apply tr,
apply susp.equiv f
end
/- classifying type of pointed spherical fibrations -/
definition BF (n : ) : Type₁ :=
Σ(X : Type*), ∥ X ≃* S. n ∥
definition pointed_BF [instance] [constructor] (n : ) : pointed (BF n) :=
pointed.mk ⟨ S. n , tr pequiv.rfl ⟩
definition pBF [constructor] (n : ) : Type* := pointed.mk' (BF n)
definition BF_succ (n : ) : BF n → BF (n+1) :=
begin
intro X, cases X with X p,
apply sigma.mk (psusp X), induction p with f, apply tr,
apply susp.psusp_equiv f
end
definition BF_of_BG {n : } : BG n → BF n :=
begin
intro X, cases X with X p,
apply sigma.mk (pointed.MK (susp X) susp.north),
induction p with f, apply tr,
apply pequiv_of_equiv (susp.equiv f),
reflexivity
end
definition BG_of_BF {n : } : BF n → BG (n + 1) :=
begin
intro X, cases X with X hX,
apply sigma.mk (carrier X), induction hX with fX,
apply tr, exact fX
end
definition BG_mul {n m : } (X : BG n) (Y : BG m) : BG (n + m) :=
begin
cases X with X pX, cases Y with Y pY,
apply sigma.mk (join X Y),
induction pX with fX, induction pY with fY,
apply tr, rewrite add_sub_one,
exact (join.equiv_closed fX fY) ⬝e (join.spheres n..-1 m..-1)
end
definition BF_mul {n m : } (X : BF n) (Y : BF m) : BF (n + m) :=
begin
cases X with X hX, cases Y with Y hY,
apply sigma.mk (psmash X Y),
induction hX with fX, induction hY with fY, apply tr,
exact sorry -- needs smash.spheres : psmash (S. n) (S. m) ≃ S. (n + m)
end
definition BF_of_BG_mul (n m : ) (X : BG n) (Y : BG m)
: BF_of_BG (BG_mul X Y) = BF_mul (BF_of_BG X) (BF_of_BG Y) :=
sorry
-- Thom spaces
namespace thom
variables {X : Type} {n : } (α : X → BF n)
-- the canonical section of an F-object
protected definition sec (x : X) : carrier (sigma.pr1 (α x)) :=
Point _
open pushout sigma
definition thom_space : Type :=
pushout (λx : X, ⟨x , thom.sec α x⟩) (const X unit.star)
end thom
/-
Things to do:
- Orientability and orientations
* Thom class u ∈ ~Hⁿ(Tξ)
* eventually prove Thom-Isomorphism (Rudyak IV.5.7)
- define BG∞ and BF∞ as colimits of BG n and BF n
- Ω(BF n) = ΩⁿSⁿ₁ + ΩⁿSⁿ₋₁ (self-maps of degree ±1)
- succ_BF n is (n - 2) connected (from Freudenthal)
- pfiber (BG_of_BF n) ≃ S. n
- π₁(BF n)=π₁(BG n)=/2
- double covers BSG and BSF
- O : BF n → BG 1 = Σ(A : Type), ∥ A = bool ∥
- BSG n = sigma O
- π₁(BSG n)=π₁(BSF n)=O
- BSO(n), BSTop(n)
- find BF' n : Type₀ with BF' n ≃ BF n etc.
- canonical bundle γₙ : P(n) → P∞=BO(1) → Type₀
prove T(γₙ) = P(n+1)
-/
end spherical_fibrations