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

Theorem eloprabga 7521
Description: The law of concretion for operation class abstraction. Compare elopab 5510. (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 2175, ax-11 2191. (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 3475 . 2 (𝐴𝑉𝐴 ∈ V)
2 elex 3475 . 2 (𝐵𝑊𝐵 ∈ V)
3 elex 3475 . 2 (𝐶𝑋𝐶 ∈ V)
4 opex 5444 . . 3 ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ V
5 simpr 489 . . . . . . . . . 10 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩)
65eqeq1d 2764 . . . . . . . . 9 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ↔ ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩))
7 eqcom 2769 . . . . . . . . . 10 (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ↔ ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩)
8 vex 3458 . . . . . . . . . . 11 𝑥 ∈ V
9 vex 3458 . . . . . . . . . . 11 𝑦 ∈ V
10 vex 3458 . . . . . . . . . . 11 𝑧 ∈ V
118, 9, 10otth2 5464 . . . . . . . . . 10 (⟨⟨𝑥, 𝑦⟩, 𝑧⟩ = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ↔ (𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶))
127, 11bitri 278 . . . . . . . . 9 (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ↔ (𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶))
136, 12bitrdi 290 . . . . . . . 8 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ↔ (𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶)))
1413anbi1d 642 . . . . . . 7 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → ((𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜑)))
15 eloprabga.1 . . . . . . . 8 ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) → (𝜑𝜓))
1615pm5.32i 584 . . . . . . 7 (((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜑) ↔ ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓))
1714, 16bitrdi 290 . . . . . 6 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → ((𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓)))
18173exbidv 1954 . . . . 5 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ∃𝑥𝑦𝑧((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓)))
19 df-oprab 7416 . . . . . . . . 9 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} = {𝑤 ∣ ∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑)}
2019eleq2i 2854 . . . . . . . 8 (𝑤 ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝑤 ∈ {𝑤 ∣ ∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑)})
21 abid 2744 . . . . . . . 8 (𝑤 ∈ {𝑤 ∣ ∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑)} ↔ ∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑))
2220, 21bitr2i 279 . . . . . . 7 (∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ 𝑤 ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑})
23 eleq1 2850 . . . . . . 7 (𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ → (𝑤 ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑}))
2422, 23bitrid 286 . . . . . 6 (𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ → (∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑}))
2524adantl 486 . . . . 5 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (∃𝑥𝑦𝑧(𝑤 = ⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∧ 𝜑) ↔ ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑}))
26 19.41vvv 1980 . . . . . . 7 (∃𝑥𝑦𝑧((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓) ↔ (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓))
27 elisset 2844 . . . . . . . . . 10 (𝐴 ∈ V → ∃𝑥 𝑥 = 𝐴)
28 elisset 2844 . . . . . . . . . 10 (𝐵 ∈ V → ∃𝑦 𝑦 = 𝐵)
29 elisset 2844 . . . . . . . . . 10 (𝐶 ∈ V → ∃𝑧 𝑧 = 𝐶)
3027, 28, 293anim123i 1168 . . . . . . . . 9 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶))
31 3exdistr 1989 . . . . . . . . . . 11 (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ↔ ∃𝑥(𝑥 = 𝐴 ∧ ∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
32 19.41v 1978 . . . . . . . . . . 11 (∃𝑥(𝑥 = 𝐴 ∧ ∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)) ↔ (∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
33 19.41v 1978 . . . . . . . . . . . 12 (∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶) ↔ (∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶))
3433anbi2i 634 . . . . . . . . . . 11 ((∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦(𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)) ↔ (∃𝑥 𝑥 = 𝐴 ∧ (∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
3531, 32, 343bitri 300 . . . . . . . . . 10 (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ↔ (∃𝑥 𝑥 = 𝐴 ∧ (∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
36 3anass 1110 . . . . . . . . . 10 ((∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶) ↔ (∃𝑥 𝑥 = 𝐴 ∧ (∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶)))
3735, 36bitr4i 281 . . . . . . . . 9 (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ↔ (∃𝑥 𝑥 = 𝐴 ∧ ∃𝑦 𝑦 = 𝐵 ∧ ∃𝑧 𝑧 = 𝐶))
3830, 37sylibr 237 . . . . . . . 8 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → ∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶))
3938biantrurd 541 . . . . . . 7 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (𝜓 ↔ (∃𝑥𝑦𝑧(𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓)))
4026, 39bitr4id 293 . . . . . 6 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (∃𝑥𝑦𝑧((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓) ↔ 𝜓))
4140adantr 485 . . . . 5 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (∃𝑥𝑦𝑧((𝑥 = 𝐴𝑦 = 𝐵𝑧 = 𝐶) ∧ 𝜓) ↔ 𝜓))
4218, 25, 413bitr3d 312 . . . 4 (((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) ∧ 𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓))
4342expcom 418 . . 3 (𝑤 = ⟨⟨𝐴, 𝐵⟩, 𝐶⟩ → ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓)))
444, 43vtocle 3522 . 2 ((𝐴 ∈ V ∧ 𝐵 ∈ V ∧ 𝐶 ∈ V) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓))
451, 2, 3, 44syl3an 1177 1 ((𝐴𝑉𝐵𝑊𝐶𝑋) → (⟨⟨𝐴, 𝐵⟩, 𝐶⟩ ∈ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ 𝜑} ↔ 𝜓))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 400  w3a 1102   = wceq 1569  wex 1808  wcel 2142  {cab 2740  Vcvv 3454  cop 4594  {coprab 7413
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1824  ax-4 1838  ax-5 1939  ax-6 1996  ax-7 2037  ax-8 2144  ax-9 2152  ax-12 2212  ax-ext 2734  ax-sep 5256  ax-pr 5403
This proof depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3an 1104  df-tru 1572  df-fal 1582  df-ex 1809  df-sb 2096  df-clab 2741  df-cleq 2754  df-clel 2837  df-rab 3416  df-v 3456  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-nul 4286  df-if 4487  df-sn 4589  df-pr 4591  df-op 4595  df-oprab 7416
This theorem is used by:  eloprabg  7522  ovigg  7557  vdwpc  17046  elmpps  36073  uncov  38280  brrabga  39018
  Copyright terms: Public domain W3C validator