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

Theorem funopsn 5882
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 5422, as relsnopg 4874 is to relop 4925. (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 4369 . . 3  |-  ( E. b  b  e.  <. X ,  Y >.  <->  ( X  e.  _V  /\  Y  e. 
_V ) )
41, 2, 3mpbir2an 955 . 2  |-  E. b 
b  e.  <. X ,  Y >.
5 funrel 5389 . . . . . . 7  |-  ( Fun 
F  ->  Rel  F )
65ad2antrr 492 . . . . . 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 533 . . . . . . 7  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  F  =  <. X ,  Y >. )
97, 8eleqtrrd 2318 . . . . . 6  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  b  e.  F )
10 elrel 4872 . . . . . 6  |-  ( ( Rel  F  /\  b  e.  F )  ->  E. c E. d  b  =  <. c ,  d >.
)
116, 9, 10syl2anc 415 . . . . 5  |-  ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  ->  E. c E. d  b  =  <. c ,  d >.
)
12 vex 2824 . . . . . . . . . . . . . . . 16  |-  c  e. 
_V
13 vex 2824 . . . . . . . . . . . . . . . 16  |-  d  e. 
_V
1412, 13dfop 3898 . . . . . . . . . . . . . . 15  |-  <. c ,  d >.  =  { { c } ,  { c ,  d } }
1514eqeq2i 2249 . . . . . . . . . . . . . 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 2824 . . . . . . . . . . . . . . . . 17  |-  b  e. 
_V
1918, 1, 2elop 4366 . . . . . . . . . . . . . . . 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 3719 . . . . . . . . . . . . . . . . . . 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 5394 . . . . . . . . . . . . . . . . . . . . . 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 5406 . . . . . . . . . . . . . . . . . . . . 21  |-  ( ( X  e.  _V  /\  Y  e.  _V  /\  Fun  <. X ,  Y >. )  ->  X  =  Y )
271, 2, 25, 26mp3an12i 1382 . . . . . . . . . . . . . . . . . . . 20  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  X  =  Y )
2827preq2d 3791 . . . . . . . . . . . . . . . . . . 19  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  { X ,  X }  =  { X ,  Y }
)
2921, 28eqtrid 2283 . . . . . . . . . . . . . . . . . 18  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  { X }  =  { X ,  Y } )
3029eqeq2d 2250 . . . . . . . . . . . . . . . . 17  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  ( b  =  { X }  <->  b  =  { X ,  Y }
) )
3130orbi2d 802 . . . . . . . . . . . . . . . 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 769 . . . . . . . . . . . . . 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 2273 . . . . . . . . . . 11  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  { {
c } ,  {
c ,  d } }  =  { X } )
3812snex 4317 . . . . . . . . . . . 12  |-  { c }  e.  _V
39 zfpair2 4342 . . . . . . . . . . . 12  |-  { c ,  d }  e.  _V
4038, 39, 1preqsn 3895 . . . . . . . . . . 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 2272 . . . . . . . 8  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  X  =  { c } )
451, 2dfop 3898 . . . . . . . . . . 11  |-  <. X ,  Y >.  =  { { X } ,  { X ,  Y } }
46 dfsn2 3719 . . . . . . . . . . . 12  |-  { { X } }  =  { { X } ,  { X } }
4729preq2d 3791 . . . . . . . . . . . 12  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  { { X } ,  { X } }  =  { { X } ,  { X ,  Y } } )
4846, 47eqtrid 2283 . . . . . . . . . . 11  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  { { X } }  =  { { X } ,  { X ,  Y } } )
4945, 23, 483eqtr4a 2297 . . . . . . . . . 10  |-  ( ( Fun  F  /\  F  =  <. X ,  Y >. )  ->  F  =  { { X } }
)
5049ad2antrr 492 . . . . . . . . 9  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  F  =  { { X } } )
5144sneqd 3718 . . . . . . . . . . 11  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  { X }  =  { { c } } )
5251sneqd 3718 . . . . . . . . . 10  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  { { X } }  =  { { { c } } } )
5312opid 3917 . . . . . . . . . . 11  |-  <. c ,  c >.  =  { { c } }
5453sneqi 3717 . . . . . . . . . 10  |-  { <. c ,  c >. }  =  { { { c } } }
5552, 54eqtr4di 2289 . . . . . . . . 9  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  { { X } }  =  { <. c ,  c >. } )
5650, 55eqtrd 2271 . . . . . . . 8  |-  ( ( ( ( Fun  F  /\  F  =  <. X ,  Y >. )  /\  b  e.  <. X ,  Y >. )  /\  b  =  <. c ,  d
>. )  ->  F  =  { <. c ,  c
>. } )
57 sneq 3716 . . . . . . . . . . 11  |-  ( a  =  c  ->  { a }  =  { c } )
5857eqeq2d 2250 . . . . . . . . . 10  |-  ( a  =  c  ->  ( X  =  { a } 
<->  X  =  { c } ) )
59 id 19 . . . . . . . . . . . . 13  |-  ( a  =  c  ->  a  =  c )
6059, 59opeq12d 3907 . . . . . . . . . . . 12  |-  ( a  =  c  ->  <. a ,  a >.  =  <. c ,  c >. )
6160sneqd 3718 . . . . . . . . . . 11  |-  ( a  =  c  ->  { <. a ,  a >. }  =  { <. c ,  c
>. } )
6261eqeq2d 2250 . . . . . . . . . 10  |-  ( a  =  c  ->  ( F  =  { <. a ,  a >. }  <->  F  =  { <. c ,  c
>. } ) )
6358, 62anbi12d 477 . . . . . . . . 9  |-  ( a  =  c  ->  (
( X  =  {
a }  /\  F  =  { <. a ,  a
>. } )  <->  ( X  =  { c }  /\  F  =  { <. c ,  c >. } ) ) )
6412, 63spcev 2920 . . . . . . . 8  |-  ( ( X  =  { c }  /\  F  =  { <. c ,  c
>. } )  ->  E. a
( X  =  {
a }  /\  F  =  { <. a ,  a
>. } ) )
6544, 56, 64syl2anc 415 . . . . . . 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 1953 . . . . 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 1651 . 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 720    = wceq 1402   E.wex 1545    e. wcel 2209   _Vcvv 2821   {csn 3705   {cpr 3706   <.cop 3708   Rel wrel 4774   Fun wfun 5366
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 721  ax-5 1500  ax-7 1501  ax-gen 1502  ax-ie1 1546  ax-ie2 1547  ax-8 1557  ax-10 1558  ax-11 1559  ax-i12 1560  ax-bndl 1562  ax-4 1563  ax-17 1579  ax-i9 1583  ax-ial 1587  ax-i5r 1588  ax-14 2212  ax-ext 2220  ax-sep 4244  ax-pow 4306  ax-pr 4341
This theorem depends on definitions:  df-bi 117  df-3an 1011  df-tru 1405  df-nf 1514  df-sb 1816  df-eu 2089  df-mo 2090  df-clab 2225  df-cleq 2231  df-clel 2234  df-nfc 2381  df-ral 2533  df-v 2823  df-un 3224  df-in 3226  df-ss 3233  df-pw 3687  df-sn 3711  df-pr 3712  df-op 3714  df-br 4126  df-opab 4188  df-id 4433  df-xp 4775  df-rel 4776  df-cnv 4777  df-co 4778  df-fun 5374
This theorem is referenced by:  funop  5883
  Copyright terms: Public domain W3C validator