let X, Y be set ; :: thesis: for f being Function st dom f = [:X,Y:] holds
( uncurry (curry f) = f & uncurry' (curry' f) = f )
let f be Function; :: thesis: ( dom f = [:X,Y:] implies ( uncurry (curry f) = f & uncurry' (curry' f) = f ) )
assume A1:
dom f = [:X,Y:]
; :: thesis: ( uncurry (curry f) = f & uncurry' (curry' f) = f )
now assume
dom f <> {}
;
:: thesis: ( uncurry (curry f) = f & uncurry' (curry' f) = f )then
(
Y <> {} &
X <> {} &
rng (curry f) c= Funcs Y,
(rng f) &
dom (curry f) = X &
rng (curry' f) c= Funcs X,
(rng f) &
dom (curry' f) = Y )
by A1, Th31, Th42, ZFMISC_1:113;
then
(
curry (uncurry (curry f)) = curry f &
curry' (uncurry' (curry' f)) = curry' f &
dom (uncurry (curry f)) = [:X,Y:] &
dom (uncurry' (curry' f)) = [:X,Y:] )
by Th33, Th55;
hence
(
uncurry (curry f) = f &
uncurry' (curry' f) = f )
by A1, Th51, Th52;
:: thesis: verum end;
hence
( uncurry (curry f) = f & uncurry' (curry' f) = f )
by A2; :: thesis: verum