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

Theorem lnperpex 25495
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 . . . . . . . . 9 (𝜑𝐺 ∈ TarskiG)
65ad2antrr 758 . . . . . . . 8 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐺 ∈ TarskiG)
76ad2antrr 758 . . . . . . 7 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐺 ∈ TarskiG)
87adantr 480 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐺 ∈ TarskiG)
9 simprl 790 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝑃)
10 lmiopp.d . . . . . . . . . 10 (𝜑𝐷 ∈ ran 𝐿)
11 lnperpex.a . . . . . . . . . 10 (𝜑𝐴𝐷)
121, 4, 3, 5, 10, 11tglnpt 25244 . . . . . . . . 9 (𝜑𝐴𝑃)
1312ad2antrr 758 . . . . . . . 8 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐴𝑃)
1413ad3antrrr 762 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐴𝑃)
15 simprrl 800 . . . . . . . . . 10 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐴𝐿𝑝)(⟂G‘𝐺)𝐷)
164, 8, 15perpln1 25405 . . . . . . . . 9 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐴𝐿𝑝) ∈ ran 𝐿)
171, 3, 4, 8, 14, 9, 16tglnne 25323 . . . . . . . 8 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐴𝑝)
1817necomd 2837 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝐴)
191, 3, 4, 8, 9, 14, 18tgelrnln 25325 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴) ∈ ran 𝐿)
2010ad2antrr 758 . . . . . . . 8 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐷 ∈ ran 𝐿)
2120ad2antrr 758 . . . . . . 7 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐷 ∈ ran 𝐿)
2221adantr 480 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐷 ∈ ran 𝐿)
231, 3, 4, 8, 9, 14, 18tglinecom 25330 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴) = (𝐴𝐿𝑝))
2423, 15eqbrtrd 4605 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴)(⟂G‘𝐺)𝐷)
251, 2, 3, 4, 8, 19, 22, 24perpcom 25408 . . . . 5 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐷(⟂G‘𝐺)(𝑝𝐿𝐴))
26 simpr 476 . . . . . . 7 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑄𝑂𝑐)
2726adantr 480 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑄𝑂𝑐)
28 lmiopp.o . . . . . . 7 𝑂 = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃𝐷) ∧ 𝑏 ∈ (𝑃𝐷)) ∧ ∃𝑡𝐷 𝑡 ∈ (𝑎𝐼𝑏))}
29 lnperpex.q . . . . . . . . . 10 (𝜑𝑄𝑃)
3029ad2antrr 758 . . . . . . . . 9 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝑄𝑃)
3130ad2antrr 758 . . . . . . . 8 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑄𝑃)
3231adantr 480 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑄𝑃)
33 simplr 788 . . . . . . . 8 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑐𝑃)
3433adantr 480 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑐𝑃)
35 simprrr 801 . . . . . . . 8 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑐𝑂𝑝)
361, 2, 3, 28, 4, 22, 8, 34, 9, 35oppcom 25436 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝑂𝑐)
371, 3, 4, 28, 8, 22, 9, 32, 34, 36lnopp2hpgb 25455 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑄𝑂𝑐𝑝((hpG‘𝐺)‘𝐷)𝑄))
3827, 37mpbid 221 . . . . 5 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝((hpG‘𝐺)‘𝐷)𝑄)
3925, 38jca 553 . . . 4 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
40 eqid 2610 . . . . 5 (hlG‘𝐺) = (hlG‘𝐺)
4111ad2antrr 758 . . . . . 6 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐴𝐷)
4241ad2antrr 758 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐴𝐷)
431, 2, 3, 28, 4, 21, 7, 31, 33, 26oppne2 25434 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ¬ 𝑐𝐷)
44 lmiopp.h . . . . . . 7 (𝜑𝐺DimTarskiG≥2)
4544ad2antrr 758 . . . . . 6 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐺DimTarskiG≥2)
4645ad2antrr 758 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐺DimTarskiG≥2)
471, 2, 3, 28, 4, 21, 7, 40, 42, 33, 43, 46oppperpex 25445 . . . 4 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ∃𝑝𝑃 ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))
4839, 47reximddv 3001 . . 3 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
49 lnperpex.1 . . . . 5 (𝜑 → ¬ 𝑄𝐷)
501, 3, 4, 5, 10, 29, 28, 49hpgerlem 25457 . . . 4 (𝜑 → ∃𝑐𝑃 𝑄𝑂𝑐)
5150ad2antrr 758 . . 3 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → ∃𝑐𝑃 𝑄𝑂𝑐)
5248, 51r19.29a 3060 . 2 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
531, 3, 4, 5, 10, 11tglnpt2 25336 . 2 (𝜑 → ∃𝑑𝐷 𝐴𝑑)
5452, 53r19.29a 3060 1 (𝜑 → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 383   = wceq 1475  wcel 1977  wne 2780  wrex 2897  cdif 3537   class class class wbr 4583  {copab 4642  ran crn 5039  cfv 5804  (class class class)co 6549  2c2 10947  Basecbs 15695  distcds 15777  TarskiGcstrkg 25129  DimTarskiGcstrkgld 25133  Itvcitv 25135  LineGclng 25136  hlGchlg 25295  ⟂Gcperpg 25390  hpGchpg 25449
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-8 1979  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-rep 4699  ax-sep 4709  ax-nul 4717  ax-pow 4769  ax-pr 4833  ax-un 6847  ax-cnex 9871  ax-resscn 9872  ax-1cn 9873  ax-icn 9874  ax-addcl 9875  ax-addrcl 9876  ax-mulcl 9877  ax-mulrcl 9878  ax-mulcom 9879  ax-addass 9880  ax-mulass 9881  ax-distr 9882  ax-i2m1 9883  ax-1ne0 9884  ax-1rid 9885  ax-rnegex 9886  ax-rrecex 9887  ax-cnre 9888  ax-pre-lttri 9889  ax-pre-lttrn 9890  ax-pre-ltadd 9891  ax-pre-mulgt0 9892
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3or 1032  df-3an 1033  df-tru 1478  df-fal 1481  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ne 2782  df-nel 2783  df-ral 2901  df-rex 2902  df-reu 2903  df-rmo 2904  df-rab 2905  df-v 3175  df-sbc 3403  df-csb 3500  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-pss 3556  df-nul 3875  df-if 4037  df-pw 4110  df-sn 4126  df-pr 4128  df-tp 4130  df-op 4132  df-uni 4373  df-int 4411  df-iun 4457  df-br 4584  df-opab 4644  df-mpt 4645  df-tr 4681  df-eprel 4949  df-id 4953  df-po 4959  df-so 4960  df-fr 4997  df-we 4999  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-dm 5048  df-rn 5049  df-res 5050  df-ima 5051  df-pred 5597  df-ord 5643  df-on 5644  df-lim 5645  df-suc 5646  df-iota 5768  df-fun 5806  df-fn 5807  df-f 5808  df-f1 5809  df-fo 5810  df-f1o 5811  df-fv 5812  df-riota 6511  df-ov 6552  df-oprab 6553  df-mpt2 6554  df-om 6958  df-1st 7059  df-2nd 7060  df-wrecs 7294  df-recs 7355  df-rdg 7393  df-1o 7447  df-oadd 7451  df-er 7629  df-map 7746  df-pm 7747  df-en 7842  df-dom 7843  df-sdom 7844  df-fin 7845  df-card 8648  df-cda 8873  df-pnf 9955  df-mnf 9956  df-xr 9957  df-ltxr 9958  df-le 9959  df-sub 10147  df-neg 10148  df-nn 10898  df-2 10956  df-3 10957  df-n0 11170  df-xnn0 11241  df-z 11255  df-uz 11564  df-fz 12198  df-fzo 12335  df-hash 12980  df-word 13154  df-concat 13156  df-s1 13157  df-s2 13444  df-s3 13445  df-trkgc 25147  df-trkgb 25148  df-trkgcb 25149  df-trkgld 25151  df-trkg 25152  df-cgrg 25206  df-leg 25278  df-hlg 25296  df-mir 25348  df-rag 25389  df-perpg 25391  df-hpg 25450
This theorem is referenced by:  trgcopy  25496
  Copyright terms: Public domain W3C validator