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

Theorem elrnmpores 7536
Description: Membership in the range of a restricted operation class abstraction. (Contributed by Thierry Arnoux, 25-May-2019.)
Hypothesis
Ref Expression
rngop.1 𝐹 = (𝑥𝐴, 𝑦𝐵𝐶)
Assertion
Ref Expression
elrnmpores (𝐷𝑉 → (𝐷 ∈ ran (𝐹𝑅) ↔ ∃𝑥𝐴𝑦𝐵 (𝐷 = 𝐶𝑥𝑅𝑦)))
Distinct variable groups:   𝑦,𝐴   𝑥,𝑦,𝐷   𝑥,𝑅,𝑦
Allowed substitution hints:   𝐴(𝑥)   𝐵(𝑥,𝑦)   𝐶(𝑥,𝑦)   𝐹(𝑥,𝑦)   𝑉(𝑥,𝑦)

Proof of Theorem elrnmpores
Dummy variables 𝑧 𝑝 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqeq1 2768 . . . . . 6 (𝑧 = 𝐷 → (𝑧 = 𝐶𝐷 = 𝐶))
21anbi1d 640 . . . . 5 (𝑧 = 𝐷 → ((𝑧 = 𝐶𝑥𝑅𝑦) ↔ (𝐷 = 𝐶𝑥𝑅𝑦)))
32anbi2d 639 . . . 4 (𝑧 = 𝐷 → (((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
432exbidv 1946 . . 3 (𝑧 = 𝐷 → (∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
5 an12 655 . . . . . . . . . 10 ((𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ (𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
6 an12 655 . . . . . . . . . . . 12 ((𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑝𝑅𝑧 = 𝐶)))
7 ancom 464 . . . . . . . . . . . . . 14 ((𝑧 = 𝐶𝑝𝑅) ↔ (𝑝𝑅𝑧 = 𝐶))
8 eleq1 2852 . . . . . . . . . . . . . . . 16 (𝑝 = ⟨𝑥, 𝑦⟩ → (𝑝𝑅 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝑅))
9 df-br 5103 . . . . . . . . . . . . . . . 16 (𝑥𝑅𝑦 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝑅)
108, 9bitr4di 291 . . . . . . . . . . . . . . 15 (𝑝 = ⟨𝑥, 𝑦⟩ → (𝑝𝑅𝑥𝑅𝑦))
1110anbi2d 639 . . . . . . . . . . . . . 14 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑧 = 𝐶𝑝𝑅) ↔ (𝑧 = 𝐶𝑥𝑅𝑦)))
127, 11bitr3id 287 . . . . . . . . . . . . 13 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑝𝑅𝑧 = 𝐶) ↔ (𝑧 = 𝐶𝑥𝑅𝑦)))
1312anbi2d 639 . . . . . . . . . . . 12 (𝑝 = ⟨𝑥, 𝑦⟩ → (((𝑥𝐴𝑦𝐵) ∧ (𝑝𝑅𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
146, 13bitrid 285 . . . . . . . . . . 11 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
1514pm5.32i 582 . . . . . . . . . 10 ((𝑝 = ⟨𝑥, 𝑦⟩ ∧ (𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
165, 15bitri 277 . . . . . . . . 9 ((𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
17162exbii 1871 . . . . . . . 8 (∃𝑥𝑦(𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
18 19.42vv 1979 . . . . . . . 8 (∃𝑥𝑦(𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
1917, 18bitr3i 279 . . . . . . 7 (∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))) ↔ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
2019opabbii 5169 . . . . . 6 {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)))} = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
21 dfoprab2 7456 . . . . . 6 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))} = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)))}
22 rngop.1 . . . . . . . . 9 𝐹 = (𝑥𝐴, 𝑦𝐵𝐶)
23 df-mpo 7403 . . . . . . . . 9 (𝑥𝐴, 𝑦𝐵𝐶) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)}
24 dfoprab2 7456 . . . . . . . . 9 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)} = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))}
2522, 23, 243eqtri 2791 . . . . . . . 8 𝐹 = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))}
2625reseq1i 5963 . . . . . . 7 (𝐹𝑅) = ({⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))} ↾ 𝑅)
27 resopab 6025 . . . . . . 7 ({⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))} ↾ 𝑅) = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
2826, 27eqtri 2787 . . . . . 6 (𝐹𝑅) = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
2920, 21, 283eqtr4ri 2798 . . . . 5 (𝐹𝑅) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
3029rneqi 5915 . . . 4 ran (𝐹𝑅) = ran {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
31 rnoprab 7503 . . . 4 ran {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))} = {𝑧 ∣ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
3230, 31eqtri 2787 . . 3 ran (𝐹𝑅) = {𝑧 ∣ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
334, 32elab2g 3641 . 2 (𝐷𝑉 → (𝐷 ∈ ran (𝐹𝑅) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
34 r2ex 3201 . 2 (∃𝑥𝐴𝑦𝐵 (𝐷 = 𝐶𝑥𝑅𝑦) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦)))
3533, 34bitr4di 291 1 (𝐷𝑉 → (𝐷 ∈ ran (𝐹𝑅) ↔ ∃𝑥𝐴𝑦𝐵 (𝐷 = 𝐶𝑥𝑅𝑦)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 399   = wceq 1562  wex 1801  wcel 2144  {cab 2742  wrex 3088  cop 4590   class class class wbr 5102  {copab 5164  ran crn 5650  cres 5651  {coprab 7399  cmpo 7400
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1817  ax-4 1831  ax-5 1932  ax-6 1989  ax-7 2030  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2214  ax-ext 2736  ax-sep 5248  ax-pr 5392
This theorem depends on definitions:  df-bi 209  df-an 400  df-or 859  df-3an 1101  df-tru 1565  df-fal 1575  df-ex 1802  df-nf 1806  df-sb 2093  df-mo 2568  df-eu 2598  df-clab 2743  df-cleq 2756  df-clel 2839  df-nfc 2913  df-ral 3079  df-rex 3089  df-rab 3417  df-v 3458  df-dif 3909  df-un 3911  df-in 3913  df-ss 3923  df-nul 4288  df-if 4483  df-sn 4585  df-pr 4587  df-op 4591  df-br 5103  df-opab 5165  df-xp 5655  df-rel 5656  df-cnv 5657  df-dm 5659  df-rn 5660  df-res 5661  df-oprab 7402  df-mpo 7403
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator