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

Theorem funopsn 5761
Description: If a function is an ordered pair then it is a singleton of an ordered pair. (Contributed by AV, 20-Sep-2020.) (Proof shortened by AV, 15-Jul-2021.) A function is a class of ordered pairs, so the fact that an ordered pair may sometimes be itself a function is an "accident" depending on the specific encoding of ordered pairs as classes (in set.mm, the Kuratowski encoding). A more meaningful statement is funsng 5319, as relsnopg 4778 is to relop 4827. (New usage is discouraged.)
Hypotheses
Ref Expression
funopsn.x  |-  X  e. 
_V
funopsn.y  |-  Y  e. 
_V
Assertion
Ref Expression
funopsn  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  E. a
( X  =  {
a }  /\  F  =  { <. a ,  a
>. } ) )
Distinct variable groups:    F, a    X, a    Y, a

Proof of Theorem funopsn
Dummy variables  b  c  d are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 funopsn.x . . 3  |-  X  e. 
_V
2 funopsn.y . . 3  |-  Y  e. 
_V
3 opm 4277 . . 3  |-  ( E. b  b  e.  <. X ,  Y >.  <->  ( X  e.  _V  /\  Y  e. 
_V ) )
41, 2, 3mpbir2an 944 . 2  |-  E. b 
b  e.  <. X ,  Y >.
5 funrel 5287 . . . . . . 7  |-  ( Fun 
F  ->  Rel  F )
65ad2antrr 488 . . . . . 6  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  Rel  F )
7 simpr 110 . . . . . . 7  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  b  e.  <. X ,  Y >. )
8 simplr 528 . . . . . . 7  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  F  =  <. X ,  Y >. )
97, 8eleqtrrd 2284 . . . . . 6  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  b  e.  F )
10 elrel 4776 . . . . . 6  |-  ( ( Rel  F  /\  b  e.  F )  ->  E. c E. d  b  =  <. c ,  d >.
)
116, 9, 10syl2anc 411 . . . . 5  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  E. c E. d  b  =  <. c ,  d >.
)
12 vex 2774 . . . . . . . . . . . . . . . 16  |-  c  e. 
_V
13 vex 2774 . . . . . . . . . . . . . . . 16  |-  d  e. 
_V
1412, 13dfop 3817 . . . . . . . . . . . . . . 15  |-  <. c ,  d >.  =  { { c } ,  { c ,  d } }
1514eqeq2i 2215 . . . . . . . . . . . . . 14  |-  ( b  =  <. c ,  d
>. 
<->  b  =  { {
c } ,  {
c ,  d } } )
1615biimpi 120 . . . . . . . . . . . . 13  |-  ( b  =  <. c ,  d
>.  ->  b  =  { { c } ,  { c ,  d } } )
1716adantl 277 . . . . . . . . . . . 12  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  b  =  { { c } ,  { c ,  d } } )
18 vex 2774 . . . . . . . . . . . . . . . . 17  |-  b  e. 
_V
1918, 1, 2elop 4274 . . . . . . . . . . . . . . . 16  |-  ( b  e.  <. X ,  Y >.  <-> 
( b  =  { X }  \/  b  =  { X ,  Y } ) )
207, 19sylib 122 . . . . . . . . . . . . . . 15  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  ( b  =  { X }  \/  b  =  { X ,  Y } ) )
21 dfsn2 3646 . . . . . . . . . . . . . . . . . . 19  |-  { X }  =  { X ,  X }
22 simpl 109 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  Fun  F )
23 simpr 110 . . . . . . . . . . . . . . . . . . . . . . 23  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  F  =  <. X ,  Y >. )
2423funeqd 5292 . . . . . . . . . . . . . . . . . . . . . 22  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  ( Fun  F  <->  Fun  <. X ,  Y >. ) )
2522, 24mpbid 147 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  Fun  <. X ,  Y >. )
26 funopg 5304 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( X  e.  _V  /\  Y  e.  _V  /\  Fun  <. X ,  Y >. )  ->  X  =  Y )
271, 2, 25, 26mp3an12i 1353 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  X  =  Y )
2827preq2d 3716 . . . . . . . . . . . . . . . . . . 19  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  { X ,  X }  =  { X ,  Y }
)
2921, 28eqtrid 2249 . . . . . . . . . . . . . . . . . 18  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  { X }  =  { X ,  Y } )
3029eqeq2d 2216 . . . . . . . . . . . . . . . . 17  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  ( b  =  { X }  <->  b  =  { X ,  Y }
) )
3130orbi2d 791 . . . . . . . . . . . . . . . 16  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  ( (
b  =  { X }  \/  b  =  { X } )  <->  ( b  =  { X }  \/  b  =  { X ,  Y } ) ) )
3231adantr 276 . . . . . . . . . . . . . . 15  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  ( (
b  =  { X }  \/  b  =  { X } )  <->  ( b  =  { X }  \/  b  =  { X ,  Y } ) ) )
3320, 32mpbird 167 . . . . . . . . . . . . . 14  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  ( b  =  { X }  \/  b  =  { X } ) )
34 oridm 758 . . . . . . . . . . . . . 14  |-  ( ( b  =  { X }  \/  b  =  { X } )  <->  b  =  { X } )
3533, 34sylib 122 . . . . . . . . . . . . 13  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  b  =  { X } )
3635adantr 276 . . . . . . . . . . . 12  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  b  =  { X } )
3717, 36eqtr3d 2239 . . . . . . . . . . 11  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  { {
c } ,  {
c ,  d } }  =  { X } )
3812snex 4228 . . . . . . . . . . . 12  |-  { c }  e.  _V
39 zfpair2 4253 . . . . . . . . . . . 12  |-  { c ,  d }  e.  _V
4038, 39, 1preqsn 3815 . . . . . . . . . . 11  |-  ( { { c } ,  { c ,  d } }  =  { X }  <->  ( { c }  =  { c ,  d }  /\  { c ,  d }  =  X ) )
4137, 40sylib 122 . . . . . . . . . 10  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  ( { c }  =  {
c ,  d }  /\  { c ,  d }  =  X ) )
4241simpld 112 . . . . . . . . 9  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  { c }  =  { c ,  d } )
4341simprd 114 . . . . . . . . 9  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  { c ,  d }  =  X )
4442, 43eqtr2d 2238 . . . . . . . 8  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  X  =  { c } )
451, 2dfop 3817 . . . . . . . . . . 11  |-  <. X ,  Y >.  =  { { X } ,  { X ,  Y } }
46 dfsn2 3646 . . . . . . . . . . . 12  |-  { { X } }  =  { { X } ,  { X } }
4729preq2d 3716 . . . . . . . . . . . 12  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  { { X } ,  { X } }  =  { { X } ,  { X ,  Y } } )
4846, 47eqtrid 2249 . . . . . . . . . . 11  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  { { X } }  =  { { X } ,  { X ,  Y } } )
4945, 23, 483eqtr4a 2263 . . . . . . . . . 10  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  F  =  { { X } }
)
5049ad2antrr 488 . . . . . . . . 9  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  F  =  { { X } } )
5144sneqd 3645 . . . . . . . . . . 11  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  { X }  =  { { c } } )
5251sneqd 3645 . . . . . . . . . 10  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  { { X } }  =  { { { c } } } )
5312opid 3836 . . . . . . . . . . 11  |-  <. c ,  c >.  =  { { c } }
5453sneqi 3644 . . . . . . . . . 10  |-  { <. c ,  c >. }  =  { { { c } } }
5552, 54eqtr4di 2255 . . . . . . . . 9  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  { { X } }  =  { <. c ,  c >. } )
5650, 55eqtrd 2237 . . . . . . . 8  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  F  =  { <. c ,  c
>. } )
57 sneq 3643 . . . . . . . . . . 11  |-  ( a  =  c  ->  { a }  =  { c } )
5857eqeq2d 2216 . . . . . . . . . 10  |-  ( a  =  c  ->  ( X  =  { a } 
<->  X  =  { c } ) )
59 id 19 . . . . . . . . . . . . 13  |-  ( a  =  c  ->  a  =  c )
6059, 59opeq12d 3826 . . . . . . . . . . . 12  |-  ( a  =  c  ->  <. a ,  a >.  =  <. c ,  c >. )
6160sneqd 3645 . . . . . . . . . . 11  |-  ( a  =  c  ->  { <. a ,  a >. }  =  { <. c ,  c
>. } )
6261eqeq2d 2216 . . . . . . . . . 10  |-  ( a  =  c  ->  ( F  =  { <. a ,  a >. }  <->  F  =  { <. c ,  c
>. } ) )
6358, 62anbi12d 473 . . . . . . . . 9  |-  ( a  =  c  ->  (
( X  =  {
a }  /\  F  =  { <. a ,  a
>. } )  <->  ( X  =  { c }  /\  F  =  { <. c ,  c >. } ) ) )
6412, 63spcev 2867 . . . . . . . 8  |-  ( ( X  =  { c }  /\  F  =  { <. c ,  c
>. } )  ->  E. a
( X  =  {
a }  /\  F  =  { <. a ,  a
>. } ) )
6544, 56, 64syl2anc 411 . . . . . . 7  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  E. a
( X  =  {
a }  /\  F  =  { <. a ,  a
>. } ) )
6665ex 115 . . . . . 6  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  ( b  =  <. c ,  d
>.  ->  E. a ( X  =  { a }  /\  F  =  { <. a ,  a >. } ) ) )
6766exlimdvv 1920 . . . . 5  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  ( E. c E. d  b  = 
<. c ,  d >.  ->  E. a ( X  =  { a }  /\  F  =  { <. a ,  a >. } ) ) )
6811, 67mpd 13 . . . 4  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  E. a
( X  =  {
a }  /\  F  =  { <. a ,  a
>. } ) )
6968expcom 116 . . 3  |-  ( b  e.  <. X ,  Y >.  ->  ( ( Fun 
F  /\  F  =  <. X ,  Y >. )  ->  E. a ( X  =  { a }  /\  F  =  { <. a ,  a >. } ) ) )
7069exlimiv 1620 . 2  |-  ( E. b  b  e.  <. X ,  Y >.  ->  (
( Fun  F  /\  F  =  <. X ,  Y >. )  ->  E. a
( X  =  {
a }  /\  F  =  { <. a ,  a
>. } ) ) )
714, 70ax-mp 5 1  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  E. a
( X  =  {
a }  /\  F  =  { <. a ,  a
>. } ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 104    <-> wb 105    \/ wo 709    = wceq 1372   E.wex 1514    e. wcel 2175   _Vcvv 2771   {csn 3632   {cpr 3633   <.cop 3635   Rel wrel 4679   Fun wfun 5264
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-io 710  ax-5 1469  ax-7 1470  ax-gen 1471  ax-ie1 1515  ax-ie2 1516  ax-8 1526  ax-10 1527  ax-11 1528  ax-i12 1529  ax-bndl 1531  ax-4 1532  ax-17 1548  ax-i9 1552  ax-ial 1556  ax-i5r 1557  ax-14 2178  ax-ext 2186  ax-sep 4161  ax-pow 4217  ax-pr 4252
This theorem depends on definitions:  df-bi 117  df-3an 982  df-tru 1375  df-nf 1483  df-sb 1785  df-eu 2056  df-mo 2057  df-clab 2191  df-cleq 2197  df-clel 2200  df-nfc 2336  df-ral 2488  df-v 2773  df-un 3169  df-in 3171  df-ss 3178  df-pw 3617  df-sn 3638  df-pr 3639  df-op 3641  df-br 4044  df-opab 4105  df-id 4339  df-xp 4680  df-rel 4681  df-cnv 4682  df-co 4683  df-fun 5272
This theorem is referenced by:  funop  5762
  Copyright terms: Public domain W3C validator