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 44882
Description: Virtual deduction proof of csbin 4448. 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 4448 is csbingVD 44882 without virtual deductions and was automatically derived from csbingVD 44882.
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 44572 . . . . . 6 (   𝐴𝐵   ▶   𝐴𝐵   )
2 df-in 3970 . . . . . . . 8 (𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}
32ax-gen 1792 . . . . . . 7 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}
4 spsbc 3804 . . . . . . 7 (𝐴𝐵 → (∀𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)} → [𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}))
51, 3, 4e10 44692 . . . . . 6 (   𝐴𝐵   ▶   [𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}   )
6 sbceqg 4418 . . . . . . 7 (𝐴𝐵 → ([𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)} ↔ 𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)}))
76biimpd 229 . . . . . 6 (𝐴𝐵 → ([𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)} → 𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)}))
81, 5, 7e11 44686 . . . . 5 (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)}   )
9 csbab 4446 . . . . . . 7 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}
109a1i 11 . . . . . 6 (𝐴𝐵𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)})
111, 10e1a 44625 . . . . 5 (   𝐴𝐵   ▶   𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}   )
12 eqeq1 2739 . . . . . 6 (𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} → (𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} ↔ 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}))
1312biimprd 248 . . . . 5 (𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} → (𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} → 𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}))
148, 11, 13e11 44686 . . . 4 (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}   )
15 sbcan 3844 . . . . . . . . 9 ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷))
1615a1i 11 . . . . . . . 8 (𝐴𝐵 → ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷)))
171, 16e1a 44625 . . . . . . 7 (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷))   )
18 sbcel2 4424 . . . . . . . . . 10 ([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶)
1918a1i 11 . . . . . . . . 9 (𝐴𝐵 → ([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶))
201, 19e1a 44625 . . . . . . . 8 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶)   )
21 sbcel2 4424 . . . . . . . . . 10 ([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷)
2221a1i 11 . . . . . . . . 9 (𝐴𝐵 → ([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷))
231, 22e1a 44625 . . . . . . . 8 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷)   )
24 pm4.38 637 . . . . . . . . 9 ((([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶) ∧ ([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷)) → (([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)))
2524ex 412 . . . . . . . 8 (([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶) → (([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷) → (([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))))
2620, 23, 25e11 44686 . . . . . . 7 (   𝐴𝐵   ▶   (([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))   )
27 bibi1 351 . . . . . . . 8 (([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷)) → (([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)) ↔ (([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))))
2827biimprd 248 . . . . . . 7 (([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷)) → ((([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)) → ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))))
2917, 26, 28e11 44686 . . . . . 6 (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))   )
3029gen11 44614 . . . . 5 (   𝐴𝐵   ▶   𝑦([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))   )
31 abbib 2809 . . . . . 6 ({𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} ↔ ∀𝑦([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)))
3231biimpri 228 . . . . 5 (∀𝑦([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)) → {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)})
3330, 32e1a 44625 . . . 4 (   𝐴𝐵   ▶   {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}   )
34 eqeq1 2739 . . . . 5 (𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} → (𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} ↔ {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}))
3534biimprd 248 . . . 4 (𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} → ({𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} → 𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}))
3614, 33, 35e11 44686 . . 3 (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}   )
37 df-in 3970 . . 3 (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}
38 eqeq2 2747 . . . 4 ((𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} → (𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) ↔ 𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}))
3938biimprcd 250 . . 3 (𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} → ((𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} → 𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷)))
4036, 37, 39e10 44692 . 2 (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷)   )
4140in1 44569 1 (𝐴𝐵𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  wal 1535   = wceq 1537  wcel 2106  {cab 2712  [wsbc 3791  csb 3908  cin 3962
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1792  ax-4 1806  ax-5 1908  ax-6 1965  ax-7 2005  ax-8 2108  ax-9 2116  ax-10 2139  ax-11 2155  ax-12 2175  ax-ext 2706
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-tru 1540  df-fal 1550  df-ex 1777  df-nf 1781  df-sb 2063  df-clab 2713  df-cleq 2727  df-clel 2814  df-nfc 2890  df-v 3480  df-sbc 3792  df-csb 3909  df-dif 3966  df-in 3970  df-nul 4340  df-vd1 44568
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator