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

Theorem eloprabga 7382
Description: The law of concretion for operation class abstraction. Compare elopab 5440. (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 2137, ax-11 2154. (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 3450 . 2 (𝐴𝑉𝐴 ∈ V)
2 elex 3450 . 2 (𝐵𝑊𝐵 ∈ V)
3 elex 3450 . 2 (𝐶𝑋𝐶 ∈ V)
4 opex 5379 . . 3 ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ V
5 simpr 485 . . . . . . . . . 10 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩)
65eqeq1d 2740 . . . . . . . . 9 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ↔ ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩))
7 eqcom 2745 . . . . . . . . . 10 (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ↔ ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩)
8 vex 3436 . . . . . . . . . . 11 𝑥 ∈ V
9 vex 3436 . . . . . . . . . . 11 𝑦 ∈ V
10 vex 3436 . . . . . . . . . . 11 𝑧 ∈ V
118, 9, 10otth2 5398 . . . . . . . . . 10 (⟨⟨𝑥, 𝑦⟩, 𝑧⟩ = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ↔ (𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶))
127, 11bitri 274 . . . . . . . . 9 (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ↔ (𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶))
136, 12bitrdi 287 . . . . . . . 8 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ↔ (𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶)))
1413anbi1d 630 . . . . . . 7 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → ((𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜑)))
15 eloprabga.1 . . . . . . . 8 ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) → (𝜑𝜓))
1615pm5.32i 575 . . . . . . 7 (((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜑) ↔ ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓))
1714, 16bitrdi 287 . . . . . 6 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → ((𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓)))
18173exbidv 1928 . . . . 5 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ∃𝑥𝑦𝑧((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓)))
19 df-oprab 7279 . . . . . . . . 9 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} = {𝑤 ∣ ∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑)}
2019eleq2i 2830 . . . . . . . 8 (𝑤 ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝑤 ∈ {𝑤 ∣ ∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑)})
21 abid 2719 . . . . . . . 8 (𝑤 ∈ {𝑤 ∣ ∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑)} ↔ ∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑))
2220, 21bitr2i 275 . . . . . . 7 (∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ 𝑤 ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑})
23 eleq1 2826 . . . . . . 7 (𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ → (𝑤 ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑}))
2422, 23bitrid 282 . . . . . 6 (𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ → (∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑}))
2524adantl 482 . . . . 5 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑}))
26 19.41vvv 1955 . . . . . . 7 (∃𝑥𝑦𝑧((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓) ↔ (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓))
27 elisset 2820 . . . . . . . . . 10 (𝐴 ∈ V → ∃𝑥 𝑥 = 𝐴)
28 elisset 2820 . . . . . . . . . 10 (𝐵 ∈ V → ∃𝑦 𝑦 = 𝐵)
29 elisset 2820 . . . . . . . . . 10 (𝐶 ∈ V → ∃𝑧 𝑧 = 𝐶)
3027, 28, 293anim123i 1150 . . . . . . . . 9 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶))
31 3exdistr 1964 . . . . . . . . . . 11 (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ↔ ∃𝑥(𝑥 = 𝐴 ∧ ∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
32 19.41v 1953 . . . . . . . . . . 11 (∃𝑥(𝑥 = 𝐴 ∧ ∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)) ↔ (∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
33 19.41v 1953 . . . . . . . . . . . 12 (∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶) ↔ (∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶))
3433anbi2i 623 . . . . . . . . . . 11 ((∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)) ↔ (∃𝑥 𝑥 = 𝐴 ∧ (∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
3531, 32, 343bitri 297 . . . . . . . . . 10 (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ↔ (∃𝑥 𝑥 = 𝐴 ∧ (∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
36 3anass 1094 . . . . . . . . . 10 ((∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶) ↔ (∃𝑥 𝑥 = 𝐴 ∧ (∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
3735, 36bitr4i 277 . . . . . . . . 9 (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ↔ (∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶))
3830, 37sylibr 233 . . . . . . . 8 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → ∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶))
3938biantrurd 533 . . . . . . 7 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (𝜓 ↔ (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓)))
4026, 39bitr4id 290 . . . . . 6 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (∃𝑥𝑦𝑧((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓) ↔ 𝜓))
4140adantr 481 . . . . 5 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (∃𝑥𝑦𝑧((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓) ↔ 𝜓))
4218, 25, 413bitr3d 309 . . . 4 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓))
4342expcom 414 . . 3 (𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ → ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓)))
444, 43vtocle 3524 . 2 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓))
451, 2, 3, 44syl3an 1159 1 ((𝐴𝑉𝐵𝑊𝐶𝑋) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 396  w3a 1086   = wceq 1539  wex 1782  wcel 2106  {cab 2715  Vcvv 3432  cop 4567  {coprab 7276
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-12 2171  ax-ext 2709  ax-sep 5223  ax-nul 5230  ax-pr 5352
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1783  df-sb 2068  df-clab 2716  df-cleq 2730  df-clel 2816  df-rab 3073  df-v 3434  df-dif 3890  df-un 3892  df-nul 4257  df-if 4460  df-sn 4562  df-pr 4564  df-op 4568  df-oprab 7279
This theorem is referenced by:  eloprabg  7384  ovigg  7418  vdwpc  16681  elmpps  33535  uncov  35758  brrabga  36476
  Copyright terms: Public domain W3C validator