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

Theorem lnperpex 27919
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 481 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐺 ∈ TarskiG)
8 simprl 769 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝑃)
9 lmiopp.d . . . . . . . . . 10 (𝜑𝐷 ∈ ran 𝐿)
10 lnperpex.a . . . . . . . . . 10 (𝜑𝐴𝐷)
111, 4, 3, 5, 9, 10tglnpt 27665 . . . . . . . . 9 (𝜑𝐴𝑃)
1211ad2antrr 724 . . . . . . . 8 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐴𝑃)
1312ad3antrrr 728 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐴𝑃)
14 simprrl 779 . . . . . . . . . 10 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐴𝐿𝑝)(⟂G‘𝐺)𝐷)
154, 7, 14perpln1 27826 . . . . . . . . 9 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐴𝐿𝑝) ∈ ran 𝐿)
161, 3, 4, 7, 13, 8, 15tglnne 27744 . . . . . . . 8 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐴𝑝)
1716necomd 2995 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝐴)
181, 3, 4, 7, 8, 13, 17tgelrnln 27746 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴) ∈ ran 𝐿)
199ad4antr 730 . . . . . . 7 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐷 ∈ ran 𝐿)
2019adantr 481 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐷 ∈ ran 𝐿)
211, 3, 4, 7, 8, 13, 17tglinecom 27751 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴) = (𝐴𝐿𝑝))
2221, 14eqbrtrd 5163 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴)(⟂G‘𝐺)𝐷)
231, 2, 3, 4, 7, 18, 20, 22perpcom 27829 . . . . 5 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐷(⟂G‘𝐺)(𝑝𝐿𝐴))
24 simplr 767 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑄𝑂𝑐)
25 lmiopp.o . . . . . . 7 𝑂 = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃𝐷) ∧ 𝑏 ∈ (𝑃𝐷)) ∧ ∃𝑡𝐷 𝑡 ∈ (𝑎𝐼𝑏))}
26 lnperpex.q . . . . . . . . 9 (𝜑𝑄𝑃)
2726ad4antr 730 . . . . . . . 8 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑄𝑃)
2827adantr 481 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑄𝑃)
29 simplr 767 . . . . . . . 8 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑐𝑃)
3029adantr 481 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑐𝑃)
31 simprrr 780 . . . . . . . 8 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑐𝑂𝑝)
321, 2, 3, 25, 4, 20, 7, 30, 8, 31oppcom 27860 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝑂𝑐)
331, 3, 4, 25, 7, 20, 8, 28, 30, 32lnopp2hpgb 27879 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑄𝑂𝑐𝑝((hpG‘𝐺)‘𝐷)𝑄))
3424, 33mpbid 231 . . . . 5 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝((hpG‘𝐺)‘𝐷)𝑄)
3523, 34jca 512 . . . 4 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
36 eqid 2731 . . . . 5 (hlG‘𝐺) = (hlG‘𝐺)
3710ad4antr 730 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐴𝐷)
38 simpr 485 . . . . . 6 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑄𝑂𝑐)
391, 2, 3, 25, 4, 19, 6, 27, 29, 38oppne2 27858 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ¬ 𝑐𝐷)
40 lmiopp.h . . . . . 6 (𝜑𝐺DimTarskiG≥2)
4140ad4antr 730 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐺DimTarskiG≥2)
421, 2, 3, 25, 4, 19, 6, 36, 37, 29, 39, 41oppperpex 27869 . . . 4 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ∃𝑝𝑃 ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))
4335, 42reximddv 3170 . . 3 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
44 lnperpex.1 . . . . 5 (𝜑 → ¬ 𝑄𝐷)
451, 3, 4, 5, 9, 26, 25, 44hpgerlem 27881 . . . 4 (𝜑 → ∃𝑐𝑃 𝑄𝑂𝑐)
4645ad2antrr 724 . . 3 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → ∃𝑐𝑃 𝑄𝑂𝑐)
4743, 46r19.29a 3161 . 2 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
481, 3, 4, 5, 9, 10tglnpt2 27757 . 2 (𝜑 → ∃𝑑𝐷 𝐴𝑑)
4947, 48r19.29a 3161 1 (𝜑 → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 396   = wceq 1541  wcel 2106  wne 2939  wrex 3069  cdif 3941   class class class wbr 5141  {copab 5203  ran crn 5670  cfv 6532  (class class class)co 7393  2c2 12249  Basecbs 17126  distcds 17188  TarskiGcstrkg 27543  DimTarskiGcstrkgld 27547  Itvcitv 27549  LineGclng 27550  hlGchlg 27716  ⟂Gcperpg 27811  hpGchpg 27873
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 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2702  ax-rep 5278  ax-sep 5292  ax-nul 5299  ax-pow 5356  ax-pr 5420  ax-un 7708  ax-cnex 11148  ax-resscn 11149  ax-1cn 11150  ax-icn 11151  ax-addcl 11152  ax-addrcl 11153  ax-mulcl 11154  ax-mulrcl 11155  ax-mulcom 11156  ax-addass 11157  ax-mulass 11158  ax-distr 11159  ax-i2m1 11160  ax-1ne0 11161  ax-1rid 11162  ax-rnegex 11163  ax-rrecex 11164  ax-cnre 11165  ax-pre-lttri 11166  ax-pre-lttrn 11167  ax-pre-ltadd 11168  ax-pre-mulgt0 11169
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 846  df-3or 1088  df-3an 1089  df-tru 1544  df-fal 1554  df-ex 1782  df-nf 1786  df-sb 2068  df-mo 2533  df-eu 2562  df-clab 2709  df-cleq 2723  df-clel 2809  df-nfc 2884  df-ne 2940  df-nel 3046  df-ral 3061  df-rex 3070  df-rmo 3375  df-reu 3376  df-rab 3432  df-v 3475  df-sbc 3774  df-csb 3890  df-dif 3947  df-un 3949  df-in 3951  df-ss 3961  df-pss 3963  df-nul 4319  df-if 4523  df-pw 4598  df-sn 4623  df-pr 4625  df-tp 4627  df-op 4629  df-uni 4902  df-int 4944  df-iun 4992  df-br 5142  df-opab 5204  df-mpt 5225  df-tr 5259  df-id 5567  df-eprel 5573  df-po 5581  df-so 5582  df-fr 5624  df-we 5626  df-xp 5675  df-rel 5676  df-cnv 5677  df-co 5678  df-dm 5679  df-rn 5680  df-res 5681  df-ima 5682  df-pred 6289  df-ord 6356  df-on 6357  df-lim 6358  df-suc 6359  df-iota 6484  df-fun 6534  df-fn 6535  df-f 6536  df-f1 6537  df-fo 6538  df-f1o 6539  df-fv 6540  df-riota 7349  df-ov 7396  df-oprab 7397  df-mpo 7398  df-om 7839  df-1st 7957  df-2nd 7958  df-frecs 8248  df-wrecs 8279  df-recs 8353  df-rdg 8392  df-1o 8448  df-oadd 8452  df-er 8686  df-map 8805  df-pm 8806  df-en 8923  df-dom 8924  df-sdom 8925  df-fin 8926  df-dju 9878  df-card 9916  df-pnf 11232  df-mnf 11233  df-xr 11234  df-ltxr 11235  df-le 11236  df-sub 11428  df-neg 11429  df-nn 12195  df-2 12257  df-3 12258  df-n0 12455  df-xnn0 12527  df-z 12541  df-uz 12805  df-fz 13467  df-fzo 13610  df-hash 14273  df-word 14447  df-concat 14503  df-s1 14528  df-s2 14781  df-s3 14782  df-trkgc 27564  df-trkgb 27565  df-trkgcb 27566  df-trkgld 27568  df-trkg 27569  df-cgrg 27627  df-leg 27699  df-hlg 27717  df-mir 27769  df-rag 27810  df-perpg 27812  df-hpg 27874
This theorem is referenced by:  trgcopy  27920
  Copyright terms: Public domain W3C validator