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

Theorem lnperpex 26583
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 730 . . . . . . 7 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐺 ∈ TarskiG)
76adantr 483 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐺 ∈ TarskiG)
8 simprl 769 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝑃)
9 lmiopp.d . . . . . . . . . 10 (𝜑𝐷 ∈ ran 𝐿)
10 lnperpex.a . . . . . . . . . 10 (𝜑𝐴𝐷)
111, 4, 3, 5, 9, 10tglnpt 26329 . . . . . . . . 9 (𝜑𝐴𝑃)
1211ad2antrr 724 . . . . . . . 8 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐴𝑃)
1312ad3antrrr 728 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐴𝑃)
14 simprrl 779 . . . . . . . . . 10 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐴𝐿𝑝)(⟂G‘𝐺)𝐷)
154, 7, 14perpln1 26490 . . . . . . . . 9 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐴𝐿𝑝) ∈ ran 𝐿)
161, 3, 4, 7, 13, 8, 15tglnne 26408 . . . . . . . 8 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐴𝑝)
1716necomd 3071 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝐴)
181, 3, 4, 7, 8, 13, 17tgelrnln 26410 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴) ∈ ran 𝐿)
199ad4antr 730 . . . . . . 7 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐷 ∈ ran 𝐿)
2019adantr 483 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐷 ∈ ran 𝐿)
211, 3, 4, 7, 8, 13, 17tglinecom 26415 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴) = (𝐴𝐿𝑝))
2221, 14eqbrtrd 5080 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴)(⟂G‘𝐺)𝐷)
231, 2, 3, 4, 7, 18, 20, 22perpcom 26493 . . . . 5 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐷(⟂G‘𝐺)(𝑝𝐿𝐴))
24 simplr 767 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑄𝑂𝑐)
25 lmiopp.o . . . . . . 7 𝑂 = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃𝐷) ∧ 𝑏 ∈ (𝑃𝐷)) ∧ ∃𝑡𝐷 𝑡 ∈ (𝑎𝐼𝑏))}
26 lnperpex.q . . . . . . . . 9 (𝜑𝑄𝑃)
2726ad4antr 730 . . . . . . . 8 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑄𝑃)
2827adantr 483 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑄𝑃)
29 simplr 767 . . . . . . . 8 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑐𝑃)
3029adantr 483 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑐𝑃)
31 simprrr 780 . . . . . . . 8 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑐𝑂𝑝)
321, 2, 3, 25, 4, 20, 7, 30, 8, 31oppcom 26524 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝑂𝑐)
331, 3, 4, 25, 7, 20, 8, 28, 30, 32lnopp2hpgb 26543 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑄𝑂𝑐𝑝((hpG‘𝐺)‘𝐷)𝑄))
3424, 33mpbid 234 . . . . 5 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝((hpG‘𝐺)‘𝐷)𝑄)
3523, 34jca 514 . . . 4 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
36 eqid 2821 . . . . 5 (hlG‘𝐺) = (hlG‘𝐺)
3710ad4antr 730 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐴𝐷)
38 simpr 487 . . . . . 6 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑄𝑂𝑐)
391, 2, 3, 25, 4, 19, 6, 27, 29, 38oppne2 26522 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ¬ 𝑐𝐷)
40 lmiopp.h . . . . . 6 (𝜑𝐺DimTarskiG≥2)
4140ad4antr 730 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐺DimTarskiG≥2)
421, 2, 3, 25, 4, 19, 6, 36, 37, 29, 39, 41oppperpex 26533 . . . 4 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ∃𝑝𝑃 ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))
4335, 42reximddv 3275 . . 3 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
44 lnperpex.1 . . . . 5 (𝜑 → ¬ 𝑄𝐷)
451, 3, 4, 5, 9, 26, 25, 44hpgerlem 26545 . . . 4 (𝜑 → ∃𝑐𝑃 𝑄𝑂𝑐)
4645ad2antrr 724 . . 3 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → ∃𝑐𝑃 𝑄𝑂𝑐)
4743, 46r19.29a 3289 . 2 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
481, 3, 4, 5, 9, 10tglnpt2 26421 . 2 (𝜑 → ∃𝑑𝐷 𝐴𝑑)
4947, 48r19.29a 3289 1 (𝜑 → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 398   = wceq 1533  wcel 2110  wne 3016  wrex 3139  cdif 3932   class class class wbr 5058  {copab 5120  ran crn 5550  cfv 6349  (class class class)co 7150  2c2 11686  Basecbs 16477  distcds 16568  TarskiGcstrkg 26210  DimTarskiGcstrkgld 26214  Itvcitv 26216  LineGclng 26217  hlGchlg 26380  ⟂Gcperpg 26475  hpGchpg 26537
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1792  ax-4 1806  ax-5 1907  ax-6 1966  ax-7 2011  ax-8 2112  ax-9 2120  ax-10 2141  ax-11 2157  ax-12 2173  ax-ext 2793  ax-rep 5182  ax-sep 5195  ax-nul 5202  ax-pow 5258  ax-pr 5321  ax-un 7455  ax-cnex 10587  ax-resscn 10588  ax-1cn 10589  ax-icn 10590  ax-addcl 10591  ax-addrcl 10592  ax-mulcl 10593  ax-mulrcl 10594  ax-mulcom 10595  ax-addass 10596  ax-mulass 10597  ax-distr 10598  ax-i2m1 10599  ax-1ne0 10600  ax-1rid 10601  ax-rnegex 10602  ax-rrecex 10603  ax-cnre 10604  ax-pre-lttri 10605  ax-pre-lttrn 10606  ax-pre-ltadd 10607  ax-pre-mulgt0 10608
This theorem depends on definitions:  df-bi 209  df-an 399  df-or 844  df-3or 1084  df-3an 1085  df-tru 1536  df-fal 1546  df-ex 1777  df-nf 1781  df-sb 2066  df-mo 2618  df-eu 2650  df-clab 2800  df-cleq 2814  df-clel 2893  df-nfc 2963  df-ne 3017  df-nel 3124  df-ral 3143  df-rex 3144  df-reu 3145  df-rmo 3146  df-rab 3147  df-v 3496  df-sbc 3772  df-csb 3883  df-dif 3938  df-un 3940  df-in 3942  df-ss 3951  df-pss 3953  df-nul 4291  df-if 4467  df-pw 4540  df-sn 4561  df-pr 4563  df-tp 4565  df-op 4567  df-uni 4832  df-int 4869  df-iun 4913  df-br 5059  df-opab 5121  df-mpt 5139  df-tr 5165  df-id 5454  df-eprel 5459  df-po 5468  df-so 5469  df-fr 5508  df-we 5510  df-xp 5555  df-rel 5556  df-cnv 5557  df-co 5558  df-dm 5559  df-rn 5560  df-res 5561  df-ima 5562  df-pred 6142  df-ord 6188  df-on 6189  df-lim 6190  df-suc 6191  df-iota 6308  df-fun 6351  df-fn 6352  df-f 6353  df-f1 6354  df-fo 6355  df-f1o 6356  df-fv 6357  df-riota 7108  df-ov 7153  df-oprab 7154  df-mpo 7155  df-om 7575  df-1st 7683  df-2nd 7684  df-wrecs 7941  df-recs 8002  df-rdg 8040  df-1o 8096  df-oadd 8100  df-er 8283  df-map 8402  df-pm 8403  df-en 8504  df-dom 8505  df-sdom 8506  df-fin 8507  df-dju 9324  df-card 9362  df-pnf 10671  df-mnf 10672  df-xr 10673  df-ltxr 10674  df-le 10675  df-sub 10866  df-neg 10867  df-nn 11633  df-2 11694  df-3 11695  df-n0 11892  df-xnn0 11962  df-z 11976  df-uz 12238  df-fz 12887  df-fzo 13028  df-hash 13685  df-word 13856  df-concat 13917  df-s1 13944  df-s2 14204  df-s3 14205  df-trkgc 26228  df-trkgb 26229  df-trkgcb 26230  df-trkgld 26232  df-trkg 26233  df-cgrg 26291  df-leg 26363  df-hlg 26381  df-mir 26433  df-rag 26474  df-perpg 26476  df-hpg 26538
This theorem is referenced by:  trgcopy  26584
  Copyright terms: Public domain W3C validator