procedure vpowers(var s: scalar; var v: vector); var i,i2,n: integer; begin { vpowers } v[0]:=sone; v[1]:=s; i2:=1; repeat i:=i2; i2:=min(2*i,vdim); for n:=i+1 to i2 do sprod(v[n-i],v[i],v[n]); until i2=vdim; end { vpowers };