proposition: Lemma vector2_neq0 (v : 'rV[R]_2) : (v != 0) = (v 0 0 != 0) || (v 0 1 != 0).
proof: Proof. apply /eqP; case: (v 0 0 =P 0)=> Hv0; case: (v 0 1 =P 0)=> Hv1 /=; try (by apply /rowP=> H; try apply Hv0; try apply Hv1; rewrite H mxE). apply /rowP=> j; case: j => [] [|[|//]] p. by rewrite (@ord_inj _ (Ordinal p) 0) // Hv0 mxE . by rewrite (@ord_inj _ (Ordinal p) 1) // Hv1 mxE. 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