# Metamath Proof Explorer

## Theorem csbsngVD

Description: Virtual deduction proof of csbsng . 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. csbsng is csbsngVD without virtual deductions and was automatically derived from csbsngVD .

 1:: |- (. A e. V ->. A e. V ). 2:1: |- (. A e. V ->. ( [. A / x ]. y = B <-> [_ A / x ]_ y = [_ A / x ]_ B ) ). 3:1: |- (. A e. V ->. [_ A / x ]_ y = y ). 4:3: |- (. A e. V ->. ( [_ A / x ]_ y = [_ A / x ]_ B <-> y = [_ A / x ]_ B ) ). 5:2,4: |- (. A e. V ->. ( [. A / x ]. y = B <-> y = [_ A / x ]_ B ) ). 6:5: |- (. A e. V ->. A. y ( [. A / x ]. y = B <-> y = [_ A / x ]_ B ) ). 7:6: |- (. A e. V ->. { y | [. A / x ]. y = B } = { y | y = [_ A / x ]_ B } ). 8:1: |- (. A e. V ->. { y | [. A / x ]. y = B } = [_ A / x ]_ { y | y = B } ). 9:7,8: |- (. A e. V ->. [_ A / x ]_ { y | y = B } = { y | y = [_ A / x ]_ B } ). 10:: |- { B } = { y | y = B } 11:10: |- A. x { B } = { y | y = B } 12:1,11: |- (. A e. V ->. [_ A / x ]_ { B } = [_ A / x ]_ { y | y = B } ). 13:9,12: |- (. A e. V ->. [_ A / x ]_ { B } = { y | y = [_ A / x ]_ B } ). 14:: |- { [_ A / x ]_ B } = { y | y = [_ A / x ]_ B } 15:13,14: |- (. A e. V ->. [_ A / x ]_ { B } = { [_ A / x ]_ B } ). qed:15: |- ( A e. V -> [_ A / x ]_ { B } = { [_ A / x ]_ B } )
(Contributed by Alan Sare, 10-Nov-2012) (Proof modification is discouraged.) (New usage is discouraged.)

Ref Expression
Assertion csbsngVD ( 𝐴𝑉 𝐴 / 𝑥 { 𝐵 } = { 𝐴 / 𝑥 𝐵 } )

### Proof

Step Hyp Ref Expression
1 idn1 (    𝐴𝑉    ▶    𝐴𝑉    )
2 sbceqg ( 𝐴𝑉 → ( [ 𝐴 / 𝑥 ] 𝑦 = 𝐵 𝐴 / 𝑥 𝑦 = 𝐴 / 𝑥 𝐵 ) )
3 1 2 e1a (    𝐴𝑉    ▶    ( [ 𝐴 / 𝑥 ] 𝑦 = 𝐵 𝐴 / 𝑥 𝑦 = 𝐴 / 𝑥 𝐵 )    )
4 csbconstg ( 𝐴𝑉 𝐴 / 𝑥 𝑦 = 𝑦 )
5 1 4 e1a (    𝐴𝑉    ▶    𝐴 / 𝑥 𝑦 = 𝑦    )
6 eqeq1 ( 𝐴 / 𝑥 𝑦 = 𝑦 → ( 𝐴 / 𝑥 𝑦 = 𝐴 / 𝑥 𝐵𝑦 = 𝐴 / 𝑥 𝐵 ) )
7 5 6 e1a (    𝐴𝑉    ▶    ( 𝐴 / 𝑥 𝑦 = 𝐴 / 𝑥 𝐵𝑦 = 𝐴 / 𝑥 𝐵 )    )
8 bibi1 ( ( [ 𝐴 / 𝑥 ] 𝑦 = 𝐵 𝐴 / 𝑥 𝑦 = 𝐴 / 𝑥 𝐵 ) → ( ( [ 𝐴 / 𝑥 ] 𝑦 = 𝐵𝑦 = 𝐴 / 𝑥 𝐵 ) ↔ ( 𝐴 / 𝑥 𝑦 = 𝐴 / 𝑥 𝐵𝑦 = 𝐴 / 𝑥 𝐵 ) ) )
9 8 biimprd ( ( [ 𝐴 / 𝑥 ] 𝑦 = 𝐵 𝐴 / 𝑥 𝑦 = 𝐴 / 𝑥 𝐵 ) → ( ( 𝐴 / 𝑥 𝑦 = 𝐴 / 𝑥 𝐵𝑦 = 𝐴 / 𝑥 𝐵 ) → ( [ 𝐴 / 𝑥 ] 𝑦 = 𝐵𝑦 = 𝐴 / 𝑥 𝐵 ) ) )
10 3 7 9 e11 (    𝐴𝑉    ▶    ( [ 𝐴 / 𝑥 ] 𝑦 = 𝐵𝑦 = 𝐴 / 𝑥 𝐵 )    )
11 10 gen11 (    𝐴𝑉    ▶   𝑦 ( [ 𝐴 / 𝑥 ] 𝑦 = 𝐵𝑦 = 𝐴 / 𝑥 𝐵 )    )
12 abbi ( ∀ 𝑦 ( [ 𝐴 / 𝑥 ] 𝑦 = 𝐵𝑦 = 𝐴 / 𝑥 𝐵 ) ↔ { 𝑦[ 𝐴 / 𝑥 ] 𝑦 = 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } )
13 12 biimpi ( ∀ 𝑦 ( [ 𝐴 / 𝑥 ] 𝑦 = 𝐵𝑦 = 𝐴 / 𝑥 𝐵 ) → { 𝑦[ 𝐴 / 𝑥 ] 𝑦 = 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } )
14 11 13 e1a (    𝐴𝑉    ▶    { 𝑦[ 𝐴 / 𝑥 ] 𝑦 = 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 }    )
15 csbab 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } = { 𝑦[ 𝐴 / 𝑥 ] 𝑦 = 𝐵 }
16 15 a1i ( 𝐴𝑉 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } = { 𝑦[ 𝐴 / 𝑥 ] 𝑦 = 𝐵 } )
17 16 eqcomd ( 𝐴𝑉 → { 𝑦[ 𝐴 / 𝑥 ] 𝑦 = 𝐵 } = 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } )
18 1 17 e1a (    𝐴𝑉    ▶    { 𝑦[ 𝐴 / 𝑥 ] 𝑦 = 𝐵 } = 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 }    )
19 eqeq1 ( { 𝑦[ 𝐴 / 𝑥 ] 𝑦 = 𝐵 } = 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } → ( { 𝑦[ 𝐴 / 𝑥 ] 𝑦 = 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } ↔ 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } ) )
20 19 biimpcd ( { 𝑦[ 𝐴 / 𝑥 ] 𝑦 = 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } → ( { 𝑦[ 𝐴 / 𝑥 ] 𝑦 = 𝐵 } = 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } → 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } ) )
21 14 18 20 e11 (    𝐴𝑉    ▶    𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 }    )
22 df-sn { 𝐵 } = { 𝑦𝑦 = 𝐵 }
23 22 ax-gen 𝑥 { 𝐵 } = { 𝑦𝑦 = 𝐵 }
24 csbeq2 ( ∀ 𝑥 { 𝐵 } = { 𝑦𝑦 = 𝐵 } → 𝐴 / 𝑥 { 𝐵 } = 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } )
25 24 a1i ( 𝐴𝑉 → ( ∀ 𝑥 { 𝐵 } = { 𝑦𝑦 = 𝐵 } → 𝐴 / 𝑥 { 𝐵 } = 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } ) )
26 1 23 25 e10 (    𝐴𝑉    ▶    𝐴 / 𝑥 { 𝐵 } = 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 }    )
27 eqeq2 ( 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } → ( 𝐴 / 𝑥 { 𝐵 } = 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } ↔ 𝐴 / 𝑥 { 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } ) )
28 27 biimpd ( 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } → ( 𝐴 / 𝑥 { 𝐵 } = 𝐴 / 𝑥 { 𝑦𝑦 = 𝐵 } → 𝐴 / 𝑥 { 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } ) )
29 21 26 28 e11 (    𝐴𝑉    ▶    𝐴 / 𝑥 { 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 }    )
30 df-sn { 𝐴 / 𝑥 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 }
31 eqeq2 ( { 𝐴 / 𝑥 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } → ( 𝐴 / 𝑥 { 𝐵 } = { 𝐴 / 𝑥 𝐵 } ↔ 𝐴 / 𝑥 { 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } ) )
32 31 biimprcd ( 𝐴 / 𝑥 { 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } → ( { 𝐴 / 𝑥 𝐵 } = { 𝑦𝑦 = 𝐴 / 𝑥 𝐵 } → 𝐴 / 𝑥 { 𝐵 } = { 𝐴 / 𝑥 𝐵 } ) )
33 29 30 32 e10 (    𝐴𝑉    ▶    𝐴 / 𝑥 { 𝐵 } = { 𝐴 / 𝑥 𝐵 }    )
34 33 in1 ( 𝐴𝑉 𝐴 / 𝑥 { 𝐵 } = { 𝐴 / 𝑥 𝐵 } )