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

Theorem csbxp 5614
Description: Distribute proper substitution through the Cartesian product of two classes. (Contributed by Alan Sare, 10-Nov-2012.) (Revised by NM, 23-Aug-2018.)
Assertion
Ref Expression
csbxp 𝐴 / 𝑥(𝐵 × 𝐶) = (𝐴 / 𝑥𝐵 × 𝐴 / 𝑥𝐶)

Proof of Theorem csbxp
Dummy variables 𝑤 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 csbab 4345 . . 3 𝐴 / 𝑥{𝑧 ∣ ∃𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶))} = {𝑧[𝐴 / 𝑥]𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶))}
2 sbcex2 3781 . . . . 5 ([𝐴 / 𝑥]𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶)) ↔ ∃𝑤[𝐴 / 𝑥]𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶)))
3 sbcex2 3781 . . . . . . 7 ([𝐴 / 𝑥]𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶)) ↔ ∃𝑦[𝐴 / 𝑥](𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶)))
4 sbcan 3768 . . . . . . . . 9 ([𝐴 / 𝑥](𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶)) ↔ ([𝐴 / 𝑥]𝑧 = ⟨𝑤, 𝑦⟩ ∧ [𝐴 / 𝑥](𝑤𝐵𝑦𝐶)))
5 sbcg 3793 . . . . . . . . . . 11 (𝐴 ∈ V → ([𝐴 / 𝑥]𝑧 = ⟨𝑤, 𝑦⟩ ↔ 𝑧 = ⟨𝑤, 𝑦⟩))
6 sbcan 3768 . . . . . . . . . . . . 13 ([𝐴 / 𝑥](𝑤𝐵𝑦𝐶) ↔ ([𝐴 / 𝑥]𝑤𝐵[𝐴 / 𝑥]𝑦𝐶))
7 sbcel2 4323 . . . . . . . . . . . . . 14 ([𝐴 / 𝑥]𝑤𝐵𝑤𝐴 / 𝑥𝐵)
8 sbcel2 4323 . . . . . . . . . . . . . 14 ([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶)
97, 8anbi12i 629 . . . . . . . . . . . . 13 (([𝐴 / 𝑥]𝑤𝐵[𝐴 / 𝑥]𝑦𝐶) ↔ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶))
106, 9bitri 278 . . . . . . . . . . . 12 ([𝐴 / 𝑥](𝑤𝐵𝑦𝐶) ↔ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶))
1110a1i 11 . . . . . . . . . . 11 (𝐴 ∈ V → ([𝐴 / 𝑥](𝑤𝐵𝑦𝐶) ↔ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶)))
125, 11anbi12d 633 . . . . . . . . . 10 (𝐴 ∈ V → (([𝐴 / 𝑥]𝑧 = ⟨𝑤, 𝑦⟩ ∧ [𝐴 / 𝑥](𝑤𝐵𝑦𝐶)) ↔ (𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶))))
13 sbcex 3730 . . . . . . . . . . . . 13 ([𝐴 / 𝑥](𝑤𝐵𝑦𝐶) → 𝐴 ∈ V)
1413con3i 157 . . . . . . . . . . . 12 𝐴 ∈ V → ¬ [𝐴 / 𝑥](𝑤𝐵𝑦𝐶))
1514intnand 492 . . . . . . . . . . 11 𝐴 ∈ V → ¬ ([𝐴 / 𝑥]𝑧 = ⟨𝑤, 𝑦⟩ ∧ [𝐴 / 𝑥](𝑤𝐵𝑦𝐶)))
16 noel 4247 . . . . . . . . . . . . . . 15 ¬ 𝑦 ∈ ∅
1716a1i 11 . . . . . . . . . . . . . 14 𝐴 ∈ V → ¬ 𝑦 ∈ ∅)
18 csbprc 4313 . . . . . . . . . . . . . 14 𝐴 ∈ V → 𝐴 / 𝑥𝐶 = ∅)
1917, 18neleqtrrd 2912 . . . . . . . . . . . . 13 𝐴 ∈ V → ¬ 𝑦𝐴 / 𝑥𝐶)
2019intnand 492 . . . . . . . . . . . 12 𝐴 ∈ V → ¬ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶))
2120intnand 492 . . . . . . . . . . 11 𝐴 ∈ V → ¬ (𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶)))
2215, 212falsed 380 . . . . . . . . . 10 𝐴 ∈ V → (([𝐴 / 𝑥]𝑧 = ⟨𝑤, 𝑦⟩ ∧ [𝐴 / 𝑥](𝑤𝐵𝑦𝐶)) ↔ (𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶))))
2312, 22pm2.61i 185 . . . . . . . . 9 (([𝐴 / 𝑥]𝑧 = ⟨𝑤, 𝑦⟩ ∧ [𝐴 / 𝑥](𝑤𝐵𝑦𝐶)) ↔ (𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶)))
244, 23bitri 278 . . . . . . . 8 ([𝐴 / 𝑥](𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶)) ↔ (𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶)))
2524exbii 1849 . . . . . . 7 (∃𝑦[𝐴 / 𝑥](𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶)) ↔ ∃𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶)))
263, 25bitri 278 . . . . . 6 ([𝐴 / 𝑥]𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶)) ↔ ∃𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶)))
2726exbii 1849 . . . . 5 (∃𝑤[𝐴 / 𝑥]𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶)) ↔ ∃𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶)))
282, 27bitri 278 . . . 4 ([𝐴 / 𝑥]𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶)) ↔ ∃𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶)))
2928abbii 2863 . . 3 {𝑧[𝐴 / 𝑥]𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶))} = {𝑧 ∣ ∃𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶))}
301, 29eqtri 2821 . 2 𝐴 / 𝑥{𝑧 ∣ ∃𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶))} = {𝑧 ∣ ∃𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶))}
31 df-xp 5525 . . . 4 (𝐵 × 𝐶) = {⟨𝑤, 𝑦⟩ ∣ (𝑤𝐵𝑦𝐶)}
32 df-opab 5093 . . . 4 {⟨𝑤, 𝑦⟩ ∣ (𝑤𝐵𝑦𝐶)} = {𝑧 ∣ ∃𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶))}
3331, 32eqtri 2821 . . 3 (𝐵 × 𝐶) = {𝑧 ∣ ∃𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶))}
3433csbeq2i 3836 . 2 𝐴 / 𝑥(𝐵 × 𝐶) = 𝐴 / 𝑥{𝑧 ∣ ∃𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐵𝑦𝐶))}
35 df-xp 5525 . . 3 (𝐴 / 𝑥𝐵 × 𝐴 / 𝑥𝐶) = {⟨𝑤, 𝑦⟩ ∣ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶)}
36 df-opab 5093 . . 3 {⟨𝑤, 𝑦⟩ ∣ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶)} = {𝑧 ∣ ∃𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶))}
3735, 36eqtri 2821 . 2 (𝐴 / 𝑥𝐵 × 𝐴 / 𝑥𝐶) = {𝑧 ∣ ∃𝑤𝑦(𝑧 = ⟨𝑤, 𝑦⟩ ∧ (𝑤𝐴 / 𝑥𝐵𝑦𝐴 / 𝑥𝐶))}
3830, 34, 373eqtr4i 2831 1 𝐴 / 𝑥(𝐵 × 𝐶) = (𝐴 / 𝑥𝐵 × 𝐴 / 𝑥𝐶)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wb 209  wa 399   = wceq 1538  wex 1781  wcel 2111  {cab 2776  Vcvv 3441  [wsbc 3720  csb 3828  c0 4243  cop 4531  {copab 5092   × cxp 5517
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 2113  ax-9 2121  ax-10 2142  ax-11 2158  ax-12 2175  ax-ext 2770
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-tru 1541  df-fal 1551  df-ex 1782  df-nf 1786  df-sb 2070  df-clab 2777  df-cleq 2791  df-clel 2870  df-nfc 2938  df-v 3443  df-sbc 3721  df-csb 3829  df-dif 3884  df-nul 4244  df-opab 5093  df-xp 5525
This theorem is referenced by:  csbres  5821  csbfinxpg  34805  csbresgVD  41601  disjxp1  41703
  Copyright terms: Public domain W3C validator