Metamath Proof Explorer


Theorem colline

Description: Three points are colinear iff there is a line through all three of them. Theorem 6.23 of Schwabhauser p. 46. (Contributed by Thierry Arnoux, 28-May-2019)

Ref Expression
Hypotheses tglineintmo.p 𝑃 = ( Base ‘ 𝐺 )
tglineintmo.i 𝐼 = ( Itv ‘ 𝐺 )
tglineintmo.l 𝐿 = ( LineG ‘ 𝐺 )
tglineintmo.g ( 𝜑𝐺 ∈ TarskiG )
colline.1 ( 𝜑𝑋𝑃 )
colline.2 ( 𝜑𝑌𝑃 )
colline.3 ( 𝜑𝑍𝑃 )
colline.4 ( 𝜑 → 2 ≤ ( ♯ ‘ 𝑃 ) )
Assertion colline ( 𝜑 → ( ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ↔ ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) )

Proof

Step Hyp Ref Expression
1 tglineintmo.p 𝑃 = ( Base ‘ 𝐺 )
2 tglineintmo.i 𝐼 = ( Itv ‘ 𝐺 )
3 tglineintmo.l 𝐿 = ( LineG ‘ 𝐺 )
4 tglineintmo.g ( 𝜑𝐺 ∈ TarskiG )
5 colline.1 ( 𝜑𝑋𝑃 )
6 colline.2 ( 𝜑𝑌𝑃 )
7 colline.3 ( 𝜑𝑍𝑃 )
8 colline.4 ( 𝜑 → 2 ≤ ( ♯ ‘ 𝑃 ) )
9 4 ad4antr ( ( ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) ∧ 𝑥𝑃 ) ∧ 𝑋𝑥 ) → 𝐺 ∈ TarskiG )
10 5 ad4antr ( ( ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) ∧ 𝑥𝑃 ) ∧ 𝑋𝑥 ) → 𝑋𝑃 )
11 simplr ( ( ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) ∧ 𝑥𝑃 ) ∧ 𝑋𝑥 ) → 𝑥𝑃 )
12 simpr ( ( ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) ∧ 𝑥𝑃 ) ∧ 𝑋𝑥 ) → 𝑋𝑥 )
13 1 2 3 9 10 11 12 tgelrnln ( ( ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) ∧ 𝑥𝑃 ) ∧ 𝑋𝑥 ) → ( 𝑋 𝐿 𝑥 ) ∈ ran 𝐿 )
14 1 2 3 9 10 11 12 tglinerflx1 ( ( ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) ∧ 𝑥𝑃 ) ∧ 𝑋𝑥 ) → 𝑋 ∈ ( 𝑋 𝐿 𝑥 ) )
15 simp-4r ( ( ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) ∧ 𝑥𝑃 ) ∧ 𝑋𝑥 ) → 𝑌 = 𝑍 )
16 simpllr ( ( ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) ∧ 𝑥𝑃 ) ∧ 𝑋𝑥 ) → 𝑋 = 𝑍 )
17 16 14 eqeltrrd ( ( ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) ∧ 𝑥𝑃 ) ∧ 𝑋𝑥 ) → 𝑍 ∈ ( 𝑋 𝐿 𝑥 ) )
18 15 17 eqeltrd ( ( ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) ∧ 𝑥𝑃 ) ∧ 𝑋𝑥 ) → 𝑌 ∈ ( 𝑋 𝐿 𝑥 ) )
19 eleq2 ( 𝑎 = ( 𝑋 𝐿 𝑥 ) → ( 𝑋𝑎𝑋 ∈ ( 𝑋 𝐿 𝑥 ) ) )
20 eleq2 ( 𝑎 = ( 𝑋 𝐿 𝑥 ) → ( 𝑌𝑎𝑌 ∈ ( 𝑋 𝐿 𝑥 ) ) )
21 eleq2 ( 𝑎 = ( 𝑋 𝐿 𝑥 ) → ( 𝑍𝑎𝑍 ∈ ( 𝑋 𝐿 𝑥 ) ) )
22 19 20 21 3anbi123d ( 𝑎 = ( 𝑋 𝐿 𝑥 ) → ( ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ↔ ( 𝑋 ∈ ( 𝑋 𝐿 𝑥 ) ∧ 𝑌 ∈ ( 𝑋 𝐿 𝑥 ) ∧ 𝑍 ∈ ( 𝑋 𝐿 𝑥 ) ) ) )
23 22 rspcev ( ( ( 𝑋 𝐿 𝑥 ) ∈ ran 𝐿 ∧ ( 𝑋 ∈ ( 𝑋 𝐿 𝑥 ) ∧ 𝑌 ∈ ( 𝑋 𝐿 𝑥 ) ∧ 𝑍 ∈ ( 𝑋 𝐿 𝑥 ) ) ) → ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) )
24 13 14 18 17 23 syl13anc ( ( ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) ∧ 𝑥𝑃 ) ∧ 𝑋𝑥 ) → ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) )
25 eqid ( dist ‘ 𝐺 ) = ( dist ‘ 𝐺 )
26 1 25 2 4 8 5 tglowdim1i ( 𝜑 → ∃ 𝑥𝑃 𝑋𝑥 )
27 26 ad2antrr ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) → ∃ 𝑥𝑃 𝑋𝑥 )
28 24 27 r19.29a ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋 = 𝑍 ) → ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) )
29 4 ad2antrr ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋𝑍 ) → 𝐺 ∈ TarskiG )
30 5 ad2antrr ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋𝑍 ) → 𝑋𝑃 )
31 7 ad2antrr ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋𝑍 ) → 𝑍𝑃 )
32 simpr ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋𝑍 ) → 𝑋𝑍 )
33 1 2 3 29 30 31 32 tgelrnln ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋𝑍 ) → ( 𝑋 𝐿 𝑍 ) ∈ ran 𝐿 )
34 1 2 3 29 30 31 32 tglinerflx1 ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋𝑍 ) → 𝑋 ∈ ( 𝑋 𝐿 𝑍 ) )
35 simplr ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋𝑍 ) → 𝑌 = 𝑍 )
36 1 2 3 29 30 31 32 tglinerflx2 ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋𝑍 ) → 𝑍 ∈ ( 𝑋 𝐿 𝑍 ) )
37 35 36 eqeltrd ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋𝑍 ) → 𝑌 ∈ ( 𝑋 𝐿 𝑍 ) )
38 eleq2 ( 𝑎 = ( 𝑋 𝐿 𝑍 ) → ( 𝑋𝑎𝑋 ∈ ( 𝑋 𝐿 𝑍 ) ) )
39 eleq2 ( 𝑎 = ( 𝑋 𝐿 𝑍 ) → ( 𝑌𝑎𝑌 ∈ ( 𝑋 𝐿 𝑍 ) ) )
40 eleq2 ( 𝑎 = ( 𝑋 𝐿 𝑍 ) → ( 𝑍𝑎𝑍 ∈ ( 𝑋 𝐿 𝑍 ) ) )
41 38 39 40 3anbi123d ( 𝑎 = ( 𝑋 𝐿 𝑍 ) → ( ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ↔ ( 𝑋 ∈ ( 𝑋 𝐿 𝑍 ) ∧ 𝑌 ∈ ( 𝑋 𝐿 𝑍 ) ∧ 𝑍 ∈ ( 𝑋 𝐿 𝑍 ) ) ) )
42 41 rspcev ( ( ( 𝑋 𝐿 𝑍 ) ∈ ran 𝐿 ∧ ( 𝑋 ∈ ( 𝑋 𝐿 𝑍 ) ∧ 𝑌 ∈ ( 𝑋 𝐿 𝑍 ) ∧ 𝑍 ∈ ( 𝑋 𝐿 𝑍 ) ) ) → ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) )
43 33 34 37 36 42 syl13anc ( ( ( 𝜑𝑌 = 𝑍 ) ∧ 𝑋𝑍 ) → ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) )
44 28 43 pm2.61dane ( ( 𝜑𝑌 = 𝑍 ) → ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) )
45 44 adantlr ( ( ( 𝜑 ∧ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ) ∧ 𝑌 = 𝑍 ) → ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) )
46 simpll ( ( ( 𝜑 ∧ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ) ∧ 𝑌𝑍 ) → 𝜑 )
47 simpr ( ( ( 𝜑 ∧ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ) ∧ 𝑌𝑍 ) → 𝑌𝑍 )
48 47 neneqd ( ( ( 𝜑 ∧ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ) ∧ 𝑌𝑍 ) → ¬ 𝑌 = 𝑍 )
49 simplr ( ( ( 𝜑 ∧ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ) ∧ 𝑌𝑍 ) → ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) )
50 orel2 ( ¬ 𝑌 = 𝑍 → ( ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) → 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ) )
51 48 49 50 sylc ( ( ( 𝜑 ∧ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ) ∧ 𝑌𝑍 ) → 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) )
52 4 ad2antrr ( ( ( 𝜑𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ) ∧ 𝑌𝑍 ) → 𝐺 ∈ TarskiG )
53 6 ad2antrr ( ( ( 𝜑𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ) ∧ 𝑌𝑍 ) → 𝑌𝑃 )
54 7 ad2antrr ( ( ( 𝜑𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ) ∧ 𝑌𝑍 ) → 𝑍𝑃 )
55 simpr ( ( ( 𝜑𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ) ∧ 𝑌𝑍 ) → 𝑌𝑍 )
56 1 2 3 52 53 54 55 tgelrnln ( ( ( 𝜑𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ) ∧ 𝑌𝑍 ) → ( 𝑌 𝐿 𝑍 ) ∈ ran 𝐿 )
57 46 51 47 56 syl21anc ( ( ( 𝜑 ∧ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ) ∧ 𝑌𝑍 ) → ( 𝑌 𝐿 𝑍 ) ∈ ran 𝐿 )
58 1 2 3 52 53 54 55 tglinerflx1 ( ( ( 𝜑𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ) ∧ 𝑌𝑍 ) → 𝑌 ∈ ( 𝑌 𝐿 𝑍 ) )
59 46 51 47 58 syl21anc ( ( ( 𝜑 ∧ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ) ∧ 𝑌𝑍 ) → 𝑌 ∈ ( 𝑌 𝐿 𝑍 ) )
60 1 2 3 52 53 54 55 tglinerflx2 ( ( ( 𝜑𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ) ∧ 𝑌𝑍 ) → 𝑍 ∈ ( 𝑌 𝐿 𝑍 ) )
61 46 51 47 60 syl21anc ( ( ( 𝜑 ∧ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ) ∧ 𝑌𝑍 ) → 𝑍 ∈ ( 𝑌 𝐿 𝑍 ) )
62 eleq2 ( 𝑎 = ( 𝑌 𝐿 𝑍 ) → ( 𝑋𝑎𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ) )
63 eleq2 ( 𝑎 = ( 𝑌 𝐿 𝑍 ) → ( 𝑌𝑎𝑌 ∈ ( 𝑌 𝐿 𝑍 ) ) )
64 eleq2 ( 𝑎 = ( 𝑌 𝐿 𝑍 ) → ( 𝑍𝑎𝑍 ∈ ( 𝑌 𝐿 𝑍 ) ) )
65 62 63 64 3anbi123d ( 𝑎 = ( 𝑌 𝐿 𝑍 ) → ( ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ↔ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∧ 𝑌 ∈ ( 𝑌 𝐿 𝑍 ) ∧ 𝑍 ∈ ( 𝑌 𝐿 𝑍 ) ) ) )
66 65 rspcev ( ( ( 𝑌 𝐿 𝑍 ) ∈ ran 𝐿 ∧ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∧ 𝑌 ∈ ( 𝑌 𝐿 𝑍 ) ∧ 𝑍 ∈ ( 𝑌 𝐿 𝑍 ) ) ) → ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) )
67 57 51 59 61 66 syl13anc ( ( ( 𝜑 ∧ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ) ∧ 𝑌𝑍 ) → ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) )
68 45 67 pm2.61dane ( ( 𝜑 ∧ ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ) → ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) )
69 df-ne ( 𝑌𝑍 ↔ ¬ 𝑌 = 𝑍 )
70 simplr1 ( ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) ∧ 𝑌𝑍 ) → 𝑋𝑎 )
71 4 ad3antrrr ( ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) ∧ 𝑌𝑍 ) → 𝐺 ∈ TarskiG )
72 6 ad3antrrr ( ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) ∧ 𝑌𝑍 ) → 𝑌𝑃 )
73 7 ad3antrrr ( ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) ∧ 𝑌𝑍 ) → 𝑍𝑃 )
74 simpr ( ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) ∧ 𝑌𝑍 ) → 𝑌𝑍 )
75 simpllr ( ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) ∧ 𝑌𝑍 ) → 𝑎 ∈ ran 𝐿 )
76 simplr2 ( ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) ∧ 𝑌𝑍 ) → 𝑌𝑎 )
77 simplr3 ( ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) ∧ 𝑌𝑍 ) → 𝑍𝑎 )
78 1 2 3 71 72 73 74 74 75 76 77 tglinethru ( ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) ∧ 𝑌𝑍 ) → 𝑎 = ( 𝑌 𝐿 𝑍 ) )
79 70 78 eleqtrd ( ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) ∧ 𝑌𝑍 ) → 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) )
80 79 ex ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) → ( 𝑌𝑍𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ) )
81 69 80 syl5bir ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) → ( ¬ 𝑌 = 𝑍𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ) )
82 81 orrd ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) → ( 𝑌 = 𝑍𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ) )
83 82 orcomd ( ( ( 𝜑𝑎 ∈ ran 𝐿 ) ∧ ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) → ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) )
84 83 r19.29an ( ( 𝜑 ∧ ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) → ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) )
85 68 84 impbida ( 𝜑 → ( ( 𝑋 ∈ ( 𝑌 𝐿 𝑍 ) ∨ 𝑌 = 𝑍 ) ↔ ∃ 𝑎 ∈ ran 𝐿 ( 𝑋𝑎𝑌𝑎𝑍𝑎 ) ) )