=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/lib/weight,v retrieving revision 1.1 retrieving revision 1.9 diff -u -p -r1.1 -r1.9 --- OpenXM_contrib2/asir2000/lib/weight 2003/10/15 07:06:02 1.1 +++ OpenXM_contrib2/asir2000/lib/weight 2003/11/21 08:07:16 1.9 @@ -1,6 +1,54 @@ -#include load("solve")$ +load("gr")$ +def nonzerovec(A){ + + for(I=0;IB ? -1:0))$ +} + +def worder(A,B){ + return (A[0]B[0] ? -1:0))$ +} + +def wsort(A,B,C){ + + D=newvect(length(B))$ + for(I=0;IB[I]) - return -1$ + for(P=1,I=0;IED) - continue$ - for(K=ST;K<=ED;K++){ - NormMat[I][J]=NormMat[I][J]+ - extmat(ExpMat,OneMat,ExpMatColNum,ExtMatColNum,K,I)* - extmat(ExpMat,OneMat,ExpMatColNum,ExtMatColNum,K,J)$ - } - } + VarsList=[]$ + for(I=0;IED) - continue$ + Res=solve(reverse(SolveList),reverse(VarsList))$ + Res=getgcd(Res,Rea)$ - for(K=ST;K<=ED;K++){ - NormMat[I][ExtMatColNum-1]=NormMat[I][ExtMatColNum-1]+ - extmat(ExpMat,OneMat,ExpMatColNum,ExtMatColNum,K,I)* - extmat(ExpMat,OneMat,ExpMatColNum,ExtMatColNum,K,ExtMatColNum-1)$ + if(nonposdegchk(Res)){ + + ResVars=resvars(Res,Vars)$ + + if(checktd(PolyList,Vars,ResVars)==1){ + + for(J=0;J