Library Coqtail.Topology.Inner_product
Require Import Vectors.
Require Import Reals.
Section Euclidean_Space.
Variable (V:Type) (vO:V).
Variable vadd : V→V→V.
Variable smul : R→V→V.
Variable v : vector_space R (1%R) Rplus Rmult V vO vadd smul.
Variable inner : V→V→R.
Record eucledian_space : Type := {
euclidean_conjugate_symmetry : ∀ x y, inner x y = inner y x;
euclidean_left_linearity_mult : ∀ a x y, inner (smul a x) y = Rmult a (inner x y);
euclidean_left_linearity_plus : ∀ x y z, inner (vadd x y) z = inner (vadd x z) (vadd y z);
euclidean_positiveness : ∀ x, (inner x x ≥ 0)%R;
euclidean_definiteness : ∀ x, inner x x = 0%R → x = vO
}.
End Euclidean_Space.