Projective Spaces #
This file contains the definition of the projectivization of a vector space over a field, as well as the bijection between said projectivization and the collection of all one dimensional subspaces of the vector space.
Notation #
ℙ K V
is localized notation for Projectivization K V
, the projectivization of a K
-vector
space V
.
Constructing terms of ℙ K V
. #
We have three ways to construct terms of ℙ K V
:
Projectivization.mk K v hv
wherev : V
andhv : v ≠ 0
.Projectivization.mk' K v
wherev : { w : V // w ≠ 0 }
.Projectivization.mk'' H h
whereH : Submodule K V
andh : finrank H = 1
.
Other definitions #
- For
v : ℙ K V
,v.submodule
gives the corresponding submodule ofV
. Projectivization.equivSubmodule
is the equivalence betweenℙ K V
and{ H : Submodule K V // finrank H = 1 }
.- For
v : ℙ K V
,v.rep : V
is a representative ofv
.
The setoid whose quotient is the projectivization of V
.
Equations
- projectivizationSetoid K V = Setoid.comap Subtype.val (MulAction.orbitRel Kˣ V)
Instances For
The projectivization of the K
-vector space V
.
The notation ℙ K V
is preferred.
Equations
- Projectivization K V = Quotient (projectivizationSetoid K V)
Instances For
We define notations ℙ K V
for the projectivization of the K
-vector space V
.
Equations
- LinearAlgebra.Projectivization.termℙ = Lean.ParserDescr.node `LinearAlgebra.Projectivization.termℙ 1024 (Lean.ParserDescr.symbol "ℙ")
Instances For
Construct an element of the projectivization from a nonzero vector.
Equations
- Projectivization.mk K v hv = Quotient.mk'' ⟨v, hv⟩
Instances For
A variant of Projectivization.mk
in terms of a subtype. mk
is preferred.
Equations
Instances For
A function on non-zero vectors which is independent of scale, descends to a function on the projectivization.
Equations
- Projectivization.lift f hf x = Quotient.lift f ⋯ x
Instances For
Choose a representative of v : Projectivization K V
in V
.
Equations
- v.rep = ↑(Quotient.out v)
Instances For
Consider an element of the projectivization as a submodule of V
.
Equations
- v.submodule = Quotient.liftOn' v (fun (v : { v : V // v ≠ 0 }) => Submodule.span K {↑v}) ⋯
Instances For
Two nonzero vectors go to the same point in projective space if and only if one is a scalar multiple of the other.
An induction principle for Projectivization
. Use as induction v
.
The equivalence between the projectivization and the collection of subspaces of dimension 1.
Equations
- Projectivization.equivSubmodule K V = (Equiv.ofInjective Projectivization.submodule ⋯).trans ((Equiv.refl (Submodule K V)).subtypeEquiv ⋯)
Instances For
Construct an element of the projectivization from a subspace of dimension 1.
Equations
- Projectivization.mk'' H h = (Projectivization.equivSubmodule K V).symm ⟨H, h⟩
Instances For
An injective semilinear map of vector spaces induces a map on projective spaces.
Equations
- Projectivization.map f hf = Quotient.map' (fun (v : { v : V // v ≠ 0 }) => ⟨f ↑v, ⋯⟩) ⋯
Instances For
Mapping with respect to a semilinear map over an isomorphism of fields yields an injective map on projective spaces.