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

Theorem csbcow 3056
Description: Composition law for chained substitutions into a class. Version of csbco 3055 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 3046 . . . . . 6  |-  [_ y  /  x ]_ B  =  { z  |  [. y  /  x ]. z  e.  B }
21abeq2i 2277 . . . . 5  |-  ( z  e.  [_ y  /  x ]_ B  <->  [. y  /  x ]. z  e.  B
)
32sbcbii 3010 . . . 4  |-  ( [. A  /  y ]. z  e.  [_ y  /  x ]_ B  <->  [. A  /  y ]. [. y  /  x ]. z  e.  B
)
4 nfv 1516 . . . . . . . . . 10  |-  F/ y A. x ( x  =  w  ->  z  e.  B )
5 equequ2 1701 . . . . . . . . . . . 12  |-  ( y  =  w  ->  (
x  =  y  <->  x  =  w ) )
65imbi1d 230 . . . . . . . . . . 11  |-  ( y  =  w  ->  (
( x  =  y  ->  z  e.  B
)  <->  ( x  =  w  ->  z  e.  B ) ) )
76albidv 1812 . . . . . . . . . 10  |-  ( y  =  w  ->  ( A. x ( x  =  y  ->  z  e.  B )  <->  A. x
( x  =  w  ->  z  e.  B
) ) )
84, 7sbiev 1780 . . . . . . . . 9  |-  ( [ w  /  y ] A. x ( x  =  y  ->  z  e.  B )  <->  A. x
( x  =  w  ->  z  e.  B
) )
9 sb6 1874 . . . . . . . . 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 2152 . . . . . . . 8  |-  ( w  e.  { y  | 
A. x ( x  =  y  ->  z  e.  B ) }  <->  [ w  /  y ] A. x ( x  =  y  ->  z  e.  B ) )
12 df-clab 2152 . . . . . . . 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 2162 . . . . . 6  |-  { y  |  A. x ( x  =  y  -> 
z  e.  B ) }  =  { x  |  z  e.  B }
1514eleq2i 2233 . . . . 5  |-  ( A  e.  { y  | 
A. x ( x  =  y  ->  z  e.  B ) }  <->  A  e.  { x  |  z  e.  B } )
16 df-sbc 2952 . . . . . 6  |-  ( [. A  /  y ]. [. y  /  x ]. z  e.  B  <->  A  e.  { y  |  [. y  /  x ]. z  e.  B } )
17 df-sbc 2952 . . . . . . . . 9  |-  ( [. y  /  x ]. z  e.  B  <->  y  e.  {
x  |  z  e.  B } )
18 df-clab 2152 . . . . . . . . . 10  |-  ( y  e.  { x  |  z  e.  B }  <->  [ y  /  x ]
z  e.  B )
19 sb6 1874 . . . . . . . . . 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 2282 . . . . . . 7  |-  { y  |  [. y  /  x ]. z  e.  B }  =  { y  |  A. x ( x  =  y  ->  z  e.  B ) }
2322eleq2i 2233 . . . . . 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 2952 . . . . 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 2282 . 2  |-  { z  |  [. A  / 
y ]. z  e.  [_ y  /  x ]_ B }  =  { z  |  [. A  /  x ]. z  e.  B }
29 df-csb 3046 . 2  |-  [_ A  /  y ]_ [_ y  /  x ]_ B  =  { z  |  [. A  /  y ]. z  e.  [_ y  /  x ]_ B }
30 df-csb 3046 . 2  |-  [_ A  /  x ]_ B  =  { z  |  [. A  /  x ]. z  e.  B }
3128, 29, 303eqtr4i 2196 1  |-  [_ A  /  y ]_ [_ y  /  x ]_ B  = 
[_ A  /  x ]_ B
Colors of variables: wff set class
Syntax hints:    -> wi 4   A.wal 1341    = wceq 1343   [wsb 1750    e. wcel 2136   {cab 2151   [.wsbc 2951   [_csb 3045
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 1435  ax-7 1436  ax-gen 1437  ax-ie1 1481  ax-ie2 1482  ax-8 1492  ax-11 1494  ax-4 1498  ax-17 1514  ax-i9 1518  ax-ial 1522  ax-i5r 1523  ax-ext 2147
This theorem depends on definitions:  df-bi 116  df-tru 1346  df-nf 1449  df-sb 1751  df-clab 2152  df-cleq 2158  df-clel 2161  df-sbc 2952  df-csb 3046
This theorem is referenced by:  zproddc  11520  fprodseq  11524
  Copyright terms: Public domain W3C validator