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

Theorem cleqfv 2880
Description: Equality of functions is determined by their values. Exercise 4 of [TakeutiZaring] p. 28.
Assertion
Ref Expression
cleqfv |- ((F Fn A /\ G Fn B) -> (F = G <-> (A = B /\ A.x e. A (F` x) = (G` x))))
Distinct variable group(s):   x,A   x,B   x,F   x,G

Proof of Theorem cleqfv
StepHypRef Expression
1 cleq12 1113 . . . . 5 |- ((dom F = A /\ dom G = B) -> (dom F = dom G <-> A = B))
2 dmeq 2531 . . . . 5 |- (F = G -> dom F = dom G)
31, 2syl5bi 183 . . . 4 |- ((dom F = A /\ dom G = B) -> (F = G -> A = B))
4 fndm 2723 . . . 4 |- (F Fn A -> dom F = A)
5 fndm 2723 . . . 4 |- (G Fn B -> dom G = B)
63, 4, 5syl2an 349 . . 3 |- ((F Fn A /\ G Fn B) -> (F = G -> A = B))
7 fveq1 2831 . . . . . 6 |- (F = G -> (F` x) = (G` x))
87a1d 14 . . . . 5 |- (F = G -> (x e. A -> (F` x) = (G` x)))
98r19.21aiv 1259 . . . 4 |- (F = G -> A.x e. A (F` x) = (G` x))
109a1i 7 . . 3 |- ((F Fn A /\ G Fn B) -> (F = G -> A.x e. A (F` x) = (G` x)))
116, 10jcad 455 . 2 |- ((F Fn A /\ G Fn B) -> (F = G -> (A = B /\ A.x e. A (F` x) = (G` x))))
12 visset 1350 . . . . . . . . . . . . . . . . 17 |- y e. V
1312fnfvop 2856 . . . . . . . . . . . . . . . 16 |- ((F Fn A /\ x e. A) -> ((F` x) = y <-> <.x, y>. e. F))
1413adantlr 310 . . . . . . . . . . . . . . 15 |- (((F Fn A /\ G Fn A) /\ x e. A) -> ((F` x) = y <-> <.x, y>. e. F))
1512fnfvop 2856 . . . . . . . . . . . . . . . 16 |- ((G Fn A /\ x e. A) -> ((G` x) = y <-> <.x, y>. e. G))
1615adantll 309 . . . . . . . . . . . . . . 15 |- (((F Fn A /\ G Fn A) /\ x e. A) -> ((G` x) = y <-> <.x, y>. e. G))
1714, 16bibi12d 477 . . . . . . . . . . . . . 14 |- (((F Fn A /\ G Fn A) /\ x e. A) -> (((F` x) = y <-> (G` x) = y) <-> (<.x, y>. e. F <-> <.x, y>. e. G)))
18 cleq1 1107 . . . . . . . . . . . . . 14 |- ((F` x) = (G` x) -> ((F` x) = y <-> (G` x) = y))
1917, 18syl5bi 183 . . . . . . . . . . . . 13 |- (((F Fn A /\ G Fn A) /\ x e. A) -> ((F` x) = (G` x) -> (<.x, y>. e. F <-> <.x, y>. e. G)))
2019exp 291 . . . . . . . . . . . 12 |- ((F Fn A /\ G Fn A) -> (x e. A -> ((F` x) = (G` x) -> (<.x, y>. e. F <-> <.x, y>. e. G))))
2120a2d 15 . . . . . . . . . . 11 |- ((F Fn A /\ G Fn A) -> ((x e. A -> (F` x) = (G` x)) -> (x e. A -> (<.x, y>. e. F <-> <.x, y>. e. G))))
2221com3r 35 . . . . . . . . . 10 |- (x e. A -> ((F Fn A /\ G Fn A) -> ((x e. A -> (F` x) = (G` x)) -> (<.x, y>. e. F <-> <.x, y>. e. G))))
234eleq2d 1156 . . . . . . . . . . . . . . . 16 |- (F Fn A -> (x e. dom F <-> x e. A))
24 visset 1350 . . . . . . . . . . . . . . . . 17 |- x e. V
2524opeldm 2534 . . . . . . . . . . . . . . . 16 |- (<.x, y>. e. F -> x e. dom F)
2623, 25syl5bi 183 . . . . . . . . . . . . . . 15 |- (F Fn A -> (<.x, y>. e. F -> x e. A))
2726con3d 87 . . . . . . . . . . . . . 14 |- (F Fn A -> (-. x e. A -> -. <.x, y>. e. F))
2827adantr 306 . . . . . . . . . . . . 13 |- ((F Fn A /\ G Fn A) -> (-. x e. A -> -. <.x, y>. e. F))
29 fndm 2723 . . . . . . . . . . . . . . . . 17 |- (G Fn A -> dom G = A)
3029eleq2d 1156 . . . . . . . . . . . . . . . 16 |- (G Fn A -> (x e. dom G <-> x e. A))
3124opeldm 2534 . . . . . . . . . . . . . . . 16 |- (<.x, y>. e. G -> x e. dom G)
3230, 31syl5bi 183 . . . . . . . . . . . . . . 15 |- (G Fn A -> (<.x, y>. e. G -> x e. A))
3332con3d 87 . . . . . . . . . . . . . 14 |- (G Fn A -> (-. x e. A -> -. <.x, y>. e. G))
3433adantl 305 . . . . . . . . . . . . 13 |- ((F Fn A /\ G Fn A) -> (-. x e. A -> -. <.x, y>. e. G))
3528, 34jcad 455 . . . . . . . . . . . 12 |- ((F Fn A /\ G Fn A) -> (-. x e. A -> (-. <.x, y>. e. F /\ -. <.x, y>. e. G)))
36 pm5.21 502 . . . . . . . . . . . . 13 |- ((-. <.x, y>. e. F /\ -. <.x, y>. e. G) -> (<.x, y>. e. F <-> <.x, y>. e. G))
3736a1d 14 . . . . . . . . . . . 12 |- ((-. <.x, y>. e. F /\ -. <.x, y>. e. G) -> ((x e. A -> (F` x) = (G` x)) -> (<.x, y>. e. F <-> <.x, y>. e. G)))
3835, 37syl6 23 . . . . . . . . . . 11 |- ((F Fn A /\ G Fn A) -> (-. x e. A -> ((x e. A -> (F` x) = (G` x)) -> (<.x, y>. e. F <-> <.x, y>. e. G))))
3938com12 13 . . . . . . . . . 10 |- (-. x e. A -> ((F Fn A /\ G Fn A) -> ((x e. A -> (F` x) = (G` x)) -> (<.x, y>. e. F <-> <.x, y>. e. G))))
4022, 39pm2.61i 110 . . . . . . . . 9 |- ((F Fn A /\ G Fn A) -> ((x e. A -> (F` x) = (G` x)) -> (<.x, y>. e. F <-> <.x, y>. e. G)))
414019.21adv 945 . . . . . . . 8 |- ((F Fn A /\ G Fn A) -> ((x e. A -> (F` x) = (G` x)) -> A.y(<.x, y>. e. F <-> <.x, y>. e. G)))
424119.20dv 946 . . . . . . 7 |- ((F Fn A /\ G Fn A) -> (A.x(x e. A -> (F` x) = (G` x)) -> A.xA.y(<.x, y>. e. F <-> <.x, y>. e. G)))
43 df-ral 1205 . . . . . . 7 |- (A.x e. A (F` x) = (G` x) <-> A.x(x e. A -> (F` x) = (G` x)))
4442, 43syl5ib 181 . . . . . 6 |- ((F Fn A /\ G Fn A) -> (A.x e. A (F` x) = (G` x) -> A.xA.y(<.x, y>. e. F <-> <.x, y>. e. G)))
45 cleqrel 2483 . . . . . . 7 |- ((Rel F /\ Rel G) -> (F = G <-> A.xA.y(<.x, y>. e. F <-> <.x, y>. e. G)))
46 fnrel 2722 . . . . . . 7 |- (F Fn A -> Rel F)
47 fnrel 2722 . . . . . . 7 |- (G Fn A -> Rel G)
4845, 46, 47syl2an 349 . . . . . 6 |- ((F Fn A /\ G Fn A) -> (F = G <-> A.xA.y(<.x, y>. e. F <-> <.x, y>. e. G)))
4944, 48sylibrd 179 . . . . 5 |- ((F Fn A /\ G Fn A) -> (A.x e. A (F` x) = (G` x) -> F = G))
50 fneq2 2719 . . . . . 6 |- (A = B -> (G Fn A <-> G Fn B))
5150biimparc 327 . . . . 5 |- ((G Fn B /\ A = B) -> G Fn A)
5249, 51sylan2 346 . . . 4 |- ((F Fn A /\ (G Fn B /\ A = B)) -> (A.x e. A (F` x) = (G` x) -> F = G))
5352exp32 294 . . 3 |- (F Fn A -> (G Fn B -> (A = B -> (A.x e. A (F` x) = (G` x) -> F = G))))
5453imp4b 283 . 2 |- ((F Fn A /\ G Fn B) -> ((A = B /\ A.x e. A (F` x) = (G` x)) -> F = G))
5511, 54impbid 397 1 |- ((F Fn A /\ G Fn B) -> (F = G <-> (A = B /\ A.x e. A (F` x) = (G` x))))
Colors of variables: wff set class
Syntax hints:  -. wn 1   -> wi 2   <-> wb 127   /\ wa 196  A.wal 672   = wceq 1091   e. wcel 1092  A.wral 1201  <.cop 1810  dom cdm 2410  Rel wrel 2415   Fn wfn 2417  ` cfv 2422
This theorem is referenced by:  cleqfvf 2881  fvreseq 2882  fconst2 2902  tfr3 2964  df1st2 3098  mapenlem2 3385  hoeq 5595  ho1 5613
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-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-fv 2438
metamath.org