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

Theorem elrnmpt2res 6774
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 2626 . . . . . 6 (𝑧 = 𝐷 → (𝑧 = 𝐶𝐷 = 𝐶))
21anbi1d 741 . . . . 5 (𝑧 = 𝐷 → ((𝑧 = 𝐶𝑥𝑅𝑦) ↔ (𝐷 = 𝐶𝑥𝑅𝑦)))
32anbi2d 740 . . . 4 (𝑧 = 𝐷 → (((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
432exbidv 1852 . . 3 (𝑧 = 𝐷 → (∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
5 an12 838 . . . . . . . . . 10 ((𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ (𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
6 an12 838 . . . . . . . . . . . 12 ((𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑝𝑅𝑧 = 𝐶)))
7 ancom 466 . . . . . . . . . . . . . 14 ((𝑧 = 𝐶𝑝𝑅) ↔ (𝑝𝑅𝑧 = 𝐶))
8 eleq1 2689 . . . . . . . . . . . . . . . 16 (𝑝 = ⟨𝑥, 𝑦⟩ → (𝑝𝑅 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝑅))
9 df-br 4654 . . . . . . . . . . . . . . . 16 (𝑥𝑅𝑦 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝑅)
108, 9syl6bbr 278 . . . . . . . . . . . . . . 15 (𝑝 = ⟨𝑥, 𝑦⟩ → (𝑝𝑅𝑥𝑅𝑦))
1110anbi2d 740 . . . . . . . . . . . . . 14 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑧 = 𝐶𝑝𝑅) ↔ (𝑧 = 𝐶𝑥𝑅𝑦)))
127, 11syl5bbr 274 . . . . . . . . . . . . 13 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑝𝑅𝑧 = 𝐶) ↔ (𝑧 = 𝐶𝑥𝑅𝑦)))
1312anbi2d 740 . . . . . . . . . . . 12 (𝑝 = ⟨𝑥, 𝑦⟩ → (((𝑥𝐴𝑦𝐵) ∧ (𝑝𝑅𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
146, 13syl5bb 272 . . . . . . . . . . 11 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
1514pm5.32i 669 . . . . . . . . . 10 ((𝑝 = ⟨𝑥, 𝑦⟩ ∧ (𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
165, 15bitri 264 . . . . . . . . 9 ((𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
17162exbii 1775 . . . . . . . 8 (∃𝑥𝑦(𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
18 19.42vv 1920 . . . . . . . 8 (∃𝑥𝑦(𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
1917, 18bitr3i 266 . . . . . . 7 (∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))) ↔ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
2019opabbii 4717 . . . . . 6 {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)))} = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
21 dfoprab2 6701 . . . . . 6 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))} = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)))}
22 rngop.1 . . . . . . . . 9 𝐹 = (𝑥𝐴, 𝑦𝐵𝐶)
23 df-mpt2 6655 . . . . . . . . 9 (𝑥𝐴, 𝑦𝐵𝐶) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)}
24 dfoprab2 6701 . . . . . . . . 9 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)} = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))}
2522, 23, 243eqtri 2648 . . . . . . . 8 𝐹 = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))}
2625reseq1i 5392 . . . . . . 7 (𝐹𝑅) = ({⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))} ↾ 𝑅)
27 resopab 5446 . . . . . . 7 ({⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))} ↾ 𝑅) = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
2826, 27eqtri 2644 . . . . . 6 (𝐹𝑅) = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
2920, 21, 283eqtr4ri 2655 . . . . 5 (𝐹𝑅) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
3029rneqi 5352 . . . 4 ran (𝐹𝑅) = ran {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
31 rnoprab 6743 . . . 4 ran {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))} = {𝑧 ∣ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
3230, 31eqtri 2644 . . 3 ran (𝐹𝑅) = {𝑧 ∣ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
334, 32elab2g 3353 . 2 (𝐷𝑉 → (𝐷 ∈ ran (𝐹𝑅) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
34 r2ex 3061 . 2 (∃𝑥𝐴𝑦𝐵 (𝐷 = 𝐶𝑥𝑅𝑦) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦)))
3533, 34syl6bbr 278 1 (𝐷𝑉 → (𝐷 ∈ ran (𝐹𝑅) ↔ ∃𝑥𝐴𝑦𝐵 (𝐷 = 𝐶𝑥𝑅𝑦)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 196  wa 384   = wceq 1483  wex 1704  wcel 1990  {cab 2608  wrex 2913  cop 4183   class class class wbr 4653  {copab 4712  ran crn 5115  cres 5116  {coprab 6651  cmpt2 6652
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-sep 4781  ax-nul 4789  ax-pr 4906
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ral 2917  df-rex 2918  df-rab 2921  df-v 3202  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-nul 3916  df-if 4087  df-sn 4178  df-pr 4180  df-op 4184  df-br 4654  df-opab 4713  df-xp 5120  df-rel 5121  df-cnv 5122  df-dm 5124  df-rn 5125  df-res 5126  df-oprab 6654  df-mpt2 6655
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator