let h1, h2 be PartFunc of [:(MapsC X),(MapsC X):],(MapsC X); ( ( for l2, l1 being Element of MapsC X holds
( [l2,l1] in dom h1 iff dom l2 = cod l1 ) ) & ( for l2, l1 being Element of MapsC X st dom l2 = cod l1 holds
h1 . [l2,l1] = l2 * l1 ) & ( for l2, l1 being Element of MapsC X holds
( [l2,l1] in dom h2 iff dom l2 = cod l1 ) ) & ( for l2, l1 being Element of MapsC X st dom l2 = cod l1 holds
h2 . [l2,l1] = l2 * l1 ) implies h1 = h2 )
assume that
A12:
for l2, l1 being Element of MapsC X holds
( [l2,l1] in dom h1 iff dom l2 = cod l1 )
and
A13:
for l2, l1 being Element of MapsC X st dom l2 = cod l1 holds
h1 . [l2,l1] = l2 * l1
and
A14:
for l2, l1 being Element of MapsC X holds
( [l2,l1] in dom h2 iff dom l2 = cod l1 )
and
A15:
for l2, l1 being Element of MapsC X st dom l2 = cod l1 holds
h2 . [l2,l1] = l2 * l1
; h1 = h2
A16:
dom h1 = dom h2
proof
let x,
y be
object ;
RELAT_1:def 2 ( ( not [x,y] in dom h1 or [x,y] in dom h2 ) & ( not [x,y] in dom h2 or [x,y] in dom h1 ) )
thus
(
[x,y] in dom h1 implies
[x,y] in dom h2 )
( not [x,y] in dom h2 or [x,y] in dom h1 )
assume A18:
[x,y] in dom h2
;
[x,y] in dom h1
then reconsider l2 =
x,
l1 =
y as
Element of
MapsC X by ZFMISC_1:87;
dom l2 = cod l1
by A14, A18;
hence
[x,y] in dom h1
by A12;
verum
end;
hence
h1 = h2
by A16, PARTFUN1:5; verum