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

Theorem lnperpex 26595
Description: Existence of a perpendicular to a line 𝐿 at a given point 𝐴. Theorem 10.15 of [Schwabhauser] p. 92. (Contributed by Thierry Arnoux, 2-Aug-2020.)
Hypotheses
Ref Expression
lmiopp.p 𝑃 = (Base‘𝐺)
lmiopp.m = (dist‘𝐺)
lmiopp.i 𝐼 = (Itv‘𝐺)
lmiopp.l 𝐿 = (LineG‘𝐺)
lmiopp.g (𝜑𝐺 ∈ TarskiG)
lmiopp.h (𝜑𝐺DimTarskiG≥2)
lmiopp.d (𝜑𝐷 ∈ ran 𝐿)
lmiopp.o 𝑂 = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃𝐷) ∧ 𝑏 ∈ (𝑃𝐷)) ∧ ∃𝑡𝐷 𝑡 ∈ (𝑎𝐼𝑏))}
lnperpex.a (𝜑𝐴𝐷)
lnperpex.q (𝜑𝑄𝑃)
lnperpex.1 (𝜑 → ¬ 𝑄𝐷)
Assertion
Ref Expression
lnperpex (𝜑 → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
Distinct variable groups:   ,𝑎,𝑏,𝑝,𝑡   𝐴,𝑎,𝑏,𝑝,𝑡   𝐷,𝑎,𝑏,𝑝,𝑡   𝐺,𝑎,𝑏,𝑝,𝑡   𝐼,𝑎,𝑏,𝑝,𝑡   𝐿,𝑎,𝑏,𝑝,𝑡   𝑂,𝑎,𝑏,𝑝,𝑡   𝑃,𝑎,𝑏,𝑝,𝑡   𝑄,𝑎,𝑏,𝑝,𝑡   𝜑,𝑎,𝑏,𝑝,𝑡

Proof of Theorem lnperpex
Dummy variables 𝑐 𝑑 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 lmiopp.p . . . . . 6 𝑃 = (Base‘𝐺)
2 lmiopp.m . . . . . 6 = (dist‘𝐺)
3 lmiopp.i . . . . . 6 𝐼 = (Itv‘𝐺)
4 lmiopp.l . . . . . 6 𝐿 = (LineG‘𝐺)
5 lmiopp.g . . . . . . . 8 (𝜑𝐺 ∈ TarskiG)
65ad4antr 731 . . . . . . 7 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐺 ∈ TarskiG)
76adantr 484 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐺 ∈ TarskiG)
8 simprl 770 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝑃)
9 lmiopp.d . . . . . . . . . 10 (𝜑𝐷 ∈ ran 𝐿)
10 lnperpex.a . . . . . . . . . 10 (𝜑𝐴𝐷)
111, 4, 3, 5, 9, 10tglnpt 26341 . . . . . . . . 9 (𝜑𝐴𝑃)
1211ad2antrr 725 . . . . . . . 8 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐴𝑃)
1312ad3antrrr 729 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐴𝑃)
14 simprrl 780 . . . . . . . . . 10 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐴𝐿𝑝)(⟂G‘𝐺)𝐷)
154, 7, 14perpln1 26502 . . . . . . . . 9 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐴𝐿𝑝) ∈ ran 𝐿)
161, 3, 4, 7, 13, 8, 15tglnne 26420 . . . . . . . 8 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐴𝑝)
1716necomd 3066 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝐴)
181, 3, 4, 7, 8, 13, 17tgelrnln 26422 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴) ∈ ran 𝐿)
199ad4antr 731 . . . . . . 7 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐷 ∈ ran 𝐿)
2019adantr 484 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐷 ∈ ran 𝐿)
211, 3, 4, 7, 8, 13, 17tglinecom 26427 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴) = (𝐴𝐿𝑝))
2221, 14eqbrtrd 5064 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴)(⟂G‘𝐺)𝐷)
231, 2, 3, 4, 7, 18, 20, 22perpcom 26505 . . . . 5 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐷(⟂G‘𝐺)(𝑝𝐿𝐴))
24 simplr 768 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑄𝑂𝑐)
25 lmiopp.o . . . . . . 7 𝑂 = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃𝐷) ∧ 𝑏 ∈ (𝑃𝐷)) ∧ ∃𝑡𝐷 𝑡 ∈ (𝑎𝐼𝑏))}
26 lnperpex.q . . . . . . . . 9 (𝜑𝑄𝑃)
2726ad4antr 731 . . . . . . . 8 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑄𝑃)
2827adantr 484 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑄𝑃)
29 simplr 768 . . . . . . . 8 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑐𝑃)
3029adantr 484 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑐𝑃)
31 simprrr 781 . . . . . . . 8 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑐𝑂𝑝)
321, 2, 3, 25, 4, 20, 7, 30, 8, 31oppcom 26536 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝑂𝑐)
331, 3, 4, 25, 7, 20, 8, 28, 30, 32lnopp2hpgb 26555 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑄𝑂𝑐𝑝((hpG‘𝐺)‘𝐷)𝑄))
3424, 33mpbid 235 . . . . 5 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝((hpG‘𝐺)‘𝐷)𝑄)
3523, 34jca 515 . . . 4 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
36 eqid 2822 . . . . 5 (hlG‘𝐺) = (hlG‘𝐺)
3710ad4antr 731 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐴𝐷)
38 simpr 488 . . . . . 6 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑄𝑂𝑐)
391, 2, 3, 25, 4, 19, 6, 27, 29, 38oppne2 26534 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ¬ 𝑐𝐷)
40 lmiopp.h . . . . . 6 (𝜑𝐺DimTarskiG≥2)
4140ad4antr 731 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐺DimTarskiG≥2)
421, 2, 3, 25, 4, 19, 6, 36, 37, 29, 39, 41oppperpex 26545 . . . 4 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ∃𝑝𝑃 ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))
4335, 42reximddv 3261 . . 3 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
44 lnperpex.1 . . . . 5 (𝜑 → ¬ 𝑄𝐷)
451, 3, 4, 5, 9, 26, 25, 44hpgerlem 26557 . . . 4 (𝜑 → ∃𝑐𝑃 𝑄𝑂𝑐)
4645ad2antrr 725 . . 3 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → ∃𝑐𝑃 𝑄𝑂𝑐)
4743, 46r19.29a 3275 . 2 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
481, 3, 4, 5, 9, 10tglnpt2 26433 . 2 (𝜑 → ∃𝑑𝐷 𝐴𝑑)
4947, 48r19.29a 3275 1 (𝜑 → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 399   = wceq 1538  wcel 2114  wne 3011  wrex 3131  cdif 3905   class class class wbr 5042  {copab 5104  ran crn 5533  cfv 6334  (class class class)co 7140  2c2 11680  Basecbs 16474  distcds 16565  TarskiGcstrkg 26222  DimTarskiGcstrkgld 26226  Itvcitv 26228  LineGclng 26229  hlGchlg 26392  ⟂Gcperpg 26487  hpGchpg 26549
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2116  ax-9 2124  ax-10 2145  ax-11 2161  ax-12 2178  ax-ext 2794  ax-rep 5166  ax-sep 5179  ax-nul 5186  ax-pow 5243  ax-pr 5307  ax-un 7446  ax-cnex 10582  ax-resscn 10583  ax-1cn 10584  ax-icn 10585  ax-addcl 10586  ax-addrcl 10587  ax-mulcl 10588  ax-mulrcl 10589  ax-mulcom 10590  ax-addass 10591  ax-mulass 10592  ax-distr 10593  ax-i2m1 10594  ax-1ne0 10595  ax-1rid 10596  ax-rnegex 10597  ax-rrecex 10598  ax-cnre 10599  ax-pre-lttri 10600  ax-pre-lttrn 10601  ax-pre-ltadd 10602  ax-pre-mulgt0 10603
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-fal 1551  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2622  df-eu 2653  df-clab 2801  df-cleq 2815  df-clel 2894  df-nfc 2962  df-ne 3012  df-nel 3116  df-ral 3135  df-rex 3136  df-reu 3137  df-rmo 3138  df-rab 3139  df-v 3471  df-sbc 3748  df-csb 3856  df-dif 3911  df-un 3913  df-in 3915  df-ss 3925  df-pss 3927  df-nul 4266  df-if 4440  df-pw 4513  df-sn 4540  df-pr 4542  df-tp 4544  df-op 4546  df-uni 4814  df-int 4852  df-iun 4896  df-br 5043  df-opab 5105  df-mpt 5123  df-tr 5149  df-id 5437  df-eprel 5442  df-po 5451  df-so 5452  df-fr 5491  df-we 5493  df-xp 5538  df-rel 5539  df-cnv 5540  df-co 5541  df-dm 5542  df-rn 5543  df-res 5544  df-ima 5545  df-pred 6126  df-ord 6172  df-on 6173  df-lim 6174  df-suc 6175  df-iota 6293  df-fun 6336  df-fn 6337  df-f 6338  df-f1 6339  df-fo 6340  df-f1o 6341  df-fv 6342  df-riota 7098  df-ov 7143  df-oprab 7144  df-mpo 7145  df-om 7566  df-1st 7675  df-2nd 7676  df-wrecs 7934  df-recs 7995  df-rdg 8033  df-1o 8089  df-oadd 8093  df-er 8276  df-map 8395  df-pm 8396  df-en 8497  df-dom 8498  df-sdom 8499  df-fin 8500  df-dju 9318  df-card 9356  df-pnf 10666  df-mnf 10667  df-xr 10668  df-ltxr 10669  df-le 10670  df-sub 10861  df-neg 10862  df-nn 11626  df-2 11688  df-3 11689  df-n0 11886  df-xnn0 11956  df-z 11970  df-uz 12232  df-fz 12886  df-fzo 13029  df-hash 13687  df-word 13858  df-concat 13914  df-s1 13941  df-s2 14201  df-s3 14202  df-trkgc 26240  df-trkgb 26241  df-trkgcb 26242  df-trkgld 26244  df-trkg 26245  df-cgrg 26303  df-leg 26375  df-hlg 26393  df-mir 26445  df-rag 26486  df-perpg 26488  df-hpg 26550
This theorem is referenced by:  trgcopy  26596
  Copyright terms: Public domain W3C validator