Two dimensional Euclidean spaces #
This file proves that the composition of two reflections is a rotation.
Main statements #
instance
Coxeter.instFiniteDimensionalReal_coxeter
{E : Type u_1}
[NormedAddCommGroup E]
[InnerProductSpace ℝ E]
[hdim2 : Fact (Module.finrank ℝ E = 2)]
:
noncomputable def
Coxeter.reflect
{E : Type u_1}
[NormedAddCommGroup E]
[InnerProductSpace ℝ E]
[hdim2 : Fact (Module.finrank ℝ E = 2)]
{x : E}
(hx : ‖x‖ = 1)
:
Equations
Instances For
theorem
Coxeter.reflect_apply
{E : Type u_1}
[NormedAddCommGroup E]
[InnerProductSpace ℝ E]
[hdim2 : Fact (Module.finrank ℝ E = 2)]
{x : E}
(hx : ‖x‖ = 1)
(y : E)
:
theorem
Coxeter.reflect_reflect_apply
{E : Type u_1}
[NormedAddCommGroup E]
[InnerProductSpace ℝ E]
[hdim2 : Fact (Module.finrank ℝ E = 2)]
(o : Orientation ℝ E (Fin 2))
{x y : E}
(hx : ‖x‖ = 1)
(hy : ‖y‖ = 1)
(v : E)
:
theorem
Coxeter.rotation_inj
{E : Type u_1}
[NormedAddCommGroup E]
[InnerProductSpace ℝ E]
[hdim2 : Fact (Module.finrank ℝ E = 2)]
(o : Orientation ℝ E (Fin 2))
:
theorem
Coxeter.rotation_pow
{E : Type u_1}
[NormedAddCommGroup E]
[InnerProductSpace ℝ E]
[hdim2 : Fact (Module.finrank ℝ E = 2)]
(o : Orientation ℝ E (Fin 2))
(n : ℕ)
(θ : Real.Angle)
:
theorem
Coxeter.order_rotation_two_pi_div
{E : Type u_1}
[NormedAddCommGroup E]
[InnerProductSpace ℝ E]
[hdim2 : Fact (Module.finrank ℝ E = 2)]
(o : Orientation ℝ E (Fin 2))
(m : ℕ)
(hm : m > 0)
: