let x be object ; for g being Function
for f being Function-yielding Function st x in dom <:f:> & g = <:f:> . x holds
( dom g = dom f & ( for y being object st y in dom g holds
( [y,x] in dom (uncurry f) & g . y = (uncurry f) . (y,x) ) ) )
let g be Function; for f being Function-yielding Function st x in dom <:f:> & g = <:f:> . x holds
( dom g = dom f & ( for y being object st y in dom g holds
( [y,x] in dom (uncurry f) & g . y = (uncurry f) . (y,x) ) ) )
let f be Function-yielding Function; ( x in dom <:f:> & g = <:f:> . x implies ( dom g = dom f & ( for y being object st y in dom g holds
( [y,x] in dom (uncurry f) & g . y = (uncurry f) . (y,x) ) ) ) )
A1:
( rng <:f:> c= product (rngs f) & dom (rngs f) = dom f )
by Def2, Th25;
assume A2:
( x in dom <:f:> & g = <:f:> . x )
; ( dom g = dom f & ( for y being object st y in dom g holds
( [y,x] in dom (uncurry f) & g . y = (uncurry f) . (y,x) ) ) )
then
g in rng <:f:>
by FUNCT_1:def 3;
hence
dom g = dom f
by A1, CARD_3:9; for y being object st y in dom g holds
( [y,x] in dom (uncurry f) & g . y = (uncurry f) . (y,x) )
let y be object ; ( y in dom g implies ( [y,x] in dom (uncurry f) & g . y = (uncurry f) . (y,x) ) )
assume A3:
y in dom g
; ( [y,x] in dom (uncurry f) & g . y = (uncurry f) . (y,x) )
A4:
[x,y] in dom ((uncurry' f) | [:(meet (doms f)),(dom f):])
by A2, A3, FUNCT_5:31;
then
[x,y] in (dom (uncurry' f)) /\ [:(meet (doms f)),(dom f):]
by RELAT_1:61;
then A5:
[x,y] in dom (uncurry' f)
by XBOOLE_0:def 4;
g . y = ((uncurry' f) | [:(meet (doms f)),(dom f):]) . (x,y)
by A2, A3, FUNCT_5:31;
then A6:
g . y = (uncurry' f) . (x,y)
by A4, FUNCT_1:47;
~ (uncurry f) = uncurry' f
by FUNCT_5:def 4;
hence
( [y,x] in dom (uncurry f) & g . y = (uncurry f) . (y,x) )
by A6, A5, FUNCT_4:42, FUNCT_4:43; verum