ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  csbcow Unicode version

Theorem csbcow 3038
Description: Composition law for chained substitutions into a class. Version of csbco 3037 with a disjoint variable condition, which requires fewer axioms. (Contributed by NM, 10-Nov-2005.) (Revised by Gino Giotto, 25-Aug-2024.)
Assertion
Ref Expression
csbcow  |-  [_ A  /  y ]_ [_ y  /  x ]_ B  = 
[_ A  /  x ]_ B
Distinct variable groups:    x, y    y, B
Allowed substitution hints:    A( x, y)    B( x)

Proof of Theorem csbcow
Dummy variables  z  w are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 df-csb 3028 . . . . . 6  |-  [_ y  /  x ]_ B  =  { z  |  [. y  /  x ]. z  e.  B }
21abeq2i 2265 . . . . 5  |-  ( z  e.  [_ y  /  x ]_ B  <->  [. y  /  x ]. z  e.  B
)
32sbcbii 2992 . . . 4  |-  ( [. A  /  y ]. z  e.  [_ y  /  x ]_ B  <->  [. A  /  y ]. [. y  /  x ]. z  e.  B
)
4 nfv 1505 . . . . . . . . . 10  |-  F/ y A. x ( x  =  w  ->  z  e.  B )
5 equequ2 1690 . . . . . . . . . . . 12  |-  ( y  =  w  ->  (
x  =  y  <->  x  =  w ) )
65imbi1d 230 . . . . . . . . . . 11  |-  ( y  =  w  ->  (
( x  =  y  ->  z  e.  B
)  <->  ( x  =  w  ->  z  e.  B ) ) )
76albidv 1801 . . . . . . . . . 10  |-  ( y  =  w  ->  ( A. x ( x  =  y  ->  z  e.  B )  <->  A. x
( x  =  w  ->  z  e.  B
) ) )
84, 7sbiev 1769 . . . . . . . . 9  |-  ( [ w  /  y ] A. x ( x  =  y  ->  z  e.  B )  <->  A. x
( x  =  w  ->  z  e.  B
) )
9 sb6 1863 . . . . . . . . 9  |-  ( [ w  /  x ]
z  e.  B  <->  A. x
( x  =  w  ->  z  e.  B
) )
108, 9bitr4i 186 . . . . . . . 8  |-  ( [ w  /  y ] A. x ( x  =  y  ->  z  e.  B )  <->  [ w  /  x ] z  e.  B )
11 df-clab 2141 . . . . . . . 8  |-  ( w  e.  { y  | 
A. x ( x  =  y  ->  z  e.  B ) }  <->  [ w  /  y ] A. x ( x  =  y  ->  z  e.  B ) )
12 df-clab 2141 . . . . . . . 8  |-  ( w  e.  { x  |  z  e.  B }  <->  [ w  /  x ]
z  e.  B )
1310, 11, 123bitr4i 211 . . . . . . 7  |-  ( w  e.  { y  | 
A. x ( x  =  y  ->  z  e.  B ) }  <->  w  e.  { x  |  z  e.  B } )
1413eqriv 2151 . . . . . 6  |-  { y  |  A. x ( x  =  y  -> 
z  e.  B ) }  =  { x  |  z  e.  B }
1514eleq2i 2221 . . . . 5  |-  ( A  e.  { y  | 
A. x ( x  =  y  ->  z  e.  B ) }  <->  A  e.  { x  |  z  e.  B } )
16 df-sbc 2934 . . . . . 6  |-  ( [. A  /  y ]. [. y  /  x ]. z  e.  B  <->  A  e.  { y  |  [. y  /  x ]. z  e.  B } )
17 df-sbc 2934 . . . . . . . . 9  |-  ( [. y  /  x ]. z  e.  B  <->  y  e.  {
x  |  z  e.  B } )
18 df-clab 2141 . . . . . . . . . 10  |-  ( y  e.  { x  |  z  e.  B }  <->  [ y  /  x ]
z  e.  B )
19 sb6 1863 . . . . . . . . . 10  |-  ( [ y  /  x ]
z  e.  B  <->  A. x
( x  =  y  ->  z  e.  B
) )
2018, 19bitri 183 . . . . . . . . 9  |-  ( y  e.  { x  |  z  e.  B }  <->  A. x ( x  =  y  ->  z  e.  B ) )
2117, 20bitri 183 . . . . . . . 8  |-  ( [. y  /  x ]. z  e.  B  <->  A. x ( x  =  y  ->  z  e.  B ) )
2221abbii 2270 . . . . . . 7  |-  { y  |  [. y  /  x ]. z  e.  B }  =  { y  |  A. x ( x  =  y  ->  z  e.  B ) }
2322eleq2i 2221 . . . . . 6  |-  ( A  e.  { y  | 
[. y  /  x ]. z  e.  B } 
<->  A  e.  { y  |  A. x ( x  =  y  -> 
z  e.  B ) } )
2416, 23bitri 183 . . . . 5  |-  ( [. A  /  y ]. [. y  /  x ]. z  e.  B  <->  A  e.  { y  |  A. x ( x  =  y  -> 
z  e.  B ) } )
25 df-sbc 2934 . . . . 5  |-  ( [. A  /  x ]. z  e.  B  <->  A  e.  { x  |  z  e.  B } )
2615, 24, 253bitr4i 211 . . . 4  |-  ( [. A  /  y ]. [. y  /  x ]. z  e.  B  <->  [. A  /  x ]. z  e.  B
)
273, 26bitri 183 . . 3  |-  ( [. A  /  y ]. z  e.  [_ y  /  x ]_ B  <->  [. A  /  x ]. z  e.  B
)
2827abbii 2270 . 2  |-  { z  |  [. A  / 
y ]. z  e.  [_ y  /  x ]_ B }  =  { z  |  [. A  /  x ]. z  e.  B }
29 df-csb 3028 . 2  |-  [_ A  /  y ]_ [_ y  /  x ]_ B  =  { z  |  [. A  /  y ]. z  e.  [_ y  /  x ]_ B }
30 df-csb 3028 . 2  |-  [_ A  /  x ]_ B  =  { z  |  [. A  /  x ]. z  e.  B }
3128, 29, 303eqtr4i 2185 1  |-  [_ A  /  y ]_ [_ y  /  x ]_ B  = 
[_ A  /  x ]_ B
Colors of variables: wff set class
Syntax hints:    -> wi 4   A.wal 1330    = wceq 1332   [wsb 1739    e. wcel 2125   {cab 2140   [.wsbc 2933   [_csb 3027
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-5 1424  ax-7 1425  ax-gen 1426  ax-ie1 1470  ax-ie2 1471  ax-8 1481  ax-11 1483  ax-4 1487  ax-17 1503  ax-i9 1507  ax-ial 1511  ax-i5r 1512  ax-ext 2136
This theorem depends on definitions:  df-bi 116  df-tru 1335  df-nf 1438  df-sb 1740  df-clab 2141  df-cleq 2147  df-clel 2150  df-sbc 2934  df-csb 3028
This theorem is referenced by:  zproddc  11453  fprodseq  11457
  Copyright terms: Public domain W3C validator