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 45633
Description: Virtual deduction proof of csbin 4410. 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 4410 is csbingVD 45633 without virtual deductions and was automatically derived from csbingVD 45633.
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 45324 . . . . . 6 (   𝐴𝐵   ▶   𝐴𝐵   )
2 df-in 3915 . . . . . . . 8 (𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}
32ax-gen 1828 . . . . . . 7 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}
4 spsbc 3760 . . . . . . 7 (𝐴𝐵 → (∀𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)} → [𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}))
51, 3, 4e10 45444 . . . . . 6 (   𝐴𝐵   ▶   [𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)}   )
6 sbceqg 4380 . . . . . . 7 (𝐴𝐵 → ([𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)} ↔ 𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)}))
76biimpd 232 . . . . . 6 (𝐴𝐵 → ([𝐴 / 𝑥](𝐶𝐷) = {𝑦 ∣ (𝑦𝐶𝑦𝐷)} → 𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)}))
81, 5, 7e11 45438 . . . . 5 (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)}   )
9 csbab 4408 . . . . . . 7 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}
109a1i 11 . . . . . 6 (𝐴𝐵𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)})
111, 10e1a 45377 . . . . 5 (   𝐴𝐵   ▶   𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}   )
12 eqeq1 2770 . . . . . 6 (𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} → (𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} ↔ 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}))
1312biimprd 251 . . . . 5 (𝐴 / 𝑥(𝐶𝐷) = 𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} → (𝐴 / 𝑥{𝑦 ∣ (𝑦𝐶𝑦𝐷)} = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} → 𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}))
148, 11, 13e11 45438 . . . 4 (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)}   )
15 sbcan 3796 . . . . . . . . 9 ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷))
1615a1i 11 . . . . . . . 8 (𝐴𝐵 → ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷)))
171, 16e1a 45377 . . . . . . 7 (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷))   )
18 sbcel2 4386 . . . . . . . . . 10 ([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶)
1918a1i 11 . . . . . . . . 9 (𝐴𝐵 → ([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶))
201, 19e1a 45377 . . . . . . . 8 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶)   )
21 sbcel2 4386 . . . . . . . . . 10 ([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷)
2221a1i 11 . . . . . . . . 9 (𝐴𝐵 → ([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷))
231, 22e1a 45377 . . . . . . . 8 (   𝐴𝐵   ▶   ([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷)   )
24 pm4.38 649 . . . . . . . . 9 ((([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶) ∧ ([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷)) → (([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)))
2524ex 418 . . . . . . . 8 (([𝐴 / 𝑥]𝑦𝐶𝑦𝐴 / 𝑥𝐶) → (([𝐴 / 𝑥]𝑦𝐷𝑦𝐴 / 𝑥𝐷) → (([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))))
2620, 23, 25e11 45438 . . . . . . 7 (   𝐴𝐵   ▶   (([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))   )
27 bibi1 354 . . . . . . . 8 (([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷)) → (([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)) ↔ (([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))))
2827biimprd 251 . . . . . . 7 (([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ ([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷)) → ((([𝐴 / 𝑥]𝑦𝐶[𝐴 / 𝑥]𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)) → ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))))
2917, 26, 28e11 45438 . . . . . 6 (   𝐴𝐵   ▶   ([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))   )
3029gen11 45366 . . . . 5 (   𝐴𝐵   ▶   𝑦([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷))   )
31 abbib 2835 . . . . . 6 ({𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} ↔ ∀𝑦([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)))
3231biimpri 231 . . . . 5 (∀𝑦([𝐴 / 𝑥](𝑦𝐶𝑦𝐷) ↔ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)) → {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)})
3330, 32e1a 45377 . . . 4 (   𝐴𝐵   ▶   {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}   )
34 eqeq1 2770 . . . . 5 (𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} → (𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} ↔ {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}))
3534biimprd 251 . . . 4 (𝐴 / 𝑥(𝐶𝐷) = {𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} → ({𝑦[𝐴 / 𝑥](𝑦𝐶𝑦𝐷)} = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} → 𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}))
3614, 33, 35e11 45438 . . 3 (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}   )
37 df-in 3915 . . 3 (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}
38 eqeq2 2778 . . . 4 ((𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} → (𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) ↔ 𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)}))
3938biimprcd 253 . . 3 (𝐴 / 𝑥(𝐶𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} → ((𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷) = {𝑦 ∣ (𝑦𝐴 / 𝑥𝐶𝑦𝐴 / 𝑥𝐷)} → 𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷)))
4036, 37, 39e10 45444 . 2 (   𝐴𝐵   ▶   𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷)   )
4140in1 45321 1 (𝐴𝐵𝐴 / 𝑥(𝐶𝐷) = (𝐴 / 𝑥𝐶𝐴 / 𝑥𝐷))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401  wal 1568   = wceq 1570  wcel 2146  {cab 2744  [wsbc 3747  csb 3856  cin 3907
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2195  ax-12 2216  ax-ext 2738
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-clab 2745  df-cleq 2758  df-clel 2841  df-nfc 2915  df-v 3460  df-sbc 3748  df-csb 3857  df-dif 3911  df-in 3915  df-nul 4290  df-vd1 45320
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator