=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/lib/primdec_mod,v retrieving revision 1.11 retrieving revision 1.15 diff -u -p -r1.11 -r1.15 --- OpenXM_contrib2/asir2000/lib/primdec_mod 2003/08/05 05:56:19 1.11 +++ OpenXM_contrib2/asir2000/lib/primdec_mod 2006/02/24 01:15:56 1.15 @@ -1,4 +1,4 @@ -/* $OpenXM: OpenXM_contrib2/asir2000/lib/primdec_mod,v 1.10 2003/05/07 06:26:51 noro Exp $ */ +/* $OpenXM: OpenXM_contrib2/asir2000/lib/primdec_mod,v 1.14 2004/07/30 02:24:11 noro Exp $ */ extern Hom,GBTime$ extern DIVLIST,INTIDEAL,ORIGINAL,ORIGINALDIMENSION,STOP,Trials,REM$ @@ -6,11 +6,12 @@ extern T_GRF,T_INT,T_PD,T_MP$ extern BuchbergerMinipoly,PartialDecompByLex,ParallelMinipoly$ extern B_Win,D_Win$ extern COMMONCHECK_SF,CID_SF$ -extern LIBRARY_GR_LOADED$ -extern LIBRARY_FFF_LOADED$ -if(!LIBRARY_FFF_LOADED) load("fff"); else ; LIBRARY_FFF_LOADED = 1$ -if(!LIBRARY_GR_LOADED) load("gr"); else ; LIBRARY_GR_LOADED = 1$ +if (!module_definedp("fff")) load("fff"); else $ +if (!module_definedp("gr")) load("gr"); else $ +module primdec_mod $ + /* Empty for now. It will be used in a future. */ +endmodule $ /*==============================================*/ /* prime decomposition of ideals over */ @@ -1973,11 +1974,13 @@ def contraction(P,V,W) /* This procedure is called by zeroprimedecomposition. */ /* So, P is supposed to be a GB w.r.t. DRL. */ + Ord0 = dp_ord(); Ord=0; YSet=setminus(W,V); Ord1 = [[Ord,length(V)],[0,length(YSet)]]; - GP1 = dp_gr_f_main(P,W,Hom,Ord1); + W1 = append(V,YSet); + GP1 = dp_gr_f_main(P,W1,Hom,Ord1); Factor = extcont_factor(GP1,V,Ord); for ( F = 1, T = Factor; T != []; T = cdr(T) ) @@ -1989,6 +1992,7 @@ def contraction(P,V,W) for ( T = G; T != []; T = cdr(T) ) if ( !member(Vt,vars(car(T))) ) R = cons(car(T),R); + dp_ord(Ord0); return [R,F]; }