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

Theorem elrnmpt2res 6672
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
elrnmpt2res (𝐷𝑉 → (𝐷 ∈ ran (𝐹𝑅) ↔ ∃𝑥𝐴𝑦𝐵 (𝐷 = 𝐶𝑥𝑅𝑦)))
Distinct variable groups:   𝑦,𝐴   𝑥,𝑦,𝐷   𝑥,𝑅,𝑦
Allowed substitution hints:   𝐴(𝑥)   𝐵(𝑥,𝑦)   𝐶(𝑥,𝑦)   𝐹(𝑥,𝑦)   𝑉(𝑥,𝑦)

Proof of Theorem elrnmpt2res
Dummy variables 𝑧 𝑝 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqeq1 2614 . . . . . 6 (𝑧 = 𝐷 → (𝑧 = 𝐶𝐷 = 𝐶))
21anbi1d 737 . . . . 5 (𝑧 = 𝐷 → ((𝑧 = 𝐶𝑥𝑅𝑦) ↔ (𝐷 = 𝐶𝑥𝑅𝑦)))
32anbi2d 736 . . . 4 (𝑧 = 𝐷 → (((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
432exbidv 1839 . . 3 (𝑧 = 𝐷 → (∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
5 an12 834 . . . . . . . . . 10 ((𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ (𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
6 an12 834 . . . . . . . . . . . 12 ((𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑝𝑅𝑧 = 𝐶)))
7 ancom 465 . . . . . . . . . . . . . 14 ((𝑧 = 𝐶𝑝𝑅) ↔ (𝑝𝑅𝑧 = 𝐶))
8 eleq1 2676 . . . . . . . . . . . . . . . 16 (𝑝 = ⟨𝑥, 𝑦⟩ → (𝑝𝑅 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝑅))
9 df-br 4584 . . . . . . . . . . . . . . . 16 (𝑥𝑅𝑦 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝑅)
108, 9syl6bbr 277 . . . . . . . . . . . . . . 15 (𝑝 = ⟨𝑥, 𝑦⟩ → (𝑝𝑅𝑥𝑅𝑦))
1110anbi2d 736 . . . . . . . . . . . . . 14 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑧 = 𝐶𝑝𝑅) ↔ (𝑧 = 𝐶𝑥𝑅𝑦)))
127, 11syl5bbr 273 . . . . . . . . . . . . 13 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑝𝑅𝑧 = 𝐶) ↔ (𝑧 = 𝐶𝑥𝑅𝑦)))
1312anbi2d 736 . . . . . . . . . . . 12 (𝑝 = ⟨𝑥, 𝑦⟩ → (((𝑥𝐴𝑦𝐵) ∧ (𝑝𝑅𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
146, 13syl5bb 271 . . . . . . . . . . 11 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
1514pm5.32i 667 . . . . . . . . . 10 ((𝑝 = ⟨𝑥, 𝑦⟩ ∧ (𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
165, 15bitri 263 . . . . . . . . 9 ((𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
17162exbii 1765 . . . . . . . 8 (∃𝑥𝑦(𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
18 19.42vv 1907 . . . . . . . 8 (∃𝑥𝑦(𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
1917, 18bitr3i 265 . . . . . . 7 (∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))) ↔ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
2019opabbii 4649 . . . . . 6 {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)))} = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
21 dfoprab2 6599 . . . . . 6 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))} = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)))}
22 rngop.1 . . . . . . . . 9 𝐹 = (𝑥𝐴, 𝑦𝐵𝐶)
23 df-mpt2 6554 . . . . . . . . 9 (𝑥𝐴, 𝑦𝐵𝐶) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)}
24 dfoprab2 6599 . . . . . . . . 9 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)} = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))}
2522, 23, 243eqtri 2636 . . . . . . . 8 𝐹 = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))}
2625reseq1i 5313 . . . . . . 7 (𝐹𝑅) = ({⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))} ↾ 𝑅)
27 resopab 5366 . . . . . . 7 ({⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))} ↾ 𝑅) = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
2826, 27eqtri 2632 . . . . . 6 (𝐹𝑅) = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
2920, 21, 283eqtr4ri 2643 . . . . 5 (𝐹𝑅) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
3029rneqi 5273 . . . 4 ran (𝐹𝑅) = ran {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
31 rnoprab 6641 . . . 4 ran {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))} = {𝑧 ∣ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
3230, 31eqtri 2632 . . 3 ran (𝐹𝑅) = {𝑧 ∣ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
334, 32elab2g 3322 . 2 (𝐷𝑉 → (𝐷 ∈ ran (𝐹𝑅) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
34 r2ex 3043 . 2 (∃𝑥𝐴𝑦𝐵 (𝐷 = 𝐶𝑥𝑅𝑦) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦)))
3533, 34syl6bbr 277 1 (𝐷𝑉 → (𝐷 ∈ ran (𝐹𝑅) ↔ ∃𝑥𝐴𝑦𝐵 (𝐷 = 𝐶𝑥𝑅𝑦)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 195  wa 383   = wceq 1475  wex 1695  wcel 1977  {cab 2596  wrex 2897  cop 4131   class class class wbr 4583  {copab 4642  ran crn 5039  cres 5040  {coprab 6550  cmpt2 6551
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-sep 4709  ax-nul 4717  ax-pr 4833
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ral 2901  df-rex 2902  df-rab 2905  df-v 3175  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-nul 3875  df-if 4037  df-sn 4126  df-pr 4128  df-op 4132  df-br 4584  df-opab 4644  df-xp 5044  df-rel 5045  df-cnv 5046  df-dm 5048  df-rn 5049  df-res 5050  df-oprab 6553  df-mpt2 6554
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator