proposition: Lemma upper_dim_dgc1 (a b c p q : 'rV[R]_2) (m := (1 / (1 + 1)) *: (p + q)) : p 0 0 - m 0 0 == 0 -> p <> q -> cong a p a q -> cong b p b q -> cong c p c q -> (a 0 0 - b 0 0) * (b 0 1 - c 0 1) == (a 0 1 - b 0 1) * (b 0 0 - c 0 0).
proof: Proof. move=> E F; move: E F (upper_dim_dgc_aux0 E F); rewrite -/m=> _ _. move=> /andP[/eqP ? ?] C1 C2 C3; apply upper_dim_dgc1_aux in C1=> //. apply upper_dim_dgc1_aux in C2=> //; apply upper_dim_dgc1_aux in C3=> //. by rewrite -C1 -C2 -C3 subrr mulr0 mul0r. Qed.
imports: mathcomp.ssreflect.ssreflect mathcomp(ssrbool ssrfun ssrnat eqtype seq order) mathcomp(fintype bigop) mathcomp(ssralg ssrnum matrix) mathcomp(zmodp) GeoCoq.Axioms.tarski_axioms GeoCoq.Axioms.gupta_inspired_variant_axioms GeoCoq.Meta_theory.Models.gupta_inspired_to_tarski GeoCoq.Meta_theory.Counter_models.coplanarity GeoCoq.Meta_theory.Parallel_postulates.parallel_postulates GeoCoq.Tarski_dev.Ch12_parallel_inter_dec