MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  cgrarag Structured version   Visualization version   GIF version

Theorem cgrarag 29277
Description: Any angle ⟨“𝐴𝐵𝐶”⟩ congruent with a right angle ⟨“𝑋𝑌𝑍”⟩ is a right angle. Theorem 11.17 of [Schwabhauser] p. 98. (Contributed by Thierry Arnoux, 13-Jul-2026.)
Hypotheses
Ref Expression
ragcgra.p 𝑃 = (Base‘𝐺)
ragcgra.g (𝜑𝐺 ∈ TarskiG)
ragcgra.x (𝜑𝑋𝑃)
ragcgra.y (𝜑𝑌𝑃)
ragcgra.z (𝜑𝑍𝑃)
ragcgra.a (𝜑𝐴𝑃)
ragcgra.b (𝜑𝐵𝑃)
ragcgra.c (𝜑𝐶𝑃)
ragcgra.1 (𝜑 → ⟨“𝑋𝑌𝑍”⟩ ∈ (∟G‘𝐺))
cgrarag.1 (𝜑 → ⟨“𝑋𝑌𝑍”⟩(cgrA‘𝐺)⟨“𝐴𝐵𝐶”⟩)
Assertion
Ref Expression
cgrarag (𝜑 → ⟨“𝐴𝐵𝐶”⟩ ∈ (∟G‘𝐺))

Proof of Theorem cgrarag
Dummy variables 𝑎 𝑐 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 ragcgra.p . . . 4 𝑃 = (Base‘𝐺)
2 eqid 2760 . . . 4 (dist‘𝐺) = (dist‘𝐺)
3 eqid 2760 . . . 4 (Itv‘𝐺) = (Itv‘𝐺)
4 eqid 2760 . . . 4 (LineG‘𝐺) = (LineG‘𝐺)
5 eqid 2760 . . . 4 (pInvG‘𝐺) = (pInvG‘𝐺)
6 ragcgra.g . . . . 5 (𝜑𝐺 ∈ TarskiG)
76ad5antr 747 . . . 4 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝐺 ∈ TarskiG)
8 simp-5r 798 . . . 4 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝑎𝑃)
9 ragcgra.b . . . . 5 (𝜑𝐵𝑃)
109ad5antr 747 . . . 4 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝐵𝑃)
11 ragcgra.c . . . . 5 (𝜑𝐶𝑃)
1211ad5antr 747 . . . 4 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝐶𝑃)
13 ragcgra.a . . . . 5 (𝜑𝐴𝑃)
1413ad5antr 747 . . . 4 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝐴𝑃)
15 simp-4r 796 . . . . . 6 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝑐𝑃)
16 ragcgra.x . . . . . . . . 9 (𝜑𝑋𝑃)
1716ad5antr 747 . . . . . . . 8 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝑋𝑃)
18 ragcgra.y . . . . . . . . 9 (𝜑𝑌𝑃)
1918ad5antr 747 . . . . . . . 8 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝑌𝑃)
20 ragcgra.z . . . . . . . . 9 (𝜑𝑍𝑃)
2120ad5antr 747 . . . . . . . 8 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝑍𝑃)
22 eqid 2760 . . . . . . . 8 (cgrG‘𝐺) = (cgrG‘𝐺)
23 ragcgra.1 . . . . . . . . 9 (𝜑 → ⟨“𝑋𝑌𝑍”⟩ ∈ (∟G‘𝐺))
2423ad5antr 747 . . . . . . . 8 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → ⟨“𝑋𝑌𝑍”⟩ ∈ (∟G‘𝐺))
25 simpllr 788 . . . . . . . 8 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩)
261, 2, 3, 4, 5, 7, 17, 19, 21, 22, 8, 10, 15, 24, 25ragcgr 29115 . . . . . . 7 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → ⟨“𝑎𝐵𝑐”⟩ ∈ (∟G‘𝐺))
271, 2, 3, 4, 5, 7, 8, 10, 15, 26ragcom 29106 . . . . . 6 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → ⟨“𝑐𝐵𝑎”⟩ ∈ (∟G‘𝐺))
28 eqid 2760 . . . . . . 7 (hlG‘𝐺) = (hlG‘𝐺)
29 simpr 490 . . . . . . 7 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝑐((hlG‘𝐺)‘𝐵)𝐶)
301, 3, 28, 15, 12, 10, 7, 29hlne1 29004 . . . . . 6 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝑐𝐵)
311, 3, 28, 15, 12, 10, 7, 29hlcomd 29003 . . . . . . . . 9 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝐶((hlG‘𝐺)‘𝐵)𝑐)
321, 3, 28, 12, 15, 10, 7, 4, 31hlln 29006 . . . . . . . 8 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝐶 ∈ (𝑐(LineG‘𝐺)𝐵))
3332orcd 887 . . . . . . 7 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → (𝐶 ∈ (𝑐(LineG‘𝐺)𝐵) ∨ 𝑐 = 𝐵))
341, 4, 3, 7, 15, 10, 12, 33colrot1 28955 . . . . . 6 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → (𝑐 ∈ (𝐵(LineG‘𝐺)𝐶) ∨ 𝐵 = 𝐶))
351, 2, 3, 4, 5, 7, 15, 10, 8, 12, 27, 30, 34ragcol 29107 . . . . 5 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → ⟨“𝐶𝐵𝑎”⟩ ∈ (∟G‘𝐺))
361, 2, 3, 4, 5, 7, 12, 10, 8, 35ragcom 29106 . . . 4 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → ⟨“𝑎𝐵𝐶”⟩ ∈ (∟G‘𝐺))
37 simplr 781 . . . . 5 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝑎((hlG‘𝐺)‘𝐵)𝐴)
381, 3, 28, 8, 14, 10, 7, 37hlne1 29004 . . . 4 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝑎𝐵)
391, 3, 28, 8, 14, 10, 7, 37hlcomd 29003 . . . . . . 7 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝐴((hlG‘𝐺)‘𝐵)𝑎)
401, 3, 28, 14, 8, 10, 7, 4, 39hlln 29006 . . . . . 6 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → 𝐴 ∈ (𝑎(LineG‘𝐺)𝐵))
4140orcd 887 . . . . 5 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → (𝐴 ∈ (𝑎(LineG‘𝐺)𝐵) ∨ 𝑎 = 𝐵))
421, 4, 3, 7, 8, 10, 14, 41colrot1 28955 . . . 4 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → (𝑎 ∈ (𝐵(LineG‘𝐺)𝐴) ∨ 𝐵 = 𝐴))
431, 2, 3, 4, 5, 7, 8, 10, 12, 14, 36, 38, 42ragcol 29107 . . 3 ((((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ ⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩) ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴) ∧ 𝑐((hlG‘𝐺)‘𝐵)𝐶) → ⟨“𝐴𝐵𝐶”⟩ ∈ (∟G‘𝐺))
44433anasss 1380 . 2 ((((𝜑𝑎𝑃) ∧ 𝑐𝑃) ∧ (⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩ ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴𝑐((hlG‘𝐺)‘𝐵)𝐶)) → ⟨“𝐴𝐵𝐶”⟩ ∈ (∟G‘𝐺))
45 cgrarag.1 . . 3 (𝜑 → ⟨“𝑋𝑌𝑍”⟩(cgrA‘𝐺)⟨“𝐴𝐵𝐶”⟩)
461, 3, 28, 6, 16, 18, 20, 13, 9, 11iscgra 29249 . . 3 (𝜑 → (⟨“𝑋𝑌𝑍”⟩(cgrA‘𝐺)⟨“𝐴𝐵𝐶”⟩ ↔ ∃𝑎𝑃𝑐𝑃 (⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩ ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴𝑐((hlG‘𝐺)‘𝐵)𝐶)))
4745, 46mpbid 235 . 2 (𝜑 → ∃𝑎𝑃𝑐𝑃 (⟨“𝑋𝑌𝑍”⟩(cgrG‘𝐺)⟨“𝑎𝐵𝑐”⟩ ∧ 𝑎((hlG‘𝐺)‘𝐵)𝐴𝑐((hlG‘𝐺)‘𝐵)𝐶))
4844, 47r19.29vva 3222 1 (𝜑 → ⟨“𝐴𝐵𝐶”⟩ ∈ (∟G‘𝐺))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401  w3a 1103   = wceq 1570  wcel 2145  wrex 3086   class class class wbr 5102  cfv 6527  (class class class)co 7408  ⟨“cs3 14960  Basecbs 17348  distcds 17398  TarskiGcstrkg 28822  Itvcitv 28828  LineGclng 28829  cgrGccgrg 28906  hlGchlg 28996  pInvGcmir 29057  ∟Gcrag 29101  cgrAccgra 29247
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-rep 5231  ax-sep 5248  ax-nul 5259  ax-pow 5326  ax-pr 5390  ax-un 7734  ax-cnex 11227  ax-resscn 11228  ax-1cn 11229  ax-icn 11230  ax-addcl 11231  ax-addrcl 11232  ax-mulcl 11233  ax-mulrcl 11234  ax-mulcom 11235  ax-addass 11236  ax-mulass 11237  ax-distr 11238  ax-i2m1 11239  ax-1ne0 11240  ax-1rid 11241  ax-rnegex 11242  ax-rrecex 11243  ax-cnre 11244  ax-pre-lttri 11245  ax-pre-lttrn 11246  ax-pre-ltadd 11247  ax-pre-mulgt0 11248
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3847  df-dif 3901  df-un 3903  df-in 3905  df-ss 3915  df-pss 3918  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4584  df-pr 4586  df-tp 4588  df-op 4590  df-uni 4867  df-int 4907  df-iun 4952  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5542  df-eprel 5547  df-po 5555  df-so 5556  df-fr 5600  df-we 5602  df-xp 5653  df-rel 5654  df-cnv 5655  df-co 5656  df-dm 5657  df-rn 5658  df-res 5659  df-ima 5660  df-pred 6293  df-ord 6354  df-on 6355  df-lim 6356  df-suc 6357  df-iota 6483  df-fun 6529  df-fn 6530  df-f 6531  df-f1 6532  df-fo 6533  df-f1o 6534  df-fv 6535  df-riota 7365  df-ov 7411  df-oprab 7412  df-mpo 7413  df-om 7861  df-1st 7984  df-2nd 7985  df-frecs 8277  df-wrecs 8308  df-recs 8357  df-rdg 8396  df-1o 8454  df-oadd 8458  df-er 8695  df-map 8827  df-pm 8828  df-en 8952  df-dom 8953  df-sdom 8954  df-fin 8955  df-dju 9953  df-card 9991  df-pnf 11316  df-mnf 11317  df-xr 11318  df-ltxr 11319  df-le 11320  df-sub 11514  df-neg 11515  df-nn 12305  df-2 12374  df-3 12375  df-n0 12576  df-xnn0 12649  df-z 12663  df-uz 12935  df-fz 13609  df-fzo 13757  df-hash 14442  df-word 14626  df-concat 14683  df-s1 14710  df-s2 14966  df-s3 14967  df-trkgc 28843  df-trkgb 28844  df-trkgcb 28845  df-trkg 28848  df-cgrg 28907  df-hlg 28997  df-mir 29058  df-rag 29102  df-cgra 29248
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator