=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/lib/weight,v retrieving revision 1.25 retrieving revision 1.36 diff -u -p -r1.25 -r1.36 --- OpenXM_contrib2/asir2000/lib/weight 2004/01/08 15:58:58 1.25 +++ OpenXM_contrib2/asir2000/lib/weight 2004/05/06 02:55:39 1.36 @@ -4,7 +4,6 @@ load("gr")$ #define EPS 1E-6 #define TINY 1E-20 #define MAX_ITER 100 -#define ROUND_THRESHOLD 0.4 def rotate(A,I,J,K,L,C,S){ @@ -120,9 +119,8 @@ def interval2value(A,Vars){ print("bug")$ return []$ } - - if(length(B)==0){ - if(A) + else if(length(B)==0){ + if(fop(A)==0) return [Vars,1]$ else return []$ @@ -200,23 +198,10 @@ def fixedpoint(A,FLAG){ return fixpointmain(F,Vars)$ } -def nonzerovec(A){ - - for(I=0;IB ? -1:0))$ } -def worder(A,B){ - return (A[0]B[0] ? -1:0))$ -} - def bsort(A){ K=size(A)[0]-1$ @@ -234,101 +219,23 @@ def bsort(A){ return A$ } -def perm(I,P,TMP){ +def wsort(A,B,C,ID){ - if(I>0){ - TMP=perm(I-1,P,TMP)$ - for(J=I-1;J>=0;J--){ - T=P[I]$ - P[I]=P[J]$ - P[J]=T$ - TMP=perm(I-1,P,TMP)$ - T=P[I]$ - P[I]=P[J]$ - P[J]=T$ - } + D=newvect(length(B))$ + for(I=0;I