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

Theorem elrnmpt2res 6650
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 2613 . . . . . 6 (𝑧 = 𝐷 → (𝑧 = 𝐶𝐷 = 𝐶))
21anbi1d 736 . . . . 5 (𝑧 = 𝐷 → ((𝑧 = 𝐶𝑥𝑅𝑦) ↔ (𝐷 = 𝐶𝑥𝑅𝑦)))
32anbi2d 735 . . . 4 (𝑧 = 𝐷 → (((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
432exbidv 1838 . . 3 (𝑧 = 𝐷 → (∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
5 an12 833 . . . . . . . . . 10 ((𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ (𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
6 an12 833 . . . . . . . . . . . 12 ((𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑝𝑅𝑧 = 𝐶)))
7 ancom 464 . . . . . . . . . . . . . 14 ((𝑧 = 𝐶𝑝𝑅) ↔ (𝑝𝑅𝑧 = 𝐶))
8 eleq1 2675 . . . . . . . . . . . . . . . 16 (𝑝 = ⟨𝑥, 𝑦⟩ → (𝑝𝑅 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝑅))
9 df-br 4578 . . . . . . . . . . . . . . . 16 (𝑥𝑅𝑦 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝑅)
108, 9syl6bbr 276 . . . . . . . . . . . . . . 15 (𝑝 = ⟨𝑥, 𝑦⟩ → (𝑝𝑅𝑥𝑅𝑦))
1110anbi2d 735 . . . . . . . . . . . . . 14 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑧 = 𝐶𝑝𝑅) ↔ (𝑧 = 𝐶𝑥𝑅𝑦)))
127, 11syl5bbr 272 . . . . . . . . . . . . 13 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑝𝑅𝑧 = 𝐶) ↔ (𝑧 = 𝐶𝑥𝑅𝑦)))
1312anbi2d 735 . . . . . . . . . . . 12 (𝑝 = ⟨𝑥, 𝑦⟩ → (((𝑥𝐴𝑦𝐵) ∧ (𝑝𝑅𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
146, 13syl5bb 270 . . . . . . . . . . 11 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
1514pm5.32i 666 . . . . . . . . . 10 ((𝑝 = ⟨𝑥, 𝑦⟩ ∧ (𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
165, 15bitri 262 . . . . . . . . 9 ((𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
17162exbii 1764 . . . . . . . 8 (∃𝑥𝑦(𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
18 19.42vv 1906 . . . . . . . 8 (∃𝑥𝑦(𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
1917, 18bitr3i 264 . . . . . . 7 (∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))) ↔ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
2019opabbii 4643 . . . . . 6 {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)))} = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
21 dfoprab2 6577 . . . . . 6 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))} = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)))}
22 rngop.1 . . . . . . . . 9 𝐹 = (𝑥𝐴, 𝑦𝐵𝐶)
23 df-mpt2 6532 . . . . . . . . 9 (𝑥𝐴, 𝑦𝐵𝐶) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)}
24 dfoprab2 6577 . . . . . . . . 9 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)} = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))}
2522, 23, 243eqtri 2635 . . . . . . . 8 𝐹 = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))}
2625reseq1i 5300 . . . . . . 7 (𝐹𝑅) = ({⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))} ↾ 𝑅)
27 resopab 5353 . . . . . . 7 ({⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))} ↾ 𝑅) = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
2826, 27eqtri 2631 . . . . . 6 (𝐹𝑅) = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
2920, 21, 283eqtr4ri 2642 . . . . 5 (𝐹𝑅) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
3029rneqi 5260 . . . 4 ran (𝐹𝑅) = ran {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
31 rnoprab 6619 . . . 4 ran {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))} = {𝑧 ∣ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
3230, 31eqtri 2631 . . 3 ran (𝐹𝑅) = {𝑧 ∣ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
334, 32elab2g 3321 . 2 (𝐷𝑉 → (𝐷 ∈ ran (𝐹𝑅) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
34 r2ex 3042 . 2 (∃𝑥𝐴𝑦𝐵 (𝐷 = 𝐶𝑥𝑅𝑦) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦)))
3533, 34syl6bbr 276 1 (𝐷𝑉 → (𝐷 ∈ ran (𝐹𝑅) ↔ ∃𝑥𝐴𝑦𝐵 (𝐷 = 𝐶𝑥𝑅𝑦)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 194  wa 382   = wceq 1474  wex 1694  wcel 1976  {cab 2595  wrex 2896  cop 4130   class class class wbr 4577  {copab 4636  ran crn 5029  cres 5030  {coprab 6528  cmpt2 6529
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1712  ax-4 1727  ax-5 1826  ax-6 1874  ax-7 1921  ax-9 1985  ax-10 2005  ax-11 2020  ax-12 2032  ax-13 2232  ax-ext 2589  ax-sep 4703  ax-nul 4712  ax-pr 4828
This theorem depends on definitions:  df-bi 195  df-or 383  df-an 384  df-3an 1032  df-tru 1477  df-ex 1695  df-nf 1700  df-sb 1867  df-eu 2461  df-mo 2462  df-clab 2596  df-cleq 2602  df-clel 2605  df-nfc 2739  df-ral 2900  df-rex 2901  df-rab 2904  df-v 3174  df-dif 3542  df-un 3544  df-in 3546  df-ss 3553  df-nul 3874  df-if 4036  df-sn 4125  df-pr 4127  df-op 4131  df-br 4578  df-opab 4638  df-xp 5034  df-rel 5035  df-cnv 5036  df-dm 5038  df-rn 5039  df-res 5040  df-oprab 6531  df-mpt2 6532
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator