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

Theorem csbcow 3104
Description: Composition law for chained substitutions into a class. Version of csbco 3103 with a disjoint variable condition, which requires fewer axioms. (Contributed by NM, 10-Nov-2005.) (Revised by GG, 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 3094 . . . . . 6  |-  [_ y  /  x ]_ B  =  { z  |  [. y  /  x ]. z  e.  B }
21abeq2i 2316 . . . . 5  |-  ( z  e.  [_ y  /  x ]_ B  <->  [. y  /  x ]. z  e.  B
)
32sbcbii 3058 . . . 4  |-  ( [. A  /  y ]. z  e.  [_ y  /  x ]_ B  <->  [. A  /  y ]. [. y  /  x ]. z  e.  B
)
4 nfv 1551 . . . . . . . . . 10  |-  F/ y A. x ( x  =  w  ->  z  e.  B )
5 equequ2 1736 . . . . . . . . . . . 12  |-  ( y  =  w  ->  (
x  =  y  <->  x  =  w ) )
65imbi1d 231 . . . . . . . . . . 11  |-  ( y  =  w  ->  (
( x  =  y  ->  z  e.  B
)  <->  ( x  =  w  ->  z  e.  B ) ) )
76albidv 1847 . . . . . . . . . 10  |-  ( y  =  w  ->  ( A. x ( x  =  y  ->  z  e.  B )  <->  A. x
( x  =  w  ->  z  e.  B
) ) )
84, 7sbiev 1815 . . . . . . . . 9  |-  ( [ w  /  y ] A. x ( x  =  y  ->  z  e.  B )  <->  A. x
( x  =  w  ->  z  e.  B
) )
9 sb6 1910 . . . . . . . . 9  |-  ( [ w  /  x ]
z  e.  B  <->  A. x
( x  =  w  ->  z  e.  B
) )
108, 9bitr4i 187 . . . . . . . 8  |-  ( [ w  /  y ] A. x ( x  =  y  ->  z  e.  B )  <->  [ w  /  x ] z  e.  B )
11 df-clab 2192 . . . . . . . 8  |-  ( w  e.  { y  | 
A. x ( x  =  y  ->  z  e.  B ) }  <->  [ w  /  y ] A. x ( x  =  y  ->  z  e.  B ) )
12 df-clab 2192 . . . . . . . 8  |-  ( w  e.  { x  |  z  e.  B }  <->  [ w  /  x ]
z  e.  B )
1310, 11, 123bitr4i 212 . . . . . . 7  |-  ( w  e.  { y  | 
A. x ( x  =  y  ->  z  e.  B ) }  <->  w  e.  { x  |  z  e.  B } )
1413eqriv 2202 . . . . . 6  |-  { y  |  A. x ( x  =  y  -> 
z  e.  B ) }  =  { x  |  z  e.  B }
1514eleq2i 2272 . . . . 5  |-  ( A  e.  { y  | 
A. x ( x  =  y  ->  z  e.  B ) }  <->  A  e.  { x  |  z  e.  B } )
16 df-sbc 2999 . . . . . 6  |-  ( [. A  /  y ]. [. y  /  x ]. z  e.  B  <->  A  e.  { y  |  [. y  /  x ]. z  e.  B } )
17 df-sbc 2999 . . . . . . . . 9  |-  ( [. y  /  x ]. z  e.  B  <->  y  e.  {
x  |  z  e.  B } )
18 df-clab 2192 . . . . . . . . . 10  |-  ( y  e.  { x  |  z  e.  B }  <->  [ y  /  x ]
z  e.  B )
19 sb6 1910 . . . . . . . . . 10  |-  ( [ y  /  x ]
z  e.  B  <->  A. x
( x  =  y  ->  z  e.  B
) )
2018, 19bitri 184 . . . . . . . . 9  |-  ( y  e.  { x  |  z  e.  B }  <->  A. x ( x  =  y  ->  z  e.  B ) )
2117, 20bitri 184 . . . . . . . 8  |-  ( [. y  /  x ]. z  e.  B  <->  A. x ( x  =  y  ->  z  e.  B ) )
2221abbii 2321 . . . . . . 7  |-  { y  |  [. y  /  x ]. z  e.  B }  =  { y  |  A. x ( x  =  y  ->  z  e.  B ) }
2322eleq2i 2272 . . . . . 6  |-  ( A  e.  { y  | 
[. y  /  x ]. z  e.  B } 
<->  A  e.  { y  |  A. x ( x  =  y  -> 
z  e.  B ) } )
2416, 23bitri 184 . . . . 5  |-  ( [. A  /  y ]. [. y  /  x ]. z  e.  B  <->  A  e.  { y  |  A. x ( x  =  y  -> 
z  e.  B ) } )
25 df-sbc 2999 . . . . 5  |-  ( [. A  /  x ]. z  e.  B  <->  A  e.  { x  |  z  e.  B } )
2615, 24, 253bitr4i 212 . . . 4  |-  ( [. A  /  y ]. [. y  /  x ]. z  e.  B  <->  [. A  /  x ]. z  e.  B
)
273, 26bitri 184 . . 3  |-  ( [. A  /  y ]. z  e.  [_ y  /  x ]_ B  <->  [. A  /  x ]. z  e.  B
)
2827abbii 2321 . 2  |-  { z  |  [. A  / 
y ]. z  e.  [_ y  /  x ]_ B }  =  { z  |  [. A  /  x ]. z  e.  B }
29 df-csb 3094 . 2  |-  [_ A  /  y ]_ [_ y  /  x ]_ B  =  { z  |  [. A  /  y ]. z  e.  [_ y  /  x ]_ B }
30 df-csb 3094 . 2  |-  [_ A  /  x ]_ B  =  { z  |  [. A  /  x ]. z  e.  B }
3128, 29, 303eqtr4i 2236 1  |-  [_ A  /  y ]_ [_ y  /  x ]_ B  = 
[_ A  /  x ]_ B
Colors of variables: wff set class
Syntax hints:    -> wi 4   A.wal 1371    = wceq 1373   [wsb 1785    e. wcel 2176   {cab 2191   [.wsbc 2998   [_csb 3093
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-5 1470  ax-7 1471  ax-gen 1472  ax-ie1 1516  ax-ie2 1517  ax-8 1527  ax-11 1529  ax-4 1533  ax-17 1549  ax-i9 1553  ax-ial 1557  ax-i5r 1558  ax-ext 2187
This theorem depends on definitions:  df-bi 117  df-tru 1376  df-nf 1484  df-sb 1786  df-clab 2192  df-cleq 2198  df-clel 2201  df-sbc 2999  df-csb 3094
This theorem is referenced by:  zproddc  11890  fprodseq  11894
  Copyright terms: Public domain W3C validator