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

Theorem eloprabga 7467
Description: The law of concretion for operation class abstraction. Compare elopab 5474. (Contributed by NM, 14-Sep-1999.) Remove unnecessary distinct variable conditions. (Revised by David Abernethy, 19-Jun-2012.) (Revised by Mario Carneiro, 19-Dec-2013.) Avoid ax-10 2147, ax-11 2163. (Revised by Wolf Lammen, 15-Oct-2024.)
Hypothesis
Ref Expression
eloprabga.1 ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) → (𝜑𝜓))
Assertion
Ref Expression
eloprabga ((𝐴𝑉𝐵𝑊𝐶𝑋) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓))
Distinct variable groups:   𝑥,𝑦,𝑧,𝐴   𝑥,𝐵,𝑦,𝑧   𝑥,𝐶,𝑦,𝑧   𝜓,𝑥,𝑦,𝑧
Allowed substitution hints:   𝜑(𝑥,𝑦,𝑧)   𝑉(𝑥,𝑦,𝑧)   𝑊(𝑥,𝑦,𝑧)   𝑋(𝑥,𝑦,𝑧)

Proof of Theorem eloprabga
Dummy variable 𝑤 is distinct from all other variables.
StepHypRef Expression
1 elex 3460 . 2 (𝐴𝑉𝐴 ∈ V)
2 elex 3460 . 2 (𝐵𝑊𝐵 ∈ V)
3 elex 3460 . 2 (𝐶𝑋𝐶 ∈ V)
4 opex 5411 . . 3 ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ V
5 simpr 484 . . . . . . . . . 10 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩)
65eqeq1d 2737 . . . . . . . . 9 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ↔ ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩))
7 eqcom 2742 . . . . . . . . . 10 (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ↔ ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩)
8 vex 3443 . . . . . . . . . . 11 𝑥 ∈ V
9 vex 3443 . . . . . . . . . . 11 𝑦 ∈ V
10 vex 3443 . . . . . . . . . . 11 𝑧 ∈ V
118, 9, 10otth2 5430 . . . . . . . . . 10 (⟨⟨𝑥, 𝑦⟩, 𝑧⟩ = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ↔ (𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶))
127, 11bitri 275 . . . . . . . . 9 (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ↔ (𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶))
136, 12bitrdi 287 . . . . . . . 8 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ↔ (𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶)))
1413anbi1d 632 . . . . . . 7 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → ((𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜑)))
15 eloprabga.1 . . . . . . . 8 ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) → (𝜑𝜓))
1615pm5.32i 574 . . . . . . 7 (((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜑) ↔ ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓))
1714, 16bitrdi 287 . . . . . 6 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → ((𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓)))
18173exbidv 1927 . . . . 5 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ∃𝑥𝑦𝑧((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓)))
19 df-oprab 7362 . . . . . . . . 9 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} = {𝑤 ∣ ∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑)}
2019eleq2i 2827 . . . . . . . 8 (𝑤 ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝑤 ∈ {𝑤 ∣ ∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑)})
21 abid 2717 . . . . . . . 8 (𝑤 ∈ {𝑤 ∣ ∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑)} ↔ ∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑))
2220, 21bitr2i 276 . . . . . . 7 (∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ 𝑤 ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑})
23 eleq1 2823 . . . . . . 7 (𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ → (𝑤 ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑}))
2422, 23bitrid 283 . . . . . 6 (𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ → (∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑}))
2524adantl 481 . . . . 5 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑}))
26 19.41vvv 1953 . . . . . . 7 (∃𝑥𝑦𝑧((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓) ↔ (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓))
27 elisset 2817 . . . . . . . . . 10 (𝐴 ∈ V → ∃𝑥 𝑥 = 𝐴)
28 elisset 2817 . . . . . . . . . 10 (𝐵 ∈ V → ∃𝑦 𝑦 = 𝐵)
29 elisset 2817 . . . . . . . . . 10 (𝐶 ∈ V → ∃𝑧 𝑧 = 𝐶)
3027, 28, 293anim123i 1152 . . . . . . . . 9 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶))
31 3exdistr 1962 . . . . . . . . . . 11 (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ↔ ∃𝑥(𝑥 = 𝐴 ∧ ∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
32 19.41v 1951 . . . . . . . . . . 11 (∃𝑥(𝑥 = 𝐴 ∧ ∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)) ↔ (∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
33 19.41v 1951 . . . . . . . . . . . 12 (∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶) ↔ (∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶))
3433anbi2i 624 . . . . . . . . . . 11 ((∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)) ↔ (∃𝑥 𝑥 = 𝐴 ∧ (∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
3531, 32, 343bitri 297 . . . . . . . . . 10 (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ↔ (∃𝑥 𝑥 = 𝐴 ∧ (∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
36 3anass 1095 . . . . . . . . . 10 ((∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶) ↔ (∃𝑥 𝑥 = 𝐴 ∧ (∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
3735, 36bitr4i 278 . . . . . . . . 9 (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ↔ (∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶))
3830, 37sylibr 234 . . . . . . . 8 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → ∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶))
3938biantrurd 532 . . . . . . 7 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (𝜓 ↔ (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓)))
4026, 39bitr4id 290 . . . . . 6 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (∃𝑥𝑦𝑧((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓) ↔ 𝜓))
4140adantr 480 . . . . 5 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (∃𝑥𝑦𝑧((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓) ↔ 𝜓))
4218, 25, 413bitr3d 309 . . . 4 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓))
4342expcom 413 . . 3 (𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ → ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓)))
444, 43vtocle 3511 . 2 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓))
451, 2, 3, 44syl3an 1161 1 ((𝐴𝑉𝐵𝑊𝐶𝑋) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1087   = wceq 1542  wex 1781  wcel 2114  {cab 2713  Vcvv 3439  cop 4585  {coprab 7359
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 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-12 2183  ax-ext 2707  ax-sep 5240  ax-nul 5250  ax-pr 5376
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-sb 2069  df-clab 2714  df-cleq 2727  df-clel 2810  df-rab 3399  df-v 3441  df-dif 3903  df-un 3905  df-ss 3917  df-nul 4285  df-if 4479  df-sn 4580  df-pr 4582  df-op 4586  df-oprab 7362
This theorem is referenced by:  eloprabg  7468  ovigg  7503  vdwpc  16910  elmpps  35746  uncov  37771  brrabga  38511
  Copyright terms: Public domain W3C validator