Dot Product and Cross Product on Projective Spaces #
This file defines the dot product and cross product on projective spaces.
Definitions #
Projectivization.orthogonal v wis defined as vanishing of the dot product.Projectivization.cross v wforv w : โ F (Fin 3 โ F)is defined as the cross product ofvandwprovided thatv โ w. Ifv = w, then the cross product would be zero, so we instead definecross v v = v.
def
Projectivization.orthogonal
{F : Type u_1}
[Field F]
{m : Type u_2}
[Fintype m]
:
Projectivization F (m โ F) โ Projectivization F (m โ F) โ Prop
Orthogonality on the projective plane.
Equations
Instances For
theorem
Projectivization.orthogonal_comm
{F : Type u_1}
[Field F]
{m : Type u_2}
[Fintype m]
{v w : Projectivization F (m โ F)}
:
theorem
Projectivization.exists_not_self_orthogonal
{F : Type u_1}
[Field F]
{m : Type u_2}
[Fintype m]
(v : Projectivization F (m โ F))
:
โ (w : Projectivization F (m โ F)), ยฌv.orthogonal w
theorem
Projectivization.exists_not_orthogonal_self
{F : Type u_1}
[Field F]
{m : Type u_2}
[Fintype m]
(v : Projectivization F (m โ F))
:
โ (w : Projectivization F (m โ F)), ยฌw.orthogonal v
def
Projectivization.cross
{F : Type u_1}
[Field F]
[DecidableEq F]
:
Projectivization F (Fin 3 โ F) โ Projectivization F (Fin 3 โ F) โ Projectivization F (Fin 3 โ F)
Cross product on the projective plane.
Equations
Instances For
theorem
Projectivization.cross_mk
{F : Type u_1}
[Field F]
[DecidableEq F]
{v w : Fin 3 โ F}
(hv : v โ 0)
(hw : w โ 0)
:
(mk F v hv).cross (mk F w hw) = if h : (crossProduct v) w = 0 then mk F v hv else mk F ((crossProduct v) w) h
theorem
Projectivization.cross_mk_of_cross_eq_zero
{F : Type u_1}
[Field F]
[DecidableEq F]
{v w : Fin 3 โ F}
(hv : v โ 0)
(hw : w โ 0)
(h : (crossProduct v) w = 0)
:
theorem
Projectivization.cross_mk_of_cross_ne_zero
{F : Type u_1}
[Field F]
[DecidableEq F]
{v w : Fin 3 โ F}
(hv : v โ 0)
(hw : w โ 0)
(h : (crossProduct v) w โ 0)
:
theorem
Projectivization.cross_self
{F : Type u_1}
[Field F]
[DecidableEq F]
(v : Projectivization F (Fin 3 โ F))
:
theorem
Projectivization.cross_comm
{F : Type u_1}
[Field F]
[DecidableEq F]
(v w : Projectivization F (Fin 3 โ F))
:
theorem
Projectivization.cross_orthogonal_left
{F : Type u_1}
[Field F]
[DecidableEq F]
{v w : Projectivization F (Fin 3 โ F)}
(h : v โ w)
:
(v.cross w).orthogonal v
theorem
Projectivization.cross_orthogonal_right
{F : Type u_1}
[Field F]
[DecidableEq F]
{v w : Projectivization F (Fin 3 โ F)}
(h : v โ w)
:
(v.cross w).orthogonal w
theorem
Projectivization.orthogonal_cross_left
{F : Type u_1}
[Field F]
[DecidableEq F]
{v w : Projectivization F (Fin 3 โ F)}
(h : v โ w)
:
v.orthogonal (v.cross w)
theorem
Projectivization.orthogonal_cross_right
{F : Type u_1}
[Field F]
[DecidableEq F]
{v w : Projectivization F (Fin 3 โ F)}
(h : v โ w)
:
w.orthogonal (v.cross w)