HomeHome Metamath Proof Explorer < Previous   Next >
Related theorems
Unicode version

Theorem fopab2 2891
Description: Functionality of an ordered pair abstraction.
Hypothesis
Ref Expression
fopab2.1 |- F = {<.x, y>. | (x e. A /\ y = C)}
Assertion
Ref Expression
fopab2 |- (A.x e. A C e. B <-> F:A-->B)
Distinct variable group(s):   x,y,A   x,B,y   y,C

Proof of Theorem fopab2
StepHypRef Expression
1 elisset 1354 . . . . . . 7 |- (C e. B -> C e. V)
2 eueq 1427 . . . . . . 7 |- (C e. V <-> E!y y = C)
31, 2sylib 173 . . . . . 6 |- (C e. B -> E!y y = C)
43r19.20si 1254 . . . . 5 |- (A.x e. A C e. B -> A.x e. A E!y y = C)
5 fopab2.1 . . . . . 6 |- F = {<.x, y>. | (x e. A /\ y = C)}
65fnopabg 2745 . . . . 5 |- (A.x e. A E!y y = C <-> F Fn A)
74, 6sylib 173 . . . 4 |- (A.x e. A C e. B -> F Fn A)
8 hbra1 1237 . . . . . . . . 9 |- (A.x e. A C e. B -> A.xA.x e. A C e. B)
9 ax-17 925 . . . . . . . . 9 |- (y e. B -> A.x y e. B)
10 ra4 1243 . . . . . . . . . 10 |- (A.x e. A C e. B -> (x e. A -> C e. B))
11 eleq1a 1158 . . . . . . . . . . . 12 |- (C e. B -> (y = C -> y e. B))
1211syl3 18 . . . . . . . . . . 11 |- ((x e. A -> C e. B) -> (x e. A -> (y = C -> y e. B)))
1312imp3a 279 . . . . . . . . . 10 |- ((x e. A -> C e. B) -> ((x e. A /\ y = C) -> y e. B))
1410, 13syl 12 . . . . . . . . 9 |- (A.x e. A C e. B -> ((x e. A /\ y = C) -> y e. B))
158, 9, 1419.23ad 748 . . . . . . . 8 |- (A.x e. A C e. B -> (E.x(x e. A /\ y = C) -> y e. B))
16 rnopab 2566 . . . . . . . . 9 |- ran {<.x, y>. | (x e. A /\ y = C)} = {y | E.x(x e. A /\ y = C)}
1716cleqabi 1176 . . . . . . . 8 |- (y e. ran {<.x, y>. | (x e. A /\ y = C)} <-> E.x(x e. A /\ y = C))
1815, 17syl5ib 181 . . . . . . 7 |- (A.x e. A C e. B -> (y e. ran {<.x, y>. | (x e. A /\ y = C)} -> y e. B))
191819.21aiv 943 . . . . . 6 |- (A.x e. A C e. B -> A.y(y e. ran {<.x, y>. | (x e. A /\ y = C)} -> y e. B))
20 hbopab2 2113 . . . . . . . 8 |- (z e. {<.x, y>. | (x e. A /\ y = C)} -> A.y z e. {<.x, y>. | (x e. A /\ y = C)})
2120hbrn 2564 . . . . . . 7 |- (z e. ran {<.x, y>. | (x e. A /\ y = C)} -> A.y z e. ran {<.x, y>. | (x e. A /\ y = C)})
22 ax-17 925 . . . . . . 7 |- (z e. B -> A.y z e. B)
2321, 22dfss2f 1499 . . . . . 6 |- (ran {<.x, y>. | (x e. A /\ y = C)} (_ B <-> A.y(y e. ran {<.x, y>. | (x e. A /\ y = C)} -> y e. B))
2419, 23sylibr 175 . . . . 5 |- (A.x e. A C e. B -> ran {<.x, y>. | (x e. A /\ y = C)} (_ B)
255rneqi 2556 . . . . 5 |- ran F = ran {<.x, y>. | (x e. A /\ y = C)}
2624, 25syl5ss 1544 . . . 4 |- (A.x e. A C e. B -> ran F (_ B)
277, 26jca 236 . . 3 |- (A.x e. A C e. B -> (F Fn A /\ ran F (_ B))
28 df-f 2434 . . 3 |- (F:A-->B <-> (F Fn A /\ ran F (_ B))
2927, 28sylibr 175 . 2 |- (A.x e. A C e. B -> F:A-->B)
30 fdm 2756 . . . 4 |- (F:A-->B -> dom F = A)
31 dmopab2 2541 . . . . 5 |- (A.x e. A E.y y = C <-> dom {<.x, y>. | (x e. A /\ y = C)} = A)
32 isset 1351 . . . . . 6 |- (C e. V <-> E.y y = C)
3332biral 1223 . . . . 5 |- (A.x e. A C e. V <-> A.x e. A E.y y = C)
345dmeqi 2532 . . . . . 6 |- dom F = dom {<.x, y>. | (x e. A /\ y = C)}
3534cleq1i 1108 . . . . 5 |- (dom F = A <-> dom {<.x, y>. | (x e. A /\ y = C)} = A)
3631, 33, 353bitr4r 159 . . . 4 |- (dom F = A <-> A.x e. A C e. V)
3730, 36sylib 173 . . 3 |- (F:A-->B -> A.x e. A C e. V)
38 hbopab1 2112 . . . . . 6 |- (z e. {<.x, y>. | (x e. A /\ y = C)} -> A.x z e. {<.x, y>. | (x e. A /\ y = C)})
39 ax-17 925 . . . . . 6 |- (z e. A -> A.x z e. A)
40 ax-17 925 . . . . . 6 |- (z e. B -> A.x z e. B)
4138, 39, 40hbf 2751 . . . . 5 |- ({<.x, y>. | (x e. A /\ y = C)}:A-->B -> A.x{<.x, y>. | (x e. A /\ y = C)}:A-->B)
42 feq1 2748 . . . . . 6 |- (F = {<.x, y>. | (x e. A /\ y = C)} -> (F:A-->B <-> {<.x, y>. | (x e. A /\ y = C)}:A-->B))
435, 42ax-mp 6 . . . . 5 |- (F:A-->B <-> {<.x, y>. | (x e. A /\ y = C)}:A-->B)
4443bial 695 . . . . 5 |- (A.x F:A-->B <-> A.x{<.x, y>. | (x e. A /\ y = C)}:A-->B)
4541, 43, 443imtr4 192 . . . 4 |- (F:A-->B -> A.x F:A-->B)
46 ffvrn 2890 . . . . . . 7 |- ((F:A-->B /\ x e. A) -> (F` x) e. B)
4746adantr 306 . . . . . 6 |- (((F:A-->B /\ x e. A) /\ C e. V) -> (F` x) e. B)
48 fvopab2 2878 . . . . . . . . 9 |- ((x e. A /\ C e. V) -> ({<.x, y>. | (x e. A /\ y = C)}` x) = C)
495fveq1i 2833 . . . . . . . . 9 |- (F` x) = ({<.x, y>. | (x e. A /\ y = C)}` x)
5048, 49syl5eq 1136 . . . . . . . 8 |- ((x e. A /\ C e. V) -> (F` x) = C)
5150eleq1d 1155 . . . . . . 7 |- ((x e. A /\ C e. V) -> ((F` x) e. B <-> C e. B))
5251adantll 309 . . . . . 6 |- (((F:A-->B /\ x e. A) /\ C e. V) -> ((F` x) e. B <-> C e. B))
5347, 52mpbid 170 . . . . 5 |- (((F:A-->B /\ x e. A) /\ C e. V) -> C e. B)
5453exp 291 . . . 4 |- ((F:A-->B /\ x e. A) -> (C e. V -> C e. B))
5545, 54r19.20da 1255 . . 3 |- (F:A-->B -> (A.x e. A C e. V -> A.x e. A C e. B))
5637, 55mpd 46 . 2 |- (F:A-->B -> A.x e. A C e. B)
5729, 56impbi 139 1 |- (A.x e. A C e. B <-> F:A-->B)
Colors of variables: wff set class
Syntax hints:   -> wi 2   <-> wb 127   /\ wa 196  A.wal 672  E.wex 678  E!weu 1007   = wceq 1091   e. wcel 1092  A.wral 1201  Vcvv 1348   (_ wss 1487  {copab 2055  dom cdm 2410  ran crn 2411   Fn wfn 2417  -->wf 2418  ` cfv 2422
This theorem is referenced by:  f1stres 3096  dom2d 3307  pw2en 3348  mapenlem2 3385  xpmapenlem4 3394  occllem4 5183  projlem24 5216  hosf 5602  hodf 5603  strlem3a 5693
This theorem was proved from axioms:  ax-1 3  ax-2 4  ax-3 5  ax-mp 6  ax-4 673  ax-5 674  ax-6 675  ax-7 676  ax-gen 677  ax-8 798  ax-9 799  ax-10 800  ax-11 801  ax-12 802  ax-13 804  ax-14 805  ax-16 922  ax-17 925  ax-ext 1074  ax-rep 1075  ax-un 1076  ax-pow 1077
This theorem depends on definitions:  df-bi 128  df-or 197  df-an 198  df-ex 679  df-sb 853  df-eu 1009  df-mo 1010  df-clab 1093  df-cleq 1097  df-clel 1099  df-ral 1205  df-rex 1206  df-v 1349  df-dif 1489  df-un 1490  df-in 1491  df-ss 1492  df-nul 1708  df-pw 1799  df-sn 1811  df-pr 1812  df-op 1815  df-uni 1920  df-br 2063  df-opab 2098  df-id 2125  df-xp 2424  df-rel 2425  df-cnv 2426  df-co 2427  df-dm 2428  df-rn 2429  df-res 2430  df-ima 2431  df-fun 2432  df-fn 2433  df-f 2434  df-fv 2438
metamath.org