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

Theorem brprlng 29409
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 29408 . . . 4 parlnG = (𝑔 ∈ V ↦ {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran (LineG‘𝑔) ∧ 𝑏 ∈ ran (LineG‘𝑔)) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran (hlG‘𝑔)(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))})
3 fveq2 6883 . . . . . . . . . 10 (𝑔 = 𝐺 → (LineG‘𝑔) = (LineG‘𝐺))
4 brprlng.l . . . . . . . . . 10 𝐿 = (LineG‘𝐺)
53, 4eqtr4di 2814 . . . . . . . . 9 (𝑔 = 𝐺 → (LineG‘𝑔) = 𝐿)
65rneqd 5920 . . . . . . . 8 (𝑔 = 𝐺 → ran (LineG‘𝑔) = ran 𝐿)
76eleq2d 2847 . . . . . . 7 (𝑔 = 𝐺 → (𝑎 ∈ ran (LineG‘𝑔) ↔ 𝑎 ∈ ran 𝐿))
86eleq2d 2847 . . . . . . 7 (𝑔 = 𝐺 → (𝑏 ∈ ran (LineG‘𝑔) ↔ 𝑏 ∈ ran 𝐿))
97, 8anbi12d 644 . . . . . 6 (𝑔 = 𝐺 → ((𝑎 ∈ ran (LineG‘𝑔) ∧ 𝑏 ∈ ran (LineG‘𝑔)) ↔ (𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿)))
10 fveq2 6883 . . . . . . . . . . 11 (𝑔 = 𝐺 → (hlG‘𝑔) = (hlG‘𝐺))
11 brprlng.e . . . . . . . . . . 11 𝐸 = (hlG‘𝐺)
1210, 11eqtr4di 2814 . . . . . . . . . 10 (𝑔 = 𝐺 → (hlG‘𝑔) = 𝐸)
1312rneqd 5920 . . . . . . . . 9 (𝑔 = 𝐺 → ran (hlG‘𝑔) = ran 𝐸)
1413rexeqdv 3321 . . . . . . . 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 5171 . . . 4 (𝑔 = 𝐺 → {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran (LineG‘𝑔) ∧ 𝑏 ∈ ran (LineG‘𝑔)) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran (hlG‘𝑔)(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))} = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))})
19 brprlng.g . . . . 5 (𝜑 → 𝐺 ∈ 𝑉)
2019elexd 3474 . . . 4 (𝜑 → 𝐺 ∈ V)
214fvexi 6897 . . . . . . 7 𝐿 ∈ V
2221rnex 7920 . . . . . 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 8066 . . . 4 (𝜑 → {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))} ∈ V)
272, 18, 20, 26fvmptd3 7015 . . 3 (𝜑 → (parlnG‘𝐺) = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))})
281, 27eqtrid 2808 . 2 (𝜑 → ∥ = {⟨𝑎, 𝑏⟩ ∣ ((𝑎 ∈ ran 𝐿 ∧ 𝑏 ∈ ran 𝐿) ∧ (𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)))})
29 eqeq12 2778 . . . 4 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → (𝑎 = 𝑏 ↔ 𝐴 = 𝐵))
30 sseq1 3956 . . . . . . 7 (𝑎 = 𝐴 → (𝑎 ⊆ ℎ ↔ 𝐴 ⊆ ℎ))
31 sseq1 3956 . . . . . . 7 (𝑏 = 𝐵 → (𝑏 ⊆ ℎ ↔ 𝐵 ⊆ ℎ))
3230, 31bi2anan9 650 . . . . . 6 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → ((𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ↔ (𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ)))
3332rexbidv 3187 . . . . 5 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ↔ ∃ℎ ∈ ran 𝐸(𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ)))
34 ineq12 4161 . . . . . 6 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → (𝑎 ∩ 𝑏) = (𝐴 ∩ 𝐵))
3534eqeq1d 2763 . . . . 5 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → ((𝑎 ∩ 𝑏) = ∅ ↔ (𝐴 ∩ 𝐵) = ∅))
3633, 35anbi12d 644 . . . 4 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → ((∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅) ↔ (∃ℎ ∈ ran 𝐸(𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ) ∧ (𝐴 ∩ 𝐵) = ∅)))
3729, 36orbi12d 932 . . 3 ((𝑎 = 𝐴 ∧ 𝑏 = 𝐵) → ((𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)) ↔ (𝐴 = 𝐵 ∨ (∃ℎ ∈ ran 𝐸(𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ) ∧ (𝐴 ∩ 𝐵) = ∅))))
3837adantl 487 . 2 ((𝜑 ∧ (𝑎 = 𝐴 ∧ 𝑏 = 𝐵)) → ((𝑎 = 𝑏 ∨ (∃ℎ ∈ ran 𝐸(𝑎 ⊆ ℎ ∧ 𝑏 ⊆ ℎ) ∧ (𝑎 ∩ 𝑏) = ∅)) ↔ (𝐴 = 𝐵 ∨ (∃ℎ ∈ ran 𝐸(𝐴 ⊆ ℎ ∧ 𝐵 ⊆ ℎ) ∧ (𝐴 ∩ 𝐵) = ∅))))
3928, 38brab2d 5512 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 2145  ∃wrex 3087  Vcvv 3451   ∩ cin 3898   ⊆ wss 3899  ∅c0 4279   class class class wbr 5103  {copab 5167  ran crn 5652  ‘cfv 6537  LineGclng 28889  hlGcplng 29244  parlnGcprlng 29407
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 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7749
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 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-ral 3078  df-rex 3088  df-rab 3414  df-v 3453  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-br 5104  df-opab 5168  df-mpt 5187  df-id 5546  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-iota 6493  df-fun 6539  df-fv 6545  df-prlng 29408
This theorem is used by:  prlngd  29410  prlngref  29411  prlngsym  29412  prlngrcl1  29413  prlngrcl2  29414  prlngin0  29415  prlngpln  29416  prlnghpg  29417  dfprlng2  29418
  Copyright terms: Public domain W3C validator