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

Theorem fprg 5890
Description: A function with a domain of two elements. (Contributed by FL, 2-Feb-2014.)
Assertion
Ref Expression
fprg  |-  ( ( ( A  e.  E  /\  B  e.  F
)  /\  ( C  e.  G  /\  D  e.  H )  /\  A  =/=  B )  ->  { <. A ,  C >. ,  <. B ,  D >. } : { A ,  B } --> { C ,  D }
)

Proof of Theorem fprg
StepHypRef Expression
1 elex 2980 . . . 4  |-  ( A  e.  E  ->  A  e.  _V )
2 elex 2980 . . . 4  |-  ( B  e.  F  ->  B  e.  _V )
31, 2anim12i 566 . . 3  |-  ( ( A  e.  E  /\  B  e.  F )  ->  ( A  e.  _V  /\  B  e.  _V )
)
4 elex 2980 . . . 4  |-  ( C  e.  G  ->  C  e.  _V )
5 elex 2980 . . . 4  |-  ( D  e.  H  ->  D  e.  _V )
64, 5anim12i 566 . . 3  |-  ( ( C  e.  G  /\  D  e.  H )  ->  ( C  e.  _V  /\  D  e.  _V )
)
7 neeq1 2615 . . . . 5  |-  ( A  =  if ( A  e.  _V ,  A ,  (/) )  ->  ( A  =/=  B  <->  if ( A  e.  _V ,  A ,  (/) )  =/=  B
) )
8 opeq1 4058 . . . . . . 7  |-  ( A  =  if ( A  e.  _V ,  A ,  (/) )  ->  <. A ,  C >.  =  <. if ( A  e.  _V ,  A ,  (/) ) ,  C >. )
98preq1d 3959 . . . . . 6  |-  ( A  =  if ( A  e.  _V ,  A ,  (/) )  ->  { <. A ,  C >. ,  <. B ,  D >. }  =  { <. if ( A  e.  _V ,  A ,  (/) ) ,  C >. ,  <. B ,  D >. } )
10 preq1 3953 . . . . . 6  |-  ( A  =  if ( A  e.  _V ,  A ,  (/) )  ->  { A ,  B }  =  { if ( A  e.  _V ,  A ,  (/) ) ,  B } )
119, 10feq12d 5547 . . . . 5  |-  ( A  =  if ( A  e.  _V ,  A ,  (/) )  ->  ( { <. A ,  C >. ,  <. B ,  D >. } : { A ,  B } --> { C ,  D }  <->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  C >. ,  <. B ,  D >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  B } --> { C ,  D } ) )
127, 11imbi12d 320 . . . 4  |-  ( A  =  if ( A  e.  _V ,  A ,  (/) )  ->  (
( A  =/=  B  ->  { <. A ,  C >. ,  <. B ,  D >. } : { A ,  B } --> { C ,  D } )  <->  ( if ( A  e.  _V ,  A ,  (/) )  =/= 
B  ->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  C >. ,  <. B ,  D >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  B } --> { C ,  D } ) ) )
13 neeq2 2616 . . . . 5  |-  ( B  =  if ( B  e.  _V ,  B ,  (/) )  ->  ( if ( A  e.  _V ,  A ,  (/) )  =/= 
B  <->  if ( A  e. 
_V ,  A ,  (/) )  =/=  if ( B  e.  _V ,  B ,  (/) ) ) )
14 opeq1 4058 . . . . . . 7  |-  ( B  =  if ( B  e.  _V ,  B ,  (/) )  ->  <. B ,  D >.  =  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >. )
1514preq2d 3960 . . . . . 6  |-  ( B  =  if ( B  e.  _V ,  B ,  (/) )  ->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  C >. ,  <. B ,  D >. }  =  { <. if ( A  e. 
_V ,  A ,  (/) ) ,  C >. , 
<. if ( B  e. 
_V ,  B ,  (/) ) ,  D >. } )
16 preq2 3954 . . . . . 6  |-  ( B  =  if ( B  e.  _V ,  B ,  (/) )  ->  { if ( A  e.  _V ,  A ,  (/) ) ,  B }  =  { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } )
1715, 16feq12d 5547 . . . . 5  |-  ( B  =  if ( B  e.  _V ,  B ,  (/) )  ->  ( { <. if ( A  e.  _V ,  A ,  (/) ) ,  C >. ,  <. B ,  D >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  B } --> { C ,  D }  <->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  C >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } --> { C ,  D } ) )
1813, 17imbi12d 320 . . . 4  |-  ( B  =  if ( B  e.  _V ,  B ,  (/) )  ->  (
( if ( A  e.  _V ,  A ,  (/) )  =/=  B  ->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  C >. ,  <. B ,  D >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  B } --> { C ,  D } )  <->  ( if ( A  e.  _V ,  A ,  (/) )  =/= 
if ( B  e. 
_V ,  B ,  (/) )  ->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  C >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } --> { C ,  D } ) ) )
19 opeq2 4059 . . . . . . 7  |-  ( C  =  if ( C  e.  _V ,  C ,  (/) )  ->  <. if ( A  e.  _V ,  A ,  (/) ) ,  C >.  =  <. if ( A  e.  _V ,  A ,  (/) ) ,  if ( C  e. 
_V ,  C ,  (/) ) >. )
2019preq1d 3959 . . . . . 6  |-  ( C  =  if ( C  e.  _V ,  C ,  (/) )  ->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  C >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >. }  =  { <. if ( A  e. 
_V ,  A ,  (/) ) ,  if ( C  e.  _V ,  C ,  (/) ) >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >. } )
21 eqidd 2443 . . . . . 6  |-  ( C  =  if ( C  e.  _V ,  C ,  (/) )  ->  { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) }  =  { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } )
22 preq1 3953 . . . . . 6  |-  ( C  =  if ( C  e.  _V ,  C ,  (/) )  ->  { C ,  D }  =  { if ( C  e.  _V ,  C ,  (/) ) ,  D } )
2320, 21, 22feq123d 5548 . . . . 5  |-  ( C  =  if ( C  e.  _V ,  C ,  (/) )  ->  ( { <. if ( A  e.  _V ,  A ,  (/) ) ,  C >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } --> { C ,  D }  <->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  if ( C  e. 
_V ,  C ,  (/) ) >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } --> { if ( C  e.  _V ,  C ,  (/) ) ,  D } ) )
2423imbi2d 316 . . . 4  |-  ( C  =  if ( C  e.  _V ,  C ,  (/) )  ->  (
( if ( A  e.  _V ,  A ,  (/) )  =/=  if ( B  e.  _V ,  B ,  (/) )  ->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  C >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } --> { C ,  D } )  <->  ( if ( A  e.  _V ,  A ,  (/) )  =/= 
if ( B  e. 
_V ,  B ,  (/) )  ->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  if ( C  e. 
_V ,  C ,  (/) ) >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } --> { if ( C  e.  _V ,  C ,  (/) ) ,  D } ) ) )
25 opeq2 4059 . . . . . . 7  |-  ( D  =  if ( D  e.  _V ,  D ,  (/) )  ->  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >.  =  <. if ( B  e.  _V ,  B ,  (/) ) ,  if ( D  e. 
_V ,  D ,  (/) ) >. )
2625preq2d 3960 . . . . . 6  |-  ( D  =  if ( D  e.  _V ,  D ,  (/) )  ->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  if ( C  e. 
_V ,  C ,  (/) ) >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >. }  =  { <. if ( A  e. 
_V ,  A ,  (/) ) ,  if ( C  e.  _V ,  C ,  (/) ) >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  if ( D  e.  _V ,  D ,  (/) ) >. } )
27 eqidd 2443 . . . . . 6  |-  ( D  =  if ( D  e.  _V ,  D ,  (/) )  ->  { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) }  =  { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } )
28 preq2 3954 . . . . . 6  |-  ( D  =  if ( D  e.  _V ,  D ,  (/) )  ->  { if ( C  e.  _V ,  C ,  (/) ) ,  D }  =  { if ( C  e.  _V ,  C ,  (/) ) ,  if ( D  e. 
_V ,  D ,  (/) ) } )
2926, 27, 28feq123d 5548 . . . . 5  |-  ( D  =  if ( D  e.  _V ,  D ,  (/) )  ->  ( { <. if ( A  e.  _V ,  A ,  (/) ) ,  if ( C  e.  _V ,  C ,  (/) ) >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } --> { if ( C  e.  _V ,  C ,  (/) ) ,  D }  <->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  if ( C  e. 
_V ,  C ,  (/) ) >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  if ( D  e. 
_V ,  D ,  (/) ) >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } --> { if ( C  e.  _V ,  C ,  (/) ) ,  if ( D  e. 
_V ,  D ,  (/) ) } ) )
3029imbi2d 316 . . . 4  |-  ( D  =  if ( D  e.  _V ,  D ,  (/) )  ->  (
( if ( A  e.  _V ,  A ,  (/) )  =/=  if ( B  e.  _V ,  B ,  (/) )  ->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  if ( C  e.  _V ,  C ,  (/) ) >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  D >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } --> { if ( C  e.  _V ,  C ,  (/) ) ,  D } )  <->  ( if ( A  e.  _V ,  A ,  (/) )  =/= 
if ( B  e. 
_V ,  B ,  (/) )  ->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  if ( C  e. 
_V ,  C ,  (/) ) >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  if ( D  e. 
_V ,  D ,  (/) ) >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } --> { if ( C  e.  _V ,  C ,  (/) ) ,  if ( D  e. 
_V ,  D ,  (/) ) } ) ) )
31 0ex 4421 . . . . . 6  |-  (/)  e.  _V
3231elimel 3851 . . . . 5  |-  if ( A  e.  _V ,  A ,  (/) )  e. 
_V
3331elimel 3851 . . . . 5  |-  if ( B  e.  _V ,  B ,  (/) )  e. 
_V
3431elimel 3851 . . . . 5  |-  if ( C  e.  _V ,  C ,  (/) )  e. 
_V
3531elimel 3851 . . . . 5  |-  if ( D  e.  _V ,  D ,  (/) )  e. 
_V
3632, 33, 34, 35fpr 5889 . . . 4  |-  ( if ( A  e.  _V ,  A ,  (/) )  =/= 
if ( B  e. 
_V ,  B ,  (/) )  ->  { <. if ( A  e.  _V ,  A ,  (/) ) ,  if ( C  e. 
_V ,  C ,  (/) ) >. ,  <. if ( B  e.  _V ,  B ,  (/) ) ,  if ( D  e. 
_V ,  D ,  (/) ) >. } : { if ( A  e.  _V ,  A ,  (/) ) ,  if ( B  e. 
_V ,  B ,  (/) ) } --> { if ( C  e.  _V ,  C ,  (/) ) ,  if ( D  e. 
_V ,  D ,  (/) ) } )
3712, 18, 24, 30, 36dedth4h 3843 . . 3  |-  ( ( ( A  e.  _V  /\  B  e.  _V )  /\  ( C  e.  _V  /\  D  e.  _V )
)  ->  ( A  =/=  B  ->  { <. A ,  C >. ,  <. B ,  D >. } : { A ,  B } --> { C ,  D }
) )
383, 6, 37syl2an 477 . 2  |-  ( ( ( A  e.  E  /\  B  e.  F
)  /\  ( C  e.  G  /\  D  e.  H ) )  -> 
( A  =/=  B  ->  { <. A ,  C >. ,  <. B ,  D >. } : { A ,  B } --> { C ,  D } ) )
39383impia 1184 1  |-  ( ( ( A  e.  E  /\  B  e.  F
)  /\  ( C  e.  G  /\  D  e.  H )  /\  A  =/=  B )  ->  { <. A ,  C >. ,  <. B ,  D >. } : { A ,  B } --> { C ,  D }
)
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    /\ wa 369    /\ w3a 965    = wceq 1369    e. wcel 1756    =/= wne 2605   _Vcvv 2971   (/)c0 3636   ifcif 3790   {cpr 3878   <.cop 3882   -->wf 5413
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1591  ax-4 1602  ax-5 1670  ax-6 1708  ax-7 1728  ax-9 1760  ax-10 1775  ax-11 1780  ax-12 1792  ax-13 1943  ax-ext 2423  ax-sep 4412  ax-nul 4420  ax-pr 4530
This theorem depends on definitions:  df-bi 185  df-or 370  df-an 371  df-3an 967  df-tru 1372  df-ex 1587  df-nf 1590  df-sb 1701  df-eu 2257  df-mo 2258  df-clab 2429  df-cleq 2435  df-clel 2438  df-nfc 2567  df-ne 2607  df-ral 2719  df-rex 2720  df-rab 2723  df-v 2973  df-dif 3330  df-un 3332  df-in 3334  df-ss 3341  df-nul 3637  df-if 3791  df-sn 3877  df-pr 3879  df-op 3883  df-br 4292  df-opab 4350  df-id 4635  df-xp 4845  df-rel 4846  df-cnv 4847  df-co 4848  df-dm 4849  df-rn 4850  df-fun 5419  df-fn 5420  df-f 5421
This theorem is referenced by:  ftpg  5891  wrdlen2i  12545  2trllemH  23450  constr1trl  23486  constr3trllem3  23537  mapprop  30734  zlmodzxzel  30750  ldepspr  31005  zlmodzxzldeplem1  31040
  Copyright terms: Public domain W3C validator