MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  dfopif Unicode version

Theorem dfopif 3793
Description: Rewrite df-op 3649 using  if. When both arguments are sets, it reduces to the standard Kuratowski definition; otherwise, it is defined to be the empty set. (Contributed by Mario Carneiro, 26-Apr-2015.)
Assertion
Ref Expression
dfopif  |-  <. A ,  B >.  =  if ( ( A  e.  _V  /\  B  e.  _V ) ,  { { A } ,  { A ,  B } } ,  (/) )

Proof of Theorem dfopif
Dummy variable  x is distinct from all other variables.
StepHypRef Expression
1 df-op 3649 . 2  |-  <. A ,  B >.  =  { x  |  ( A  e. 
_V  /\  B  e.  _V  /\  x  e.  { { A } ,  { A ,  B } } ) }
2 df-3an 936 . . 3  |-  ( ( A  e.  _V  /\  B  e.  _V  /\  x  e.  { { A } ,  { A ,  B } } )  <->  ( ( A  e.  _V  /\  B  e.  _V )  /\  x  e.  { { A } ,  { A ,  B } } ) )
32abbii 2395 . 2  |-  { x  |  ( A  e. 
_V  /\  B  e.  _V  /\  x  e.  { { A } ,  { A ,  B } } ) }  =  { x  |  (
( A  e.  _V  /\  B  e.  _V )  /\  x  e.  { { A } ,  { A ,  B } } ) }
4 iftrue 3571 . . . 4  |-  ( ( A  e.  _V  /\  B  e.  _V )  ->  if ( ( A  e.  _V  /\  B  e.  _V ) ,  { { A } ,  { A ,  B } } ,  (/) )  =  { { A } ,  { A ,  B } } )
5 ibar 490 . . . . 5  |-  ( ( A  e.  _V  /\  B  e.  _V )  ->  ( x  e.  { { A } ,  { A ,  B } } 
<->  ( ( A  e. 
_V  /\  B  e.  _V )  /\  x  e.  { { A } ,  { A ,  B } } ) ) )
65abbi2dv 2398 . . . 4  |-  ( ( A  e.  _V  /\  B  e.  _V )  ->  { { A } ,  { A ,  B } }  =  {
x  |  ( ( A  e.  _V  /\  B  e.  _V )  /\  x  e.  { { A } ,  { A ,  B } } ) } )
74, 6eqtr2d 2316 . . 3  |-  ( ( A  e.  _V  /\  B  e.  _V )  ->  { x  |  ( ( A  e.  _V  /\  B  e.  _V )  /\  x  e.  { { A } ,  { A ,  B } } ) }  =  if ( ( A  e.  _V  /\  B  e.  _V ) ,  { { A } ,  { A ,  B } } ,  (/) ) )
8 pm2.21 100 . . . . . . 7  |-  ( -.  ( A  e.  _V  /\  B  e.  _V )  ->  ( ( A  e. 
_V  /\  B  e.  _V )  ->  x  e.  (/) ) )
98adantrd 454 . . . . . 6  |-  ( -.  ( A  e.  _V  /\  B  e.  _V )  ->  ( ( ( A  e.  _V  /\  B  e.  _V )  /\  x  e.  { { A } ,  { A ,  B } } )  ->  x  e.  (/) ) )
109abssdv 3247 . . . . 5  |-  ( -.  ( A  e.  _V  /\  B  e.  _V )  ->  { x  |  ( ( A  e.  _V  /\  B  e.  _V )  /\  x  e.  { { A } ,  { A ,  B } } ) }  C_  (/) )
11 ss0 3485 . . . . 5  |-  ( { x  |  ( ( A  e.  _V  /\  B  e.  _V )  /\  x  e.  { { A } ,  { A ,  B } } ) }  C_  (/)  ->  { x  |  ( ( A  e.  _V  /\  B  e.  _V )  /\  x  e.  { { A } ,  { A ,  B } } ) }  =  (/) )
1210, 11syl 15 . . . 4  |-  ( -.  ( A  e.  _V  /\  B  e.  _V )  ->  { x  |  ( ( A  e.  _V  /\  B  e.  _V )  /\  x  e.  { { A } ,  { A ,  B } } ) }  =  (/) )
13 iffalse 3572 . . . 4  |-  ( -.  ( A  e.  _V  /\  B  e.  _V )  ->  if ( ( A  e.  _V  /\  B  e.  _V ) ,  { { A } ,  { A ,  B } } ,  (/) )  =  (/) )
1412, 13eqtr4d 2318 . . 3  |-  ( -.  ( A  e.  _V  /\  B  e.  _V )  ->  { x  |  ( ( A  e.  _V  /\  B  e.  _V )  /\  x  e.  { { A } ,  { A ,  B } } ) }  =  if ( ( A  e.  _V  /\  B  e.  _V ) ,  { { A } ,  { A ,  B } } ,  (/) ) )
157, 14pm2.61i 156 . 2  |-  { x  |  ( ( A  e.  _V  /\  B  e.  _V )  /\  x  e.  { { A } ,  { A ,  B } } ) }  =  if ( ( A  e. 
_V  /\  B  e.  _V ) ,  { { A } ,  { A ,  B } } ,  (/) )
161, 3, 153eqtri 2307 1  |-  <. A ,  B >.  =  if ( ( A  e.  _V  /\  B  e.  _V ) ,  { { A } ,  { A ,  B } } ,  (/) )
Colors of variables: wff set class
Syntax hints:   -. wn 3    /\ wa 358    /\ w3a 934    = wceq 1623    e. wcel 1684   {cab 2269   _Vcvv 2788    C_ wss 3152   (/)c0 3455   ifcif 3565   {csn 3640   {cpr 3641   <.cop 3643
This theorem is referenced by:  dfopg  3794  opeq1  3796  opeq2  3797  nfop  3812  opprc  3817  opex  4237
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1533  ax-5 1544  ax-17 1603  ax-9 1635  ax-8 1643  ax-6 1703  ax-7 1708  ax-11 1715  ax-12 1866  ax-ext 2264
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3an 936  df-tru 1310  df-ex 1529  df-nf 1532  df-sb 1630  df-clab 2270  df-cleq 2276  df-clel 2279  df-nfc 2408  df-v 2790  df-dif 3155  df-in 3159  df-ss 3166  df-nul 3456  df-if 3566  df-op 3649
  Copyright terms: Public domain W3C validator