reserve x for set,
  D for non empty set,
  k,n,m,i,j,l for Nat,
  K for Field;

theorem
  for B being (Matrix of n,m,REAL),A being (Matrix of m,k,REAL) st n>0
  holds (for i,j st [i,j] in Indices (B*A) holds (B*A)*(i,j)=((Line(B,i))*A).j)
proof
  let B be (Matrix of n,m,REAL),A be Matrix of m,k,REAL;
  assume
A1: n>0;
  then
A2: width B=m by MATRIX_0:23;
  let i,j;
A3: len A=m by MATRIX_0:def 2;
  then
A4: len A=len (Line(B,i)) by A2,MATRIX_0:def 7;
  assume
A5: [i,j] in Indices (B*A);
  then
A6: j in Seg width (B*A) by ZFMISC_1:87;
  width B=len A by A1,A3,MATRIX_0:23;
  then
A7: (B*A)*(i,j) =Line(B,i) "*" Col(A,j) by A5,MATRPROB:39;
  width A=width (B*A) by A3,A2,MATRPROB:39;
  then j in Seg len ((Line(B,i))*A) by A6,A4,MATRIXR1:62;
  hence thesis by A7,A4,MATRPROB:40;
end;
