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

Theorem elrnmpores 7271
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 2805 . . . . . 6 (𝑧 = 𝐷 → (𝑧 = 𝐶𝐷 = 𝐶))
21anbi1d 632 . . . . 5 (𝑧 = 𝐷 → ((𝑧 = 𝐶𝑥𝑅𝑦) ↔ (𝐷 = 𝐶𝑥𝑅𝑦)))
32anbi2d 631 . . . 4 (𝑧 = 𝐷 → (((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
432exbidv 1925 . . 3 (𝑧 = 𝐷 → (∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
5 an12 644 . . . . . . . . . 10 ((𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ (𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
6 an12 644 . . . . . . . . . . . 12 ((𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑝𝑅𝑧 = 𝐶)))
7 ancom 464 . . . . . . . . . . . . . 14 ((𝑧 = 𝐶𝑝𝑅) ↔ (𝑝𝑅𝑧 = 𝐶))
8 eleq1 2880 . . . . . . . . . . . . . . . 16 (𝑝 = ⟨𝑥, 𝑦⟩ → (𝑝𝑅 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝑅))
9 df-br 5034 . . . . . . . . . . . . . . . 16 (𝑥𝑅𝑦 ↔ ⟨𝑥, 𝑦⟩ ∈ 𝑅)
108, 9syl6bbr 292 . . . . . . . . . . . . . . 15 (𝑝 = ⟨𝑥, 𝑦⟩ → (𝑝𝑅𝑥𝑅𝑦))
1110anbi2d 631 . . . . . . . . . . . . . 14 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑧 = 𝐶𝑝𝑅) ↔ (𝑧 = 𝐶𝑥𝑅𝑦)))
127, 11bitr3id 288 . . . . . . . . . . . . 13 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑝𝑅𝑧 = 𝐶) ↔ (𝑧 = 𝐶𝑥𝑅𝑦)))
1312anbi2d 631 . . . . . . . . . . . 12 (𝑝 = ⟨𝑥, 𝑦⟩ → (((𝑥𝐴𝑦𝐵) ∧ (𝑝𝑅𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
146, 13syl5bb 286 . . . . . . . . . . 11 (𝑝 = ⟨𝑥, 𝑦⟩ → ((𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)) ↔ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
1514pm5.32i 578 . . . . . . . . . 10 ((𝑝 = ⟨𝑥, 𝑦⟩ ∧ (𝑝𝑅 ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
165, 15bitri 278 . . . . . . . . 9 ((𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
17162exbii 1850 . . . . . . . 8 (∃𝑥𝑦(𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))))
18 19.42vv 1958 . . . . . . . 8 (∃𝑥𝑦(𝑝𝑅 ∧ (𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))) ↔ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
1917, 18bitr3i 280 . . . . . . 7 (∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))) ↔ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))))
2019opabbii 5100 . . . . . 6 {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)))} = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
21 dfoprab2 7195 . . . . . 6 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))} = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦)))}
22 rngop.1 . . . . . . . . 9 𝐹 = (𝑥𝐴, 𝑦𝐵𝐶)
23 df-mpo 7144 . . . . . . . . 9 (𝑥𝐴, 𝑦𝐵𝐶) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)}
24 dfoprab2 7195 . . . . . . . . 9 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)} = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))}
2522, 23, 243eqtri 2828 . . . . . . . 8 𝐹 = {⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))}
2625reseq1i 5818 . . . . . . 7 (𝐹𝑅) = ({⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))} ↾ 𝑅)
27 resopab 5873 . . . . . . 7 ({⟨𝑝, 𝑧⟩ ∣ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶))} ↾ 𝑅) = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
2826, 27eqtri 2824 . . . . . 6 (𝐹𝑅) = {⟨𝑝, 𝑧⟩ ∣ (𝑝𝑅 ∧ ∃𝑥𝑦(𝑝 = ⟨𝑥, 𝑦⟩ ∧ ((𝑥𝐴𝑦𝐵) ∧ 𝑧 = 𝐶)))}
2920, 21, 283eqtr4ri 2835 . . . . 5 (𝐹𝑅) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
3029rneqi 5775 . . . 4 ran (𝐹𝑅) = ran {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
31 rnoprab 7240 . . . 4 ran {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))} = {𝑧 ∣ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
3230, 31eqtri 2824 . . 3 ran (𝐹𝑅) = {𝑧 ∣ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝑧 = 𝐶𝑥𝑅𝑦))}
334, 32elab2g 3619 . 2 (𝐷𝑉 → (𝐷 ∈ ran (𝐹𝑅) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦))))
34 r2ex 3265 . 2 (∃𝑥𝐴𝑦𝐵 (𝐷 = 𝐶𝑥𝑅𝑦) ↔ ∃𝑥𝑦((𝑥𝐴𝑦𝐵) ∧ (𝐷 = 𝐶𝑥𝑅𝑦)))
3533, 34syl6bbr 292 1 (𝐷𝑉 → (𝐷 ∈ ran (𝐹𝑅) ↔ ∃𝑥𝐴𝑦𝐵 (𝐷 = 𝐶𝑥𝑅𝑦)))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 399   = wceq 1538  wex 1781  wcel 2112  {cab 2779  wrex 3110  cop 4534   class class class wbr 5033  {copab 5095  ran crn 5524  cres 5525  {coprab 7140  cmpo 7141
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2114  ax-9 2122  ax-10 2143  ax-11 2159  ax-12 2176  ax-ext 2773  ax-sep 5170  ax-nul 5177  ax-pr 5298
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2601  df-eu 2632  df-clab 2780  df-cleq 2794  df-clel 2873  df-nfc 2941  df-ral 3114  df-rex 3115  df-rab 3118  df-v 3446  df-dif 3887  df-un 3889  df-in 3891  df-ss 3901  df-nul 4247  df-if 4429  df-sn 4529  df-pr 4531  df-op 4535  df-br 5034  df-opab 5096  df-xp 5529  df-rel 5530  df-cnv 5531  df-dm 5533  df-rn 5534  df-res 5535  df-oprab 7143  df-mpo 7144
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator