Users' Mathboxes Mathbox for Alan Sare < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  csbingVD Structured version   Visualization version   GIF version

Theorem csbingVD 45310
Description: Virtual deduction proof of csbin 4382. The following User's Proof is a Virtual Deduction proof completed automatically by the tools program completeusersproof.cmd, which invokes Mel L. O'Cat's mmj2 and Norm Megill's Metamath Proof Assistant. csbin 4382 is csbingVD 45310 without virtual deductions and was automatically derived from csbingVD 45310.
1:: (   𝐴𝐵   ▶   𝐴𝐵   )
2:: (𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷) }
20:2: 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦 𝐷)}
30:1,20: (   𝐴𝐵   ▶   [𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}   )
3:1,30: (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)}   )
4:1: (   𝐴𝐵   ▶   𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶 𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}   )
5:3,4: (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}   )
6:1: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦𝐶𝑦 𝐴 / 𝑥𝐶)   )
7:1: (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦𝐷𝑦 𝐴 / 𝑥𝐷)   )
8:6,7: (   𝐴𝐵   ▶   (([𝐴 / 𝑥]𝑦𝐶 [𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷 ))   )
9:1: (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑦𝐶 𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷))   )
10:9,8: (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑦𝐶 𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))   )
11:10: (   𝐴𝐵   ▶   𝑦([𝐴 / 𝑥](𝑦 𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))   )
12:11: (   𝐴𝐵   ▶   {𝑦[𝐴 / 𝑥](𝑦𝐶 𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}   )
13:5,12: (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}   )
14:: (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) = { 𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}
15:13,14: (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷)   )
qed:15: (𝐴𝐵𝐴 / 𝑥(𝐶𝐷) = ( 𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷))
(Contributed by Alan Sare, 22-Jul-2012.) (Proof modification is discouraged.) (New usage is discouraged.)
Assertion
Ref Expression
csbingVD (𝐴𝐵𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷))

Proof of Theorem csbingVD
Dummy variable 𝑦 is distinct from all other variables.
StepHypRef Expression
1 idn1 45001 . . . . . 6 (   𝐴𝐵   ▶   𝐴𝐵   )
2 df-in 3896 . . . . . . . 8 (𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}
32ax-gen 1797 . . . . . . 7 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}
4 spsbc 3741 . . . . . . 7 (𝐴𝐵 → (∀𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)} → [𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}))
51, 3, 4e10 45121 . . . . . 6 (   𝐴𝐵   ▶   [𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}   )
6 sbceqg 4352 . . . . . . 7 (𝐴𝐵 → ([𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)} ↔ 𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)}))
76biimpd 229 . . . . . 6 (𝐴𝐵 → ([𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)} → 𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)}))
81, 5, 7e11 45115 . . . . 5 (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)}   )
9 csbab 4380 . . . . . . 7 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}
109a1i 11 . . . . . 6 (𝐴𝐵𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)})
111, 10e1a 45054 . . . . 5 (   𝐴𝐵   ▶   𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}   )
12 eqeq1 2740 . . . . . 6 (𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} → (𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} ↔ 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}))
1312biimprd 248 . . . . 5 (𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} → (𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} → 𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}))
148, 11, 13e11 45115 . . . 4 (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}   )
15 sbcan 3778 . . . . . . . . 9 ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷))
1615a1i 11 . . . . . . . 8 (𝐴𝐵 → ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷)))
171, 16e1a 45054 . . . . . . 7 (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷))   )
18 sbcel2 4358 . . . . . . . . . 10 ([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶)
1918a1i 11 . . . . . . . . 9 (𝐴𝐵 → ([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶))
201, 19e1a 45054 . . . . . . . 8 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶)   )
21 sbcel2 4358 . . . . . . . . . 10 ([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷)
2221a1i 11 . . . . . . . . 9 (𝐴𝐵 → ([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷))
231, 22e1a 45054 . . . . . . . 8 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷)   )
24 pm4.38 638 . . . . . . . . 9 ((([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶) ∧ ([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷)) → (([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)))
2524ex 412 . . . . . . . 8 (([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶) → (([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷) → (([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))))
2620, 23, 25e11 45115 . . . . . . 7 (   𝐴𝐵   ▶   (([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))   )
27 bibi1 351 . . . . . . . 8 (([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷)) → (([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)) ↔ (([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))))
2827biimprd 248 . . . . . . 7 (([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷)) → ((([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)) → ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))))
2917, 26, 28e11 45115 . . . . . 6 (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))   )
3029gen11 45043 . . . . 5 (   𝐴𝐵   ▶   𝑦([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))   )
31 abbib 2805 . . . . . 6 ({𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} ↔ ∀𝑦([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)))
3231biimpri 228 . . . . 5 (∀𝑦([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)) → {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)})
3330, 32e1a 45054 . . . 4 (   𝐴𝐵   ▶   {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}   )
34 eqeq1 2740 . . . . 5 (𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} → (𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} ↔ {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}))
3534biimprd 248 . . . 4 (𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} → ({𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} → 𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}))
3614, 33, 35e11 45115 . . 3 (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}   )
37 df-in 3896 . . 3 (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}
38 eqeq2 2748 . . . 4 ((𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} → (𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) ↔ 𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}))
3938biimprcd 250 . . 3 (𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} → ((𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} → 𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷)))
4036, 37, 39e10 45121 . 2 (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷)   )
4140in1 44998 1 (𝐴𝐵𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  wal 1540   = wceq 1542  wcel 2114  {cab 2714  [wsbc 3728  csb 3837  cin 3888
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-10 2147  ax-11 2163  ax-12 2185  ax-ext 2708
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-clab 2715  df-cleq 2728  df-clel 2811  df-nfc 2885  df-v 3431  df-sbc 3729  df-csb 3838  df-dif 3892  df-in 3896  df-nul 4274  df-vd1 44997
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator