let r1, r2 be Real; :: thesis: (multRel (REAL,r1)) * (multRel (REAL,r2)) = multRel (REAL,(r1 * r2))
A1: (multRel (REAL,r1)) * (multRel (REAL,r2)) c= multRel (REAL,(r1 * r2)) by Th51;
now :: thesis: for x, y being object st [x,y] in multRel (REAL,(r1 * r2)) holds
[x,y] in (multRel (REAL,r1)) * (multRel (REAL,r2))
let x, y be object ; :: thesis: ( [x,y] in multRel (REAL,(r1 * r2)) implies [x,y] in (multRel (REAL,r1)) * (multRel (REAL,r2)) )
reconsider a = x, b = y as set by TARSKI:1;
assume A2: [x,y] in multRel (REAL,(r1 * r2)) ; :: thesis: [x,y] in (multRel (REAL,r1)) * (multRel (REAL,r2))
then [a,b] in multRel (REAL,(r1 * r2)) ;
then A3: ( a in REAL & b in REAL ) by MMLQUER2:4;
then reconsider a = a, b = b as Real ;
A4: b = (r1 * r2) * a by A2, Th42;
set c = r1 * a;
( r1 * a in REAL & b = r2 * (r1 * a) ) by A4, XREAL_0:def 1;
then ( [a,(r1 * a)] in multRel (REAL,r1) & [(r1 * a),b] in multRel (REAL,r2) ) by A3, Th42;
hence [x,y] in (multRel (REAL,r1)) * (multRel (REAL,r2)) by RELAT_1:def 8; :: thesis: verum
end;
then multRel (REAL,(r1 * r2)) c= (multRel (REAL,r1)) * (multRel (REAL,r2)) by RELAT_1:def 3;
hence (multRel (REAL,r1)) * (multRel (REAL,r2)) = multRel (REAL,(r1 * r2)) by A1, XBOOLE_0:def 10; :: thesis: verum