<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="../../../../xsl/longlemmainfo.xsl"?>
<LONGLEMMAINFO name="MULT"><LEMMAINFO state="axiom"><LEMMANAME>MULT</LEMMANAME><LEMMAGOAL><SEQGOAL><GOALSEQ><SEQ>MULT&#35;(spmx, r, x; ; y)
{y := mkvector(r); 
 while spmx ≠ ∅
 do {/* _:invariant y + spmx.toMatrix(r, &#35; x) * x = (spmx`).toMatrix(r, &#35; x) * x ∧ spmx ⊆ spmx` ∧ &#35; y = r wfbound &#35; spmx;  */; 
     choose np with np ∈ spmx in {y[np.r] := y[np.r] + spmx[np] * x[np.c]; spmx := spmx -- np}}
}</SEQ></GOALSEQ></SEQGOAL></LEMMAGOAL><LEMMATYPE><AXIOMLEMMA/></LEMMATYPE><USEDLEMMAS><LIST></LIST></USEDLEMMAS><SMTINFOS><LIST></LIST></SMTINFOS><MAINGOALS><LIST></LIST></MAINGOALS><USERACTIONS>0</USERACTIONS><PROOFSTEPS>0</PROOFSTEPS><PROVEDP><F/></PROVEDP><PROOFEXISTSP><F/></PROOFEXISTSP><PROOFFILENAME>MULT-proof</PROOFFILENAME><LEMMAPROOFBAG><NONE/></LEMMAPROOFBAG><SAVETREEP><F/></SAVETREEP><INFOFILENAME>MULT-proof-info</INFOFILENAME><LEMMAPROOFINFOBAG><NONE/></LEMMAPROOFINFOBAG><SAVEINFOSP><F/></SAVEINFOSP><SIMPFEATURES><LIST></LIST></SIMPFEATURES><HISTINFO><LIST></LIST></HISTINFO></LEMMAINFO><VALIDITY>The proof is valid.</VALIDITY><FEATURES><LIST></LIST></FEATURES><HISTORY><LIST></LIST></HISTORY><USEDBY><LIST><LE>correct</LE></LIST></USEDBY><USEDBYUNITS><LIST></LIST></USEDBYUNITS><COMMENT></COMMENT></LONGLEMMAINFO>