Users' Mathboxes Mathbox for BJ < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  bj-projval Structured version   Unicode version

Theorem bj-projval 33635
Description: Value of the class projection (proof can be shortened by 19 bytes by using sylancl3 33250). (Contributed by BJ, 6-Apr-2019.)
Assertion
Ref Expression
bj-projval  |-  ( A  e.  V  ->  ( A Proj  ( { B }  X. tag  C ) )  =  if ( B  =  A ,  C ,  (/) ) )

Proof of Theorem bj-projval
Dummy variable  x is distinct from all other variables.
StepHypRef Expression
1 elsncg 4050 . . . . . . . . 9  |-  ( A  e.  V  ->  ( A  e.  { B } 
<->  A  =  B ) )
2 bj-xpima2sn 33596 . . . . . . . . 9  |-  ( A  e.  { B }  ->  ( ( { B }  X. tag  C ) " { A } )  = tag 
C )
31, 2syl6bir 229 . . . . . . . 8  |-  ( A  e.  V  ->  ( A  =  B  ->  ( ( { B }  X. tag  C ) " { A } )  = tag  C
) )
43imp 429 . . . . . . 7  |-  ( ( A  e.  V  /\  A  =  B )  ->  ( ( { B }  X. tag  C ) " { A } )  = tag 
C )
54eleq2d 2537 . . . . . 6  |-  ( ( A  e.  V  /\  A  =  B )  ->  ( { x }  e.  ( ( { B }  X. tag  C ) " { A } )  <->  { x }  e. tag  C )
)
65abbidv 2603 . . . . 5  |-  ( ( A  e.  V  /\  A  =  B )  ->  { x  |  {
x }  e.  ( ( { B }  X. tag  C ) " { A } ) }  =  { x  |  {
x }  e. tag  C } )
7 df-bj-proj 33630 . . . . 5  |-  ( A Proj  ( { B }  X. tag  C ) )  =  { x  |  {
x }  e.  ( ( { B }  X. tag  C ) " { A } ) }
8 bj-taginv 33625 . . . . 5  |-  C  =  { x  |  {
x }  e. tag  C }
96, 7, 83eqtr4g 2533 . . . 4  |-  ( ( A  e.  V  /\  A  =  B )  ->  ( A Proj  ( { B }  X. tag  C
) )  =  C )
109ex 434 . . 3  |-  ( A  e.  V  ->  ( A  =  B  ->  ( A Proj  ( { B }  X. tag  C ) )  =  C ) )
11 noel 3789 . . . . 5  |-  -.  {
x }  e.  (/)
127abeq2i 2594 . . . . . 6  |-  ( x  e.  ( A Proj  ( { B }  X. tag  C
) )  <->  { x }  e.  ( ( { B }  X. tag  C
) " { A } ) )
13 elsni 4052 . . . . . . . . . 10  |-  ( A  e.  { B }  ->  A  =  B )
1413con3i 135 . . . . . . . . 9  |-  ( -.  A  =  B  ->  -.  A  e.  { B } )
15 df-nel 2665 . . . . . . . . 9  |-  ( A  e/  { B }  <->  -.  A  e.  { B } )
1614, 15sylibr 212 . . . . . . . 8  |-  ( -.  A  =  B  ->  A  e/  { B }
)
17 bj-xpima1sn 33594 . . . . . . . 8  |-  ( A  e/  { B }  ->  ( ( { B }  X. tag  C ) " { A } )  =  (/) )
1816, 17syl 16 . . . . . . 7  |-  ( -.  A  =  B  -> 
( ( { B }  X. tag  C ) " { A } )  =  (/) )
1918eleq2d 2537 . . . . . 6  |-  ( -.  A  =  B  -> 
( { x }  e.  ( ( { B }  X. tag  C ) " { A } )  <->  { x }  e.  (/) ) )
2012, 19syl5bb 257 . . . . 5  |-  ( -.  A  =  B  -> 
( x  e.  ( A Proj  ( { B }  X. tag  C ) )  <->  { x }  e.  (/) ) )
2111, 20mtbiri 303 . . . 4  |-  ( -.  A  =  B  ->  -.  x  e.  ( A Proj  ( { B }  X. tag  C ) ) )
2221eq0rdv 3820 . . 3  |-  ( -.  A  =  B  -> 
( A Proj  ( { B }  X. tag  C ) )  =  (/) )
23 ifval 3978 . . . 4  |-  ( ( A Proj  ( { B }  X. tag  C ) )  =  if ( A  =  B ,  C ,  (/) )  <->  ( ( A  =  B  ->  ( A Proj  ( { B }  X. tag  C ) )  =  C )  /\  ( -.  A  =  B  ->  ( A Proj  ( { B }  X. tag  C
) )  =  (/) ) ) )
2423biimpri 206 . . 3  |-  ( ( ( A  =  B  ->  ( A Proj  ( { B }  X. tag  C
) )  =  C )  /\  ( -.  A  =  B  -> 
( A Proj  ( { B }  X. tag  C ) )  =  (/) ) )  ->  ( A Proj  ( { B }  X. tag  C
) )  =  if ( A  =  B ,  C ,  (/) ) )
2510, 22, 24sylancl 662 . 2  |-  ( A  e.  V  ->  ( A Proj  ( { B }  X. tag  C ) )  =  if ( A  =  B ,  C ,  (/) ) )
26 eqcom 2476 . . 3  |-  ( A  =  B  <->  B  =  A )
27 ifbi 3960 . . 3  |-  ( ( A  =  B  <->  B  =  A )  ->  if ( A  =  B ,  C ,  (/) )  =  if ( B  =  A ,  C ,  (/) ) )
2826, 27ax-mp 5 . 2  |-  if ( A  =  B ,  C ,  (/) )  =  if ( B  =  A ,  C ,  (/) )
2925, 28syl6eq 2524 1  |-  ( A  e.  V  ->  ( A Proj  ( { B }  X. tag  C ) )  =  if ( B  =  A ,  C ,  (/) ) )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 184    /\ wa 369    = wceq 1379    e. wcel 1767   {cab 2452    e/ wnel 2663   (/)c0 3785   ifcif 3939   {csn 4027    X. cxp 4997   "cima 5002  tag bj-ctag 33613   Proj bj-cproj 33629
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1601  ax-4 1612  ax-5 1680  ax-6 1719  ax-7 1739  ax-9 1771  ax-10 1786  ax-11 1791  ax-12 1803  ax-13 1968  ax-ext 2445  ax-sep 4568  ax-nul 4576  ax-pr 4686
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3an 975  df-tru 1382  df-ex 1597  df-nf 1600  df-sb 1712  df-eu 2279  df-mo 2280  df-clab 2453  df-cleq 2459  df-clel 2462  df-nfc 2617  df-ne 2664  df-nel 2665  df-ral 2819  df-rex 2820  df-rab 2823  df-v 3115  df-dif 3479  df-un 3481  df-in 3483  df-ss 3490  df-nul 3786  df-if 3940  df-sn 4028  df-pr 4030  df-op 4034  df-br 4448  df-opab 4506  df-xp 5005  df-rel 5006  df-cnv 5007  df-dm 5009  df-rn 5010  df-res 5011  df-ima 5012  df-bj-sngl 33605  df-bj-tag 33614  df-bj-proj 33630
This theorem is referenced by:  bj-pr1val  33643  bj-pr2val  33657
  Copyright terms: Public domain W3C validator