Require Export GeoCoq.Tarski_dev.Ch04_col.
Section Equivalence_between_decidability_properties_of_basic_relations.
Context `{Tn:Tarski_neutral_dimensionless}.

(* Specifications: *)
Lemma cong_dec_eq_dec :
(forall A B C D, Cong A B C D \/ ~ Cong A B C D) ->
(forall A B:Tpoint, A=B \/ A<>B).
Lemma eq_dec_implies_l2_11 :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B C A' B' C',
Bet A B C -> Bet A' B' C' -> Cong A B A' B' -> Cong B C B' C' -> Cong A C A' C'.
Lemma eq_dec_implies_construction_uniqueness :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall Q A B C X Y,
Q <> A -> Bet Q A X -> Cong A X B C -> Bet Q A Y -> Cong A Y B C -> X=Y.
Lemma eq_dec_implies_outer_transitivity_between2 :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B C D, Bet A B C -> Bet B C D -> B<>C -> Bet A C D.
Lemma eq_dec_implies_between_exchange4 :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B C D, Bet A B C -> Bet A C D -> Bet A B D.
Lemma eq_dec_implies_two_distinct_points :
(forall A B:Tpoint, A=B \/ A<>B) ->
exists X, exists Y: Tpoint, X <> Y.
Lemma eq_dec_implies_point_construction_different :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B, exists C, Bet A B C /\ B <> C.
Lemma eq_dec_implies_l4_2 :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B C D A' B' C' D', IFSC A B C D A' B' C' D' -> Cong B D B' D'.
Lemma eq_dec_implies_l4_5 :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B C A' C',
Bet A B C -> Cong A C A' C' ->
exists B', Bet A' B' C' /\ Cong_3 A B C A' B' C'.
Lemma eq_dec_implies_l4_6 :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B C A' B' C', Bet A B C -> Cong_3 A B C A' B' C' -> Bet A' B' C'.
Lemma eq_dec_implies_l4_16 :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B C D A' B' C' D',
FSC A B C D A' B' C' D' -> A<>B -> Cong C D C' D'.
Lemma eq_dec_implies_l4_17 :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B C P Q,
A<>B -> Col A B C -> Cong A P A Q -> Cong B P B Q -> Cong C P C Q.
Lemma eq_dec_implies_l5_1 :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B C D,
A<>B -> Bet A B C -> Bet A B D -> Bet A C D \/ Bet A D C.
Lemma eq_dec_implies_l5_2 :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B C D,
A<>B -> Bet A B C -> Bet A B D -> Bet B C D \/ Bet B D C.
Lemma eq_dec_implies_segment_construction_2 :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A Q B C, A<>Q -> exists X, (Bet Q A X \/ Bet Q X A) /\ Cong Q X B C.
Lemma eq_dec_implies_between_cong :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B C, Bet A C B -> Cong A C A B -> C=B.
Lemma eq_dec_cong_dec :
(forall A B:Tpoint, A=B \/ A<>B) ->
(forall A B C D, Cong A B C D \/ ~ Cong A B C D).
Lemma bet_dec_eq_dec :
(forall A B C, Bet A B C \/ ~ Bet A B C) ->
(forall A B:Tpoint, A=B \/ A<>B).
Lemma eq_dec_implies_between_cong_3 :
(forall A B:Tpoint, A=B \/ A<>B) ->
forall A B D E, A <> B -> Bet A B D -> Bet A B E -> Cong B D B E -> D = E.
Lemma eq_dec_bet_dec :
(forall A B:Tpoint, A=B \/ A<>B) ->
(forall A B C, Bet A B C \/ ~ Bet A B C).