Library GeoCoq.Elements.OriginalProofs.proposition_11
Require Export GeoCoq.Elements.OriginalProofs.proposition_01.
Require Export GeoCoq.Elements.OriginalProofs.lemma_doublereverse.
Require Export GeoCoq.Elements.OriginalProofs.lemma_congruenceflip.
Require Export GeoCoq.Elements.OriginalProofs.lemma_collinearorder.
Section Euclid.
Context `{Ax:euclidean_neutral_ruler_compass}.
Lemma proposition_11 :
∀ A B C,
BetS A C B →
∃ X, Per A C X.
Proof.
intros.
assert (neq A C) by (forward_using lemma_betweennotequal).
let Tf:=fresh in
assert (Tf:∃ E, (BetS A C E ∧ Cong C E A C)) by (conclude postulate_extension);destruct Tf as [E];spliter.
assert (neq A E) by (forward_using lemma_betweennotequal).
let Tf:=fresh in
assert (Tf:∃ F, (equilateral A E F ∧ Triangle A E F)) by (conclude proposition_01);destruct Tf as [F];spliter.
assert (Cong E F F A) by (conclude_def equilateral ).
assert (Cong A F F E) by (forward_using lemma_doublereverse).
assert (Cong A F E F) by (forward_using lemma_congruenceflip).
assert (¬ eq C F).
{
intro.
assert (Col A C E) by (conclude_def Col ).
assert (Col A F E) by (conclude cn_equalitysub).
assert (Col A E F) by (forward_using lemma_collinearorder).
assert (nCol A E F) by (conclude_def Triangle ).
contradict.
}
assert (Cong C A E C) by (forward_using lemma_doublereverse).
assert (Cong A C E C) by (forward_using lemma_congruenceflip).
assert (Per A C F) by (conclude_def Per ).
close.
Qed.
End Euclid.
Require Export GeoCoq.Elements.OriginalProofs.lemma_doublereverse.
Require Export GeoCoq.Elements.OriginalProofs.lemma_congruenceflip.
Require Export GeoCoq.Elements.OriginalProofs.lemma_collinearorder.
Section Euclid.
Context `{Ax:euclidean_neutral_ruler_compass}.
Lemma proposition_11 :
∀ A B C,
BetS A C B →
∃ X, Per A C X.
Proof.
intros.
assert (neq A C) by (forward_using lemma_betweennotequal).
let Tf:=fresh in
assert (Tf:∃ E, (BetS A C E ∧ Cong C E A C)) by (conclude postulate_extension);destruct Tf as [E];spliter.
assert (neq A E) by (forward_using lemma_betweennotequal).
let Tf:=fresh in
assert (Tf:∃ F, (equilateral A E F ∧ Triangle A E F)) by (conclude proposition_01);destruct Tf as [F];spliter.
assert (Cong E F F A) by (conclude_def equilateral ).
assert (Cong A F F E) by (forward_using lemma_doublereverse).
assert (Cong A F E F) by (forward_using lemma_congruenceflip).
assert (¬ eq C F).
{
intro.
assert (Col A C E) by (conclude_def Col ).
assert (Col A F E) by (conclude cn_equalitysub).
assert (Col A E F) by (forward_using lemma_collinearorder).
assert (nCol A E F) by (conclude_def Triangle ).
contradict.
}
assert (Cong C A E C) by (forward_using lemma_doublereverse).
assert (Cong A C E C) by (forward_using lemma_congruenceflip).
assert (Per A C F) by (conclude_def Per ).
close.
Qed.
End Euclid.