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

Theorem fnpr 5909
Description: Representation as a set of pairs of a function whose domain has two distinct elements. (Contributed by FL, 26-Jun-2011.) (Proof shortened by Scott Fenton, 12-Oct-2017.) (Revised by NM, 10-Dec-2017.)
Hypotheses
Ref Expression
fnpr.1  |-  I  e. 
_V
fnpr.2  |-  J  e. 
_V
Assertion
Ref Expression
fnpr  |-  ( I  =/=  J  ->  ( F  Fn  { I ,  J }  <->  F  =  { <. I ,  ( F `  I )
>. ,  <. J , 
( F `  J
) >. } ) )

Proof of Theorem fnpr
Dummy variable  x is distinct from all other variables.
StepHypRef Expression
1 fndm 5503 . . . . 5  |-  ( F  Fn  { I ,  J }  ->  dom  F  =  { I ,  J } )
2 fvex 5701 . . . . . 6  |-  ( F `
 I )  e. 
_V
3 fvex 5701 . . . . . 6  |-  ( F `
 J )  e. 
_V
42, 3dmprop 5304 . . . . 5  |-  dom  { <. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. }  =  { I ,  J }
51, 4syl6eqr 2454 . . . 4  |-  ( F  Fn  { I ,  J }  ->  dom  F  =  dom  { <. I ,  ( F `  I ) >. ,  <. J ,  ( F `  J ) >. } )
65adantl 453 . . 3  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  ->  dom  F  =  dom  { <. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } )
71adantl 453 . . . . . 6  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  ->  dom  F  =  { I ,  J } )
87eleq2d 2471 . . . . 5  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  -> 
( x  e.  dom  F  <-> 
x  e.  { I ,  J } ) )
9 vex 2919 . . . . . . 7  |-  x  e. 
_V
109elpr 3792 . . . . . 6  |-  ( x  e.  { I ,  J }  <->  ( x  =  I  \/  x  =  J ) )
11 fnpr.1 . . . . . . . . . . 11  |-  I  e. 
_V
1211, 2fvpr1 5894 . . . . . . . . . 10  |-  ( I  =/=  J  ->  ( { <. I ,  ( F `  I )
>. ,  <. J , 
( F `  J
) >. } `  I
)  =  ( F `
 I ) )
1312adantr 452 . . . . . . . . 9  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  -> 
( { <. I ,  ( F `  I
) >. ,  <. J , 
( F `  J
) >. } `  I
)  =  ( F `
 I ) )
1413eqcomd 2409 . . . . . . . 8  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  -> 
( F `  I
)  =  ( {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } `  I ) )
15 fveq2 5687 . . . . . . . . 9  |-  ( x  =  I  ->  ( F `  x )  =  ( F `  I ) )
16 fveq2 5687 . . . . . . . . 9  |-  ( x  =  I  ->  ( { <. I ,  ( F `  I )
>. ,  <. J , 
( F `  J
) >. } `  x
)  =  ( {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } `  I ) )
1715, 16eqeq12d 2418 . . . . . . . 8  |-  ( x  =  I  ->  (
( F `  x
)  =  ( {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } `  x )  <-> 
( F `  I
)  =  ( {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } `  I ) ) )
1814, 17syl5ibrcom 214 . . . . . . 7  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  -> 
( x  =  I  ->  ( F `  x )  =  ( { <. I ,  ( F `  I )
>. ,  <. J , 
( F `  J
) >. } `  x
) ) )
19 fnpr.2 . . . . . . . . . . 11  |-  J  e. 
_V
2019, 3fvpr2 5895 . . . . . . . . . 10  |-  ( I  =/=  J  ->  ( { <. I ,  ( F `  I )
>. ,  <. J , 
( F `  J
) >. } `  J
)  =  ( F `
 J ) )
2120adantr 452 . . . . . . . . 9  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  -> 
( { <. I ,  ( F `  I
) >. ,  <. J , 
( F `  J
) >. } `  J
)  =  ( F `
 J ) )
2221eqcomd 2409 . . . . . . . 8  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  -> 
( F `  J
)  =  ( {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } `  J ) )
23 fveq2 5687 . . . . . . . . 9  |-  ( x  =  J  ->  ( F `  x )  =  ( F `  J ) )
24 fveq2 5687 . . . . . . . . 9  |-  ( x  =  J  ->  ( { <. I ,  ( F `  I )
>. ,  <. J , 
( F `  J
) >. } `  x
)  =  ( {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } `  J ) )
2523, 24eqeq12d 2418 . . . . . . . 8  |-  ( x  =  J  ->  (
( F `  x
)  =  ( {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } `  x )  <-> 
( F `  J
)  =  ( {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } `  J ) ) )
2622, 25syl5ibrcom 214 . . . . . . 7  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  -> 
( x  =  J  ->  ( F `  x )  =  ( { <. I ,  ( F `  I )
>. ,  <. J , 
( F `  J
) >. } `  x
) ) )
2718, 26jaod 370 . . . . . 6  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  -> 
( ( x  =  I  \/  x  =  J )  ->  ( F `  x )  =  ( { <. I ,  ( F `  I ) >. ,  <. J ,  ( F `  J ) >. } `  x ) ) )
2810, 27syl5bi 209 . . . . 5  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  -> 
( x  e.  {
I ,  J }  ->  ( F `  x
)  =  ( {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } `  x ) ) )
298, 28sylbid 207 . . . 4  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  -> 
( x  e.  dom  F  ->  ( F `  x )  =  ( { <. I ,  ( F `  I )
>. ,  <. J , 
( F `  J
) >. } `  x
) ) )
3029ralrimiv 2748 . . 3  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  ->  A. x  e.  dom  F ( F `  x
)  =  ( {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } `  x ) )
31 fnfun 5501 . . . 4  |-  ( F  Fn  { I ,  J }  ->  Fun  F )
3211, 19, 2, 3funpr 5461 . . . 4  |-  ( I  =/=  J  ->  Fun  {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } )
33 eqfunfv 5791 . . . 4  |-  ( ( Fun  F  /\  Fun  {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } )  ->  ( F  =  { <. I ,  ( F `  I
) >. ,  <. J , 
( F `  J
) >. }  <->  ( dom  F  =  dom  { <. I ,  ( F `  I ) >. ,  <. J ,  ( F `  J ) >. }  /\  A. x  e.  dom  F
( F `  x
)  =  ( {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. } `  x ) ) ) )
3431, 32, 33syl2anr 465 . . 3  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  -> 
( F  =  { <. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. }  <->  ( dom  F  =  dom  { <. I ,  ( F `  I
) >. ,  <. J , 
( F `  J
) >. }  /\  A. x  e.  dom  F ( F `  x )  =  ( { <. I ,  ( F `  I ) >. ,  <. J ,  ( F `  J ) >. } `  x ) ) ) )
356, 30, 34mpbir2and 889 . 2  |-  ( ( I  =/=  J  /\  F  Fn  { I ,  J } )  ->  F  =  { <. I ,  ( F `  I
) >. ,  <. J , 
( F `  J
) >. } )
364a1i 11 . . . 4  |-  ( I  =/=  J  ->  dom  {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. }  =  { I ,  J } )
37 df-fn 5416 . . . 4  |-  ( {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. }  Fn  { I ,  J }  <->  ( Fun  {
<. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. }  /\  dom  { <. I ,  ( F `
 I ) >. ,  <. J ,  ( F `  J )
>. }  =  { I ,  J } ) )
3832, 36, 37sylanbrc 646 . . 3  |-  ( I  =/=  J  ->  { <. I ,  ( F `  I ) >. ,  <. J ,  ( F `  J ) >. }  Fn  { I ,  J }
)
39 fneq1 5493 . . . 4  |-  ( F  =  { <. I ,  ( F `  I
) >. ,  <. J , 
( F `  J
) >. }  ->  ( F  Fn  { I ,  J }  <->  { <. I ,  ( F `  I
) >. ,  <. J , 
( F `  J
) >. }  Fn  {
I ,  J }
) )
4039biimprd 215 . . 3  |-  ( F  =  { <. I ,  ( F `  I
) >. ,  <. J , 
( F `  J
) >. }  ->  ( { <. I ,  ( F `  I )
>. ,  <. J , 
( F `  J
) >. }  Fn  {
I ,  J }  ->  F  Fn  { I ,  J } ) )
4138, 40mpan9 456 . 2  |-  ( ( I  =/=  J  /\  F  =  { <. I ,  ( F `  I
) >. ,  <. J , 
( F `  J
) >. } )  ->  F  Fn  { I ,  J } )
4235, 41impbida 806 1  |-  ( I  =/=  J  ->  ( F  Fn  { I ,  J }  <->  F  =  { <. I ,  ( F `  I )
>. ,  <. J , 
( F `  J
) >. } ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 177    \/ wo 358    /\ wa 359    = wceq 1649    e. wcel 1721    =/= wne 2567   A.wral 2666   _Vcvv 2916   {cpr 3775   <.cop 3777   dom cdm 4837   Fun wfun 5407    Fn wfn 5408   ` cfv 5413
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1552  ax-5 1563  ax-17 1623  ax-9 1662  ax-8 1683  ax-13 1723  ax-14 1725  ax-6 1740  ax-7 1745  ax-11 1757  ax-12 1946  ax-ext 2385  ax-sep 4290  ax-nul 4298  ax-pow 4337  ax-pr 4363
This theorem depends on definitions:  df-bi 178  df-or 360  df-an 361  df-3an 938  df-tru 1325  df-ex 1548  df-nf 1551  df-sb 1656  df-eu 2258  df-mo 2259  df-clab 2391  df-cleq 2397  df-clel 2400  df-nfc 2529  df-ne 2569  df-ral 2671  df-rex 2672  df-rab 2675  df-v 2918  df-sbc 3122  df-csb 3212  df-dif 3283  df-un 3285  df-in 3287  df-ss 3294  df-nul 3589  df-if 3700  df-sn 3780  df-pr 3781  df-op 3783  df-uni 3976  df-br 4173  df-opab 4227  df-mpt 4228  df-id 4458  df-xp 4843  df-rel 4844  df-cnv 4845  df-co 4846  df-dm 4847  df-rn 4848  df-res 4849  df-ima 4850  df-iota 5377  df-fun 5415  df-fn 5416  df-fv 5421
  Copyright terms: Public domain W3C validator