let a, b be Real; :: thesis: for A being set
for f being Element of Funcs (A,REAL) holds (RealFuncAdd A) . (((RealFuncExtMult A) . (a,f)),((RealFuncExtMult A) . (b,f))) = (RealFuncExtMult A) . ((a + b),f)

let A be set ; :: thesis: for f being Element of Funcs (A,REAL) holds (RealFuncAdd A) . (((RealFuncExtMult A) . (a,f)),((RealFuncExtMult A) . (b,f))) = (RealFuncExtMult A) . ((a + b),f)
let f be Element of Funcs (A,REAL); :: thesis: (RealFuncAdd A) . (((RealFuncExtMult A) . (a,f)),((RealFuncExtMult A) . (b,f))) = (RealFuncExtMult A) . ((a + b),f)
per cases ( A = {} or A <> {} ) ;
suppose A1: A = {} ; :: thesis: (RealFuncAdd A) . (((RealFuncExtMult A) . (a,f)),((RealFuncExtMult A) . (b,f))) = (RealFuncExtMult A) . ((a + b),f)
hence (RealFuncAdd A) . (((RealFuncExtMult A) . (a,f)),((RealFuncExtMult A) . (b,f))) = {}
.= multreal [;] ((a + b),f) by A1
.= (RealFuncExtMult A) . ((a + b),f) by Def4 ;
:: thesis: verum
end;
suppose A <> {} ; :: thesis: (RealFuncAdd A) . (((RealFuncExtMult A) . (a,f)),((RealFuncExtMult A) . (b,f))) = (RealFuncExtMult A) . ((a + b),f)
then reconsider A = A as non empty set ;
reconsider f = f as Element of Funcs (A,REAL) ;
now
let x be Element of A; :: thesis: ((RealFuncAdd A) . (((RealFuncExtMult A) . [a,f]),((RealFuncExtMult A) . [b,f]))) . x = ((RealFuncExtMult A) . [(a + b),f]) . x
thus ((RealFuncAdd A) . (((RealFuncExtMult A) . [a,f]),((RealFuncExtMult A) . [b,f]))) . x = (((RealFuncExtMult A) . [a,f]) . x) + (((RealFuncExtMult A) . [b,f]) . x) by Th10
.= (a * (f . x)) + (((RealFuncExtMult A) . [b,f]) . x) by Th15
.= (a * (f . x)) + (b * (f . x)) by Th15
.= (a + b) * (f . x)
.= ((RealFuncExtMult A) . [(a + b),f]) . x by Th15 ; :: thesis: verum
end;
hence (RealFuncAdd A) . (((RealFuncExtMult A) . (a,f)),((RealFuncExtMult A) . (b,f))) = (RealFuncExtMult A) . ((a + b),f) by FUNCT_2:113; :: thesis: verum
end;
end;