let G1, G2 be non empty multMagma ; for x1, x2 being Element of G1
for y1, y2 being Element of G2 holds <*x1,y1*> * <*x2,y2*> = <*(x1 * x2),(y1 * y2)*>
let x1, x2 be Element of G1; for y1, y2 being Element of G2 holds <*x1,y1*> * <*x2,y2*> = <*(x1 * x2),(y1 * y2)*>
let y1, y2 be Element of G2; <*x1,y1*> * <*x2,y2*> = <*(x1 * x2),(y1 * y2)*>
set G = <*G1,G2*>;
A1:
<*G1,G2*> . 1 = G1
;
A2:
<*G1,G2*> . 2 = G2
;
reconsider l = <*x1,y1*>, p = <*x2,y2*>, lpl = <*x1,y1*> * <*x2,y2*>, lpp = <*(x1 * x2),(y1 * y2)*> as Element of product (Carrier <*G1,G2*>) by Def2;
A3:
2 in {1,2}
by TARSKI:def 2;
A4:
l . 1 = x1
;
A6:
p . 2 = y2
;
A8:
p . 1 = x2
;
A9:
l . 2 = y1
;
A10:
1 in {1,2}
by TARSKI:def 2;
A11:
for k being Nat st 1 <= k & k <= 2 holds
lpl . k = lpp . k
dom lpl =
dom (Carrier <*G1,G2*>)
by CARD_3:9
.=
Seg 2
by FINSEQ_1:2, PARTFUN1:def 2
;
then A15:
len lpl = 2
by FINSEQ_1:def 3;
len lpp = 2
by FINSEQ_1:44;
hence
<*x1,y1*> * <*x2,y2*> = <*(x1 * x2),(y1 * y2)*>
by A15, A11; verum