set ad = addreal || RAT;
[:RAT,RAT:] c= [:REAL,REAL:] by NUMBERS:12, ZFMISC_1:96;
then A1: [:RAT,RAT:] c= dom addreal by FUNCT_2:def 1;
then A2: dom (addreal || RAT) = [:RAT,RAT:] by RELAT_1:62;
A3: dom addrat = [:RAT,RAT:] by FUNCT_2:def 1;
for z being object st z in dom (addreal || RAT) holds
(addreal || RAT) . z = addrat . z
proof
let z be object ; :: thesis: ( z in dom (addreal || RAT) implies (addreal || RAT) . z = addrat . z )
assume A4: z in dom (addreal || RAT) ; :: thesis: (addreal || RAT) . z = addrat . z
then consider x, y being object such that
A5: ( x in RAT & y in RAT & z = [x,y] ) by A2, ZFMISC_1:def 2;
reconsider x1 = x, y1 = y as Rational by A5;
thus (addreal || RAT) . z = addreal . (x1,y1) by A4, A5, A2, FUNCT_1:49
.= x1 + y1 by BINOP_2:def 9
.= addrat . (x1,y1) by BINOP_2:def 15
.= addrat . z by A5 ; :: thesis: verum
end;
hence addreal || RAT = addrat by A1, A3, FUNCT_1:2, RELAT_1:62; :: thesis: verum