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

Theorem lnperpex 25915
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 697 . . . . . . . 8 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐺 ∈ TarskiG)
76ad2antrr 697 . . . . . . 7 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐺 ∈ TarskiG)
87adantr 466 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐺 ∈ TarskiG)
9 simprl 746 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝑃)
10 lmiopp.d . . . . . . . . . 10 (𝜑𝐷 ∈ ran 𝐿)
11 lnperpex.a . . . . . . . . . 10 (𝜑𝐴𝐷)
121, 4, 3, 5, 10, 11tglnpt 25664 . . . . . . . . 9 (𝜑𝐴𝑃)
1312ad2antrr 697 . . . . . . . 8 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐴𝑃)
1413ad3antrrr 701 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐴𝑃)
15 simprrl 758 . . . . . . . . . 10 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐴𝐿𝑝)(⟂G‘𝐺)𝐷)
164, 8, 15perpln1 25825 . . . . . . . . 9 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐴𝐿𝑝) ∈ ran 𝐿)
171, 3, 4, 8, 14, 9, 16tglnne 25743 . . . . . . . 8 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐴𝑝)
1817necomd 2997 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝐴)
191, 3, 4, 8, 9, 14, 18tgelrnln 25745 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴) ∈ ran 𝐿)
2010ad2antrr 697 . . . . . . . 8 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐷 ∈ ran 𝐿)
2120ad2antrr 697 . . . . . . 7 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐷 ∈ ran 𝐿)
2221adantr 466 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐷 ∈ ran 𝐿)
231, 3, 4, 8, 9, 14, 18tglinecom 25750 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴) = (𝐴𝐿𝑝))
2423, 15eqbrtrd 4806 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑝𝐿𝐴)(⟂G‘𝐺)𝐷)
251, 2, 3, 4, 8, 19, 22, 24perpcom 25828 . . . . 5 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝐷(⟂G‘𝐺)(𝑝𝐿𝐴))
26 simpr 471 . . . . . . 7 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑄𝑂𝑐)
2726adantr 466 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑄𝑂𝑐)
28 lmiopp.o . . . . . . 7 𝑂 = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ (𝑃𝐷) ∧ 𝑏 ∈ (𝑃𝐷)) ∧ ∃𝑡𝐷 𝑡 ∈ (𝑎𝐼𝑏))}
29 lnperpex.q . . . . . . . . . 10 (𝜑𝑄𝑃)
3029ad2antrr 697 . . . . . . . . 9 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝑄𝑃)
3130ad2antrr 697 . . . . . . . 8 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑄𝑃)
3231adantr 466 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑄𝑃)
33 simplr 744 . . . . . . . 8 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝑐𝑃)
3433adantr 466 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑐𝑃)
35 simprrr 759 . . . . . . . 8 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑐𝑂𝑝)
361, 2, 3, 28, 4, 22, 8, 34, 9, 35oppcom 25856 . . . . . . 7 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝𝑂𝑐)
371, 3, 4, 28, 8, 22, 9, 32, 34, 36lnopp2hpgb 25875 . . . . . 6 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝑄𝑂𝑐𝑝((hpG‘𝐺)‘𝐷)𝑄))
3827, 37mpbid 222 . . . . 5 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → 𝑝((hpG‘𝐺)‘𝐷)𝑄)
3925, 38jca 495 . . . 4 ((((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) ∧ (𝑝𝑃 ∧ ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))) → (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
40 eqid 2770 . . . . 5 (hlG‘𝐺) = (hlG‘𝐺)
4111ad2antrr 697 . . . . . 6 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐴𝐷)
4241ad2antrr 697 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐴𝐷)
431, 2, 3, 28, 4, 21, 7, 31, 33, 26oppne2 25854 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ¬ 𝑐𝐷)
44 lmiopp.h . . . . . . 7 (𝜑𝐺DimTarskiG≥2)
4544ad2antrr 697 . . . . . 6 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → 𝐺DimTarskiG≥2)
4645ad2antrr 697 . . . . 5 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → 𝐺DimTarskiG≥2)
471, 2, 3, 28, 4, 21, 7, 40, 42, 33, 43, 46oppperpex 25865 . . . 4 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ∃𝑝𝑃 ((𝐴𝐿𝑝)(⟂G‘𝐺)𝐷𝑐𝑂𝑝))
4839, 47reximddv 3165 . . 3 (((((𝜑𝑑𝐷) ∧ 𝐴𝑑) ∧ 𝑐𝑃) ∧ 𝑄𝑂𝑐) → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
49 lnperpex.1 . . . . 5 (𝜑 → ¬ 𝑄𝐷)
501, 3, 4, 5, 10, 29, 28, 49hpgerlem 25877 . . . 4 (𝜑 → ∃𝑐𝑃 𝑄𝑂𝑐)
5150ad2antrr 697 . . 3 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → ∃𝑐𝑃 𝑄𝑂𝑐)
5248, 51r19.29a 3225 . 2 (((𝜑𝑑𝐷) ∧ 𝐴𝑑) → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
531, 3, 4, 5, 10, 11tglnpt2 25756 . 2 (𝜑 → ∃𝑑𝐷 𝐴𝑑)
5452, 53r19.29a 3225 1 (𝜑 → ∃𝑝𝑃 (𝐷(⟂G‘𝐺)(𝑝𝐿𝐴) ∧ 𝑝((hpG‘𝐺)‘𝐷)𝑄))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 382   = wceq 1630  wcel 2144  wne 2942  wrex 3061  cdif 3718   class class class wbr 4784  {copab 4844  ran crn 5250  cfv 6031  (class class class)co 6792  2c2 11271  Basecbs 16063  distcds 16157  TarskiGcstrkg 25549  DimTarskiGcstrkgld 25553  Itvcitv 25555  LineGclng 25556  hlGchlg 25715  ⟂Gcperpg 25810  hpGchpg 25869
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1869  ax-4 1884  ax-5 1990  ax-6 2056  ax-7 2092  ax-8 2146  ax-9 2153  ax-10 2173  ax-11 2189  ax-12 2202  ax-13 2407  ax-ext 2750  ax-rep 4902  ax-sep 4912  ax-nul 4920  ax-pow 4971  ax-pr 5034  ax-un 7095  ax-cnex 10193  ax-resscn 10194  ax-1cn 10195  ax-icn 10196  ax-addcl 10197  ax-addrcl 10198  ax-mulcl 10199  ax-mulrcl 10200  ax-mulcom 10201  ax-addass 10202  ax-mulass 10203  ax-distr 10204  ax-i2m1 10205  ax-1ne0 10206  ax-1rid 10207  ax-rnegex 10208  ax-rrecex 10209  ax-cnre 10210  ax-pre-lttri 10211  ax-pre-lttrn 10212  ax-pre-ltadd 10213  ax-pre-mulgt0 10214
This theorem depends on definitions:  df-bi 197  df-an 383  df-or 827  df-3or 1071  df-3an 1072  df-tru 1633  df-fal 1636  df-ex 1852  df-nf 1857  df-sb 2049  df-eu 2621  df-mo 2622  df-clab 2757  df-cleq 2763  df-clel 2766  df-nfc 2901  df-ne 2943  df-nel 3046  df-ral 3065  df-rex 3066  df-reu 3067  df-rmo 3068  df-rab 3069  df-v 3351  df-sbc 3586  df-csb 3681  df-dif 3724  df-un 3726  df-in 3728  df-ss 3735  df-pss 3737  df-nul 4062  df-if 4224  df-pw 4297  df-sn 4315  df-pr 4317  df-tp 4319  df-op 4321  df-uni 4573  df-int 4610  df-iun 4654  df-br 4785  df-opab 4845  df-mpt 4862  df-tr 4885  df-id 5157  df-eprel 5162  df-po 5170  df-so 5171  df-fr 5208  df-we 5210  df-xp 5255  df-rel 5256  df-cnv 5257  df-co 5258  df-dm 5259  df-rn 5260  df-res 5261  df-ima 5262  df-pred 5823  df-ord 5869  df-on 5870  df-lim 5871  df-suc 5872  df-iota 5994  df-fun 6033  df-fn 6034  df-f 6035  df-f1 6036  df-fo 6037  df-f1o 6038  df-fv 6039  df-riota 6753  df-ov 6795  df-oprab 6796  df-mpt2 6797  df-om 7212  df-1st 7314  df-2nd 7315  df-wrecs 7558  df-recs 7620  df-rdg 7658  df-1o 7712  df-oadd 7716  df-er 7895  df-map 8010  df-pm 8011  df-en 8109  df-dom 8110  df-sdom 8111  df-fin 8112  df-card 8964  df-cda 9191  df-pnf 10277  df-mnf 10278  df-xr 10279  df-ltxr 10280  df-le 10281  df-sub 10469  df-neg 10470  df-nn 11222  df-2 11280  df-3 11281  df-n0 11494  df-xnn0 11565  df-z 11579  df-uz 11888  df-fz 12533  df-fzo 12673  df-hash 13321  df-word 13494  df-concat 13496  df-s1 13497  df-s2 13801  df-s3 13802  df-trkgc 25567  df-trkgb 25568  df-trkgcb 25569  df-trkgld 25571  df-trkg 25572  df-cgrg 25626  df-leg 25698  df-hlg 25716  df-mir 25768  df-rag 25809  df-perpg 25811  df-hpg 25870
This theorem is referenced by:  trgcopy  25916
  Copyright terms: Public domain W3C validator