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

Theorem perpln1 28644
Description: Derive a line from perpendicularity. (Contributed by Thierry Arnoux, 27-Nov-2019.)
Hypotheses
Ref Expression
perpln.l 𝐿 = (LineG‘𝐺)
perpln.1 (𝜑𝐺 ∈ TarskiG)
perpln.2 (𝜑𝐴(⟂G‘𝐺)𝐵)
Assertion
Ref Expression
perpln1 (𝜑𝐴 ∈ ran 𝐿)

Proof of Theorem perpln1
Dummy variables 𝑎 𝑏 𝑔 𝑢 𝑣 𝑥 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-perpg 28630 . . . . . 6 ⟂G = (𝑔 ∈ V ↦ {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran (LineG‘𝑔) ∧ 𝑏 ∈ ran (LineG‘𝑔)) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝑔))})
2 simpr 484 . . . . . . . . . . . . 13 ((𝜑𝑔 = 𝐺) → 𝑔 = 𝐺)
32fveq2d 6865 . . . . . . . . . . . 12 ((𝜑𝑔 = 𝐺) → (LineG‘𝑔) = (LineG‘𝐺))
4 perpln.l . . . . . . . . . . . 12 𝐿 = (LineG‘𝐺)
53, 4eqtr4di 2783 . . . . . . . . . . 11 ((𝜑𝑔 = 𝐺) → (LineG‘𝑔) = 𝐿)
65rneqd 5905 . . . . . . . . . 10 ((𝜑𝑔 = 𝐺) → ran (LineG‘𝑔) = ran 𝐿)
76eleq2d 2815 . . . . . . . . 9 ((𝜑𝑔 = 𝐺) → (𝑎 ∈ ran (LineG‘𝑔) ↔ 𝑎 ∈ ran 𝐿))
86eleq2d 2815 . . . . . . . . 9 ((𝜑𝑔 = 𝐺) → (𝑏 ∈ ran (LineG‘𝑔) ↔ 𝑏 ∈ ran 𝐿))
97, 8anbi12d 632 . . . . . . . 8 ((𝜑𝑔 = 𝐺) → ((𝑎 ∈ ran (LineG‘𝑔) ∧ 𝑏 ∈ ran (LineG‘𝑔)) ↔ (𝑎 ∈ ran 𝐿𝑏 ∈ ran 𝐿)))
102fveq2d 6865 . . . . . . . . . . 11 ((𝜑𝑔 = 𝐺) → (∟G‘𝑔) = (∟G‘𝐺))
1110eleq2d 2815 . . . . . . . . . 10 ((𝜑𝑔 = 𝐺) → (⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝑔) ↔ ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺)))
1211ralbidv 3157 . . . . . . . . 9 ((𝜑𝑔 = 𝐺) → (∀𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝑔) ↔ ∀𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺)))
1312rexralbidv 3204 . . . . . . . 8 ((𝜑𝑔 = 𝐺) → (∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝑔) ↔ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺)))
149, 13anbi12d 632 . . . . . . 7 ((𝜑𝑔 = 𝐺) → (((𝑎 ∈ ran (LineG‘𝑔) ∧ 𝑏 ∈ ran (LineG‘𝑔)) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝑔)) ↔ ((𝑎 ∈ ran 𝐿𝑏 ∈ ran 𝐿) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺))))
1514opabbidv 5176 . . . . . 6 ((𝜑𝑔 = 𝐺) → {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran (LineG‘𝑔) ∧ 𝑏 ∈ ran (LineG‘𝑔)) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝑔))} = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿𝑏 ∈ ran 𝐿) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺))})
16 perpln.1 . . . . . . 7 (𝜑𝐺 ∈ TarskiG)
1716elexd 3474 . . . . . 6 (𝜑𝐺 ∈ V)
184fvexi 6875 . . . . . . . . 9 𝐿 ∈ V
19 rnexg 7881 . . . . . . . . 9 (𝐿 ∈ V → ran 𝐿 ∈ V)
2018, 19mp1i 13 . . . . . . . 8 (𝜑 → ran 𝐿 ∈ V)
2120, 20xpexd 7730 . . . . . . 7 (𝜑 → (ran 𝐿 × ran 𝐿) ∈ V)
22 opabssxp 5734 . . . . . . . 8 {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿𝑏 ∈ ran 𝐿) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺))} ⊆ (ran 𝐿 × ran 𝐿)
2322a1i 11 . . . . . . 7 (𝜑 → {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿𝑏 ∈ ran 𝐿) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺))} ⊆ (ran 𝐿 × ran 𝐿))
2421, 23ssexd 5282 . . . . . 6 (𝜑 → {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿𝑏 ∈ ran 𝐿) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺))} ∈ V)
251, 15, 17, 24fvmptd2 6979 . . . . 5 (𝜑 → (⟂G‘𝐺) = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿𝑏 ∈ ran 𝐿) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺))})
26 anass 468 . . . . . 6 (((𝑎 ∈ ran 𝐿𝑏 ∈ ran 𝐿) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺)) ↔ (𝑎 ∈ ran 𝐿 ∧ (𝑏 ∈ ran 𝐿 ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺))))
2726opabbii 5177 . . . . 5 {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿𝑏 ∈ ran 𝐿) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺))} = {⟨𝑎, 𝑏⟩ ∣ (𝑎 ∈ ran 𝐿 ∧ (𝑏 ∈ ran 𝐿 ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺)))}
2825, 27eqtrdi 2781 . . . 4 (𝜑 → (⟂G‘𝐺) = {⟨𝑎, 𝑏⟩ ∣ (𝑎 ∈ ran 𝐿 ∧ (𝑏 ∈ ran 𝐿 ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺)))})
2928dmeqd 5872 . . 3 (𝜑 → dom (⟂G‘𝐺) = dom {⟨𝑎, 𝑏⟩ ∣ (𝑎 ∈ ran 𝐿 ∧ (𝑏 ∈ ran 𝐿 ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺)))})
30 dmopabss 5885 . . 3 dom {⟨𝑎, 𝑏⟩ ∣ (𝑎 ∈ ran 𝐿 ∧ (𝑏 ∈ ran 𝐿 ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺)))} ⊆ ran 𝐿
3129, 30eqsstrdi 3994 . 2 (𝜑 → dom (⟂G‘𝐺) ⊆ ran 𝐿)
32 relopabv 5787 . . . . . 6 Rel {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿𝑏 ∈ ran 𝐿) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺))}
3325releqd 5744 . . . . . 6 (𝜑 → (Rel (⟂G‘𝐺) ↔ Rel {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿𝑏 ∈ ran 𝐿) ∧ ∃𝑥 ∈ (𝑎𝑏)∀𝑢𝑎𝑣𝑏 ⟨“𝑢𝑥𝑣”⟩ ∈ (∟G‘𝐺))}))
3432, 33mpbiri 258 . . . . 5 (𝜑 → Rel (⟂G‘𝐺))
35 perpln.2 . . . . 5 (𝜑𝐴(⟂G‘𝐺)𝐵)
36 brrelex12 5693 . . . . 5 ((Rel (⟂G‘𝐺) ∧ 𝐴(⟂G‘𝐺)𝐵) → (𝐴 ∈ V ∧ 𝐵 ∈ V))
3734, 35, 36syl2anc 584 . . . 4 (𝜑 → (𝐴 ∈ V ∧ 𝐵 ∈ V))
3837simpld 494 . . 3 (𝜑𝐴 ∈ V)
3937simprd 495 . . 3 (𝜑𝐵 ∈ V)
40 breldmg 5876 . . 3 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐴(⟂G‘𝐺)𝐵) → 𝐴 ∈ dom (⟂G‘𝐺))
4138, 39, 35, 40syl3anc 1373 . 2 (𝜑𝐴 ∈ dom (⟂G‘𝐺))
4231, 41sseldd 3950 1 (𝜑𝐴 ∈ ran 𝐿)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395   = wceq 1540  wcel 2109  wral 3045  wrex 3054  Vcvv 3450  cin 3916  wss 3917   class class class wbr 5110  {copab 5172   × cxp 5639  dom cdm 5641  ran crn 5642  Rel wrel 5646  cfv 6514  ⟨“cs3 14815  TarskiGcstrkg 28361  LineGclng 28368  ∟Gcrag 28627  ⟂Gcperpg 28629
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2008  ax-8 2111  ax-9 2119  ax-10 2142  ax-11 2158  ax-12 2178  ax-ext 2702  ax-sep 5254  ax-nul 5264  ax-pow 5323  ax-pr 5390  ax-un 7714
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2534  df-eu 2563  df-clab 2709  df-cleq 2722  df-clel 2804  df-nfc 2879  df-ne 2927  df-ral 3046  df-rex 3055  df-rab 3409  df-v 3452  df-sbc 3757  df-csb 3866  df-dif 3920  df-un 3922  df-in 3924  df-ss 3934  df-nul 4300  df-if 4492  df-pw 4568  df-sn 4593  df-pr 4595  df-op 4599  df-uni 4875  df-br 5111  df-opab 5173  df-mpt 5192  df-id 5536  df-xp 5647  df-rel 5648  df-cnv 5649  df-co 5650  df-dm 5651  df-rn 5652  df-iota 6467  df-fun 6516  df-fv 6522  df-perpg 28630
This theorem is referenced by:  footne  28657  footeq  28658  perpdragALT  28661  perpdrag  28662  colperp  28663  midex  28671  opphl  28688  lmieu  28718  lnperpex  28737  trgcopy  28738
  Copyright terms: Public domain W3C validator