Section TarskiGe1.
Variable R : realFieldType.
Variable n : nat.
Implicit Types (a b c d : (@ Vector R n)).
Definition cong a b c d := (b - a) *m (b - a)^T == (d - c) *m (d - c)^T.
Definition bet a b c := betE a b c || betS a b c.
Definition extension a b k := k^-1 *: (b - a) + a.
Definition contraction a b k := k *: (b - a) + a.
Definition sqr_L2_norm_2D a b :=
(b 0 0 - a 0 0) ^+ 2 + (b 0 1 - a 0 1) ^+ 2.
Definition row2 {R : ringType} (a b : R) : 'rV[R]_2 :=
\row_p [eta \0 with 0 |-> a, 1 |-> b] p.
Definition a : (@Vector R 1) := row2 0 0.
Definition b : (@Vector R 1) := row2 0 1.
Definition c : (@Vector R 1) := row2 1 0.

Lemma row2_eq0 (a b : R) : row2 a b == 0 = ((a == 0) && (b == 0)).