procedure ptrans(d2: integer; var sd: scalar; var v1,v2: vector); var j,i,imax: integer; st: scalar; begin { ptrans } imax:=min(d2,vdim-1); v2[0]:=v1[imax]; for i:=1 to imax do begin v2[i]:=v2[i-1]; for j:=i-1 downto 1 do begin sprod(sd,v2[j],st); ssum(st,v2[j-1],v2[j]); end; sprod(sd,v2[0],st); ssum(st,v1[imax-i],v2[0]); end; for i:=imax+1 to vdim do szero(v2[i]); end { ptrans };