Metamath Proof Explorer


Theorem funopg

Description: A Kuratowski ordered pair of sets is a function only if its components are equal. (Contributed by NM, 5-Jun-2008) (Revised by Mario Carneiro, 26-Apr-2015) 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 , as relsnopg is to relop . (New usage is discouraged.)

Ref Expression
Assertion funopg AVBWFunABA=B

Proof

Step Hyp Ref Expression
1 opeq1 u=Aut=At
2 1 funeqd u=AFunutFunAt
3 eqeq1 u=Au=tA=t
4 2 3 imbi12d u=AFunutu=tFunAtA=t
5 opeq2 t=BAt=AB
6 5 funeqd t=BFunAtFunAB
7 eqeq2 t=BA=tA=B
8 6 7 imbi12d t=BFunAtA=tFunABA=B
9 funrel FunutRelut
10 vex uV
11 vex tV
12 10 11 relop Relutxyu=xt=xy
13 9 12 sylib Funutxyu=xt=xy
14 10 11 opth ut=xxyu=xt=xy
15 vex xV
16 15 opid xx=x
17 16 preq1i xxxxy=xxxy
18 vex yV
19 15 18 dfop xy=xxy
20 19 preq2i xxxy=xxxxy
21 vsnex xV
22 zfpair2 xyV
23 21 22 dfop xxy=xxxy
24 17 20 23 3eqtr4ri xxy=xxxy
25 24 eqeq2i ut=xxyut=xxxy
26 14 25 bitr3i u=xt=xyut=xxxy
27 dffun4 FunutRelutzwvzwutzvutw=v
28 27 simprbi Funutzwvzwutzvutw=v
29 opex xxV
30 29 prid1 xxxxxy
31 eleq2 ut=xxxyxxutxxxxxy
32 30 31 mpbiri ut=xxxyxxut
33 opex xyV
34 33 prid2 xyxxxy
35 eleq2 ut=xxxyxyutxyxxxy
36 34 35 mpbiri ut=xxxyxyut
37 32 36 jca ut=xxxyxxutxyut
38 opeq12 z=xw=xzw=xx
39 38 3adant3 z=xw=xv=yzw=xx
40 39 eleq1d z=xw=xv=yzwutxxut
41 opeq12 z=xv=yzv=xy
42 41 3adant2 z=xw=xv=yzv=xy
43 42 eleq1d z=xw=xv=yzvutxyut
44 40 43 anbi12d z=xw=xv=yzwutzvutxxutxyut
45 eqeq12 w=xv=yw=vx=y
46 45 3adant1 z=xw=xv=yw=vx=y
47 44 46 imbi12d z=xw=xv=yzwutzvutw=vxxutxyutx=y
48 47 spc3gv xVxVyVzwvzwutzvutw=vxxutxyutx=y
49 15 15 18 48 mp3an zwvzwutzvutw=vxxutxyutx=y
50 28 37 49 syl2im Funutut=xxxyx=y
51 26 50 biimtrid Funutu=xt=xyx=y
52 dfsn2 x=xx
53 preq2 x=yxx=xy
54 52 53 eqtr2id x=yxy=x
55 54 eqeq2d x=yt=xyt=x
56 eqtr3 u=xt=xu=t
57 56 expcom t=xu=xu=t
58 55 57 syl6bi x=yt=xyu=xu=t
59 58 com13 u=xt=xyx=yu=t
60 59 imp u=xt=xyx=yu=t
61 51 60 sylcom Funutu=xt=xyu=t
62 61 exlimdvv Funutxyu=xt=xyu=t
63 13 62 mpd Funutu=t
64 4 8 63 vtocl2g AVBWFunABA=B
65 64 3impia AVBWFunABA=B