procedure vmprod(var m: matrix; var v1,v2: vector); var i,j: integer; s0,s1,s2: scalar; begin { vmprod } write('(vmprod'); flush(output); v2:=v1; for i:=0 to lmax do begin szero(s0); for j:=0 to lmax do begin sprod(m[i,j],v1[j],s1); ssum(s0,s1,s2); s0:=s2; end; v2[i]:=s0; end; write(')'); flush(output); end { vmprod };