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

Theorem brprlng 29473
Description: Property of two lines 𝐴 and 𝐵 to be parallel. (Contributed by Thierry Arnoux, 18-Jun-2026.)
Hypotheses
Ref Expression
brprlng.l 𝐿 = (LineG‘𝐺)
brprlng.e 𝐸 = (hlG‘𝐺)
brprlng.p ∥ = (parlnG‘𝐺)
brprlng.g (𝜑 → 𝐺 ∈ 𝑉)
Assertion
Ref Expression
brprlng (𝜑 → (𝐴 ∥ 𝐵 ↔ ((𝐴 ∈ ran 𝐿 ∧ 𝐵 ∈ ran 𝐿) ∧ (𝐴 = 𝐵 ∨ (∃ℎ ∈ ran 𝐸(𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ) ∧ (𝐴 ∩ 𝐵) = ∅)))))
Distinct variable groups:   𝐴,ℎ   𝐵,ℎ   ℎ,𝐸   ℎ,𝐺
Allowed substitution hints:   𝜑(ℎ)   ∥ (ℎ)   𝐿(ℎ)   𝑉(ℎ)

Proof of Theorem brprlng
Dummy variables 𝑎 𝑏 𝑔 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 brprlng.p . . 3 ∥ = (parlnG‘𝐺)
2 df-prlng 29472 . . . 4 parlnG = (𝑔 ∈ V ↦ {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran (LineG‘𝑔) ∧ 𝑏 ∈ ran (LineG‘𝑔)) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran (hlG‘𝑔)(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))})
3 fveq2 6916 . . . . . . . . . 10 (𝑔 = 𝐺 → (LineG‘𝑔) = (LineG‘𝐺))
4 brprlng.l . . . . . . . . . 10 𝐿 = (LineG‘𝐺)
53, 4eqtr4di 2816 . . . . . . . . 9 (𝑔 = 𝐺 → (LineG‘𝑔) = 𝐿)
65rneqd 5932 . . . . . . . 8 (𝑔 = 𝐺 → ran (LineG‘𝑔) = ran 𝐿)
76eleq2d 2850 . . . . . . 7 (𝑔 = 𝐺 → (𝑎 ∈ ran (LineG‘𝑔) ↔ 𝑎 ∈ ran 𝐿))
86eleq2d 2850 . . . . . . 7 (𝑔 = 𝐺 → (𝑏 ∈ ran (LineG‘𝑔) ↔ 𝑏 ∈ ran 𝐿))
97, 8anbi12d 644 . . . . . 6 (𝑔 = 𝐺 → ((𝑎 ∈ ran (LineG‘𝑔) ∧ 𝑏 ∈ ran (LineG‘𝑔)) ↔ (𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿)))
10 fveq2 6916 . . . . . . . . . . 11 (𝑔 = 𝐺 → (hlG‘𝑔) = (hlG‘𝐺))
11 brprlng.e . . . . . . . . . . 11 𝐸 = (hlG‘𝐺)
1210, 11eqtr4di 2816 . . . . . . . . . 10 (𝑔 = 𝐺 → (hlG‘𝑔) = 𝐸)
1312rneqd 5932 . . . . . . . . 9 (𝑔 = 𝐺 → ran (hlG‘𝑔) = ran 𝐸)
1413rexeqdv 3324 . . . . . . . 8 (𝑔 = 𝐺 → (∃ℎ ∈ ran (hlG‘𝑔)(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ↔ ∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ)))
1514anbi1d 643 . . . . . . 7 (𝑔 = 𝐺 → ((∃ℎ ∈ ran (hlG‘𝑔)(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅) ↔ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))
1615orbi2d 929 . . . . . 6 (𝑔 = 𝐺 → ((𝑎 = 𝑏 ∨ (∃ℎ ∈ ran (hlG‘𝑔)(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)) ↔ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅))))
179, 16anbi12d 644 . . . . 5 (𝑔 = 𝐺 → (((𝑎 ∈ ran (LineG‘𝑔) ∧ 𝑏 ∈ ran (LineG‘𝑔)) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran (hlG‘𝑔)(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅))) ↔ ((𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))))
1817opabbidv 5177 . . . 4 (𝑔 = 𝐺 → {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran (LineG‘𝑔) ∧ 𝑏 ∈ ran (LineG‘𝑔)) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran (hlG‘𝑔)(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))} = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))})
19 brprlng.g . . . . 5 (𝜑 → 𝐺 ∈ 𝑉)
2019elexd 3477 . . . 4 (𝜑 → 𝐺 ∈ V)
214fvexi 6930 . . . . . . 7 𝐿 ∈ V
2221rnex 7956 . . . . . 6 ran 𝐿 ∈ V
2322a1i 11 . . . . 5 (𝜑 → ran 𝐿 ∈ V)
24 simprll 791 . . . . 5 ((𝜑 ∧ ((𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))) → 𝑎 ∈ ran 𝐿)
25 simprlr 792 . . . . 5 ((𝜑 ∧ ((𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))) → 𝑏 ∈ ran 𝐿)
2623, 23, 24, 25opabex2 8103 . . . 4 (𝜑 → {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))} ∈ V)
272, 18, 20, 26fvmptd3 7048 . . 3 (𝜑 → (parlnG‘𝐺) = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))})
281, 27eqtrid 2810 . 2 (𝜑 → ∥ = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))})
29 eqeq12 2780 . . . 4 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → (𝑎 = 𝑏 ↔ 𝐴 = 𝐵))
30 sseq1 3938 . . . . . . 7 (𝑎 = 𝐴 → (𝑎 ⊆ ℎ ↔ 𝐴 ⊆ ℎ))
31 sseq1 3938 . . . . . . 7 (𝑏 = 𝐵 → (𝑏 ⊆ ℎ ↔ 𝐵 ⊆ ℎ))
3230, 31bi2anan9 650 . . . . . 6 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → ((𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ↔ (𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ)))
3332rexbidv 3190 . . . . 5 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ↔ ∃ℎ ∈ ran 𝐸(𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ)))
34 ineq12 4115 . . . . . 6 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → (𝑎 ∩ 𝑏) = (𝐴 ∩ 𝐵))
3534eqeq1d 2765 . . . . 5 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → ((𝑎 ∩ 𝑏) = ∅ ↔ (𝐴 ∩ 𝐵) = ∅))
3633, 35anbi12d 644 . . . 4 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → ((∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅) ↔ (∃ℎ ∈ ran 𝐸(𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ) ∧ (𝐴 ∩ 𝐵) = ∅)))
3729, 36orbi12d 932 . . 3 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → ((𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)) ↔ (𝐴 = 𝐵 ∨ (∃ℎ ∈ ran 𝐸(𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ) ∧ (𝐴 ∩ 𝐵) = ∅))))
3837adantl 487 . 2 ((𝜑 ∧ (𝑎 = 𝐴 ∧ 𝑏 = 𝐵)) → ((𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)) ↔ (𝐴 = 𝐵 ∨ (∃ℎ ∈ ran 𝐸(𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ) ∧ (𝐴 ∩ 𝐵) = ∅))))
3928, 38brab2d 5519 1 (𝜑 → (𝐴 ∥ 𝐵 ↔ ((𝐴 ∈ ran 𝐿 ∧ 𝐵 ∈ ran 𝐿) ∧ (𝐴 = 𝐵 ∨ (∃ℎ ∈ ran 𝐸(𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ) ∧ (𝐴 ∩ 𝐵) = ∅)))))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   ∧ wa 401   ∨ wo 861   = wceq 1570   ∈ wcel 2147  ∃wrex 3090  Vcvv 3454   ⊆ wss 3900   ∩ cin 4092  ∅c0 4281   class class class wbr 5108  {copab 5173  ran crn 5659  ‘cfv 6566  LineGclng 28953  hlGcplng 29308  parlnGcprlng 29471
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-sep 5255  ax-nul 5266  ax-pow 5334  ax-pr 5398  ax-un 7783
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-rab 3417  df-v 3456  df-ss 3901  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4841  df-uni 4873  df-br 5109  df-opab 5174  df-mpt 5193  df-id 5553  df-xp 5664  df-rel 5665  df-cnv 5666  df-co 5667  df-dm 5668  df-rn 5669  df-iota 6520  df-fun 6568  df-fv 6574  df-prlng 29472
This theorem is used by:  prlngd  29474  prlngref  29475  prlngsym  29476  prlngrcl1  29477  prlngrcl2  29478  prlngin0  29479  prlngpln  29480  prlnghpg  29481  dfprlng2  29482
  Copyright terms: Public domain W3C validator