Documentation

Mathlib.LinearAlgebra.Projectivization.Constructions

Dot Product and Cross Product on Projective Spaces #

This file defines the dot product and cross product on projective spaces.

Definitions #

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_mk {F : Type u_1} [Field F] {m : Type u_2} [Fintype m] {v w : m โ†’ F} (hv : v โ‰  0) (hw : w โ‰  0) :
      (mk F v hv).orthogonal (mk F w hw) โ†” v โฌแตฅ w = 0
      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
      theorem Projectivization.mk_eq_mk_iff_crossProduct_eq_zero {F : Type u_1} [Field F] {v w : Fin 3 โ†’ F} (hv : v โ‰  0) (hw : w โ‰  0) :
      mk F v hv = mk F w hw โ†” (crossProduct v) w = 0
      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) :
          (mk F v hv).cross (mk F w hw) = mk F v hv
          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) :
          (mk F v hv).cross (mk F w hw) = mk F ((crossProduct v) w) h
          theorem Projectivization.cross_self {F : Type u_1} [Field F] [DecidableEq F] (v : Projectivization F (Fin 3 โ†’ F)) :
          v.cross v = v
          theorem Projectivization.cross_mk_of_ne {F : Type u_1} [Field F] [DecidableEq F] {v w : Fin 3 โ†’ F} (hv : v โ‰  0) (hw : w โ‰  0) (h : mk F v hv โ‰  mk F w hw) :
          (mk F v hv).cross (mk F w hw) = mk F ((crossProduct v) w) โ‹ฏ
          theorem Projectivization.cross_comm {F : Type u_1} [Field F] [DecidableEq F] (v w : Projectivization F (Fin 3 โ†’ F)) :
          v.cross w = w.cross v