let C be non empty set ; :: thesis: for f1, f2 being PartFunc of C,COMPLEX
for r being Element of COMPLEX holds r (#) (f1 (#) f2) = f1 (#) (r (#) f2)

let f1, f2 be PartFunc of C,COMPLEX ; :: thesis: for r being Element of COMPLEX holds r (#) (f1 (#) f2) = f1 (#) (r (#) f2)
let r be Element of COMPLEX ; :: thesis: r (#) (f1 (#) f2) = f1 (#) (r (#) f2)
A1: dom (r (#) (f1 (#) f2)) = dom (f1 (#) f2) by Th7
.= (dom f1) /\ (dom f2) by Th5
.= (dom f1) /\ (dom (r (#) f2)) by Th7
.= dom (f1 (#) (r (#) f2)) by Th5 ;
now
let c be Element of C; :: thesis: ( c in dom (r (#) (f1 (#) f2)) implies (r (#) (f1 (#) f2)) /. c = (f1 (#) (r (#) f2)) /. c )
assume A2: c in dom (r (#) (f1 (#) f2)) ; :: thesis: (r (#) (f1 (#) f2)) /. c = (f1 (#) (r (#) f2)) /. c
then c in (dom f1) /\ (dom (r (#) f2)) by A1, Th5;
then A3: ( c in dom f1 & c in dom (r (#) f2) ) by XBOOLE_0:def 4;
A4: c in dom (f1 (#) f2) by A2, Th7;
thus (r (#) (f1 (#) f2)) /. c = r * ((f1 (#) f2) /. c) by A2, Th7
.= r * ((f1 /. c) * (f2 /. c)) by A4, Th5
.= (f1 /. c) * (r * (f2 /. c))
.= (f1 /. c) * ((r (#) f2) /. c) by A3, Th7
.= (f1 (#) (r (#) f2)) /. c by A1, A2, Th5 ; :: thesis: verum
end;
hence r (#) (f1 (#) f2) = f1 (#) (r (#) f2) by A1, PARTFUN2:3; :: thesis: verum