=================================================================== RCS file: /home/cvs/OpenXM/src/k097/slib.k,v retrieving revision 1.1.1.1 retrieving revision 1.5 diff -u -p -r1.1.1.1 -r1.5 --- OpenXM/src/k097/slib.k 1999/10/08 02:12:15 1.1.1.1 +++ OpenXM/src/k097/slib.k 2000/12/10 09:34:27 1.5 @@ -1,4 +1,4 @@ - +/* $OpenXM: OpenXM/src/k097/slib.k,v 1.4 2000/12/10 03:12:19 takayama Exp $ */ /* slib.sm1, standard library. */ /* April 26-- , 1996 */ /* Don't use function names that is already used as a postscipt macro names*/ @@ -94,6 +94,7 @@ def RingD(vList,weightMatrix,pp) { sm1("[", vList, "ring_of_differential_operators ( ) elimination_order 0 ] define_ring /tmp set "); + SetRingVariables(); return(tmp); } else ; if (argsize == 2) { @@ -117,7 +118,7 @@ def RingD(vList,weightMatrix,pp) { ringpp = sm1("[", vList, "ring_of_differential_operators ", new0, " weight_vector",pp, " ] define_ring"); - /* setRingVariables(); It doesn't work. It's a mystery. */ + SetRingVariables(); sm1(" @@@.indexMode.flag.save @@@.indexMode "); return( ringpp ); } @@ -144,7 +145,7 @@ def getvarn() { sm1( "[(N)] system_variable (universalNumber) dc /FunctionValue set "); } -SetRingVariables_Verbose = true; +SetRingVariables_Verbose = false; def SetRingVariables() { /* Don't use local variables in this function, because we set global variables in this function. @@ -152,13 +153,9 @@ def SetRingVariables() { if (SetRingVariables_Verbose ) { Print("SetRingVariables() Setting the global variables : "); } - k00setRingVariables(0,sm1( "[(CC)] system_variable (universalNumber) dc ")); - k00setRingVariables(sm1( "[(C)] system_variable (universalNumber) dc "), - sm1( "[(LL)] system_variable (universalNumber) dc ")); - k00setRingVariables(sm1( "[(L)] system_variable (universalNumber) dc "), - sm1( "[(MM)] system_variable (universalNumber) dc ")); - k00setRingVariables(sm1( "[(M)] system_variable (universalNumber) dc "), - sm1( "[(NN)] system_variable (universalNumber) dc ")); + if (k00setRingVariables(0,sm1( "[(N)] system_variable (universalNumber) dc "))) { + sm1(" define_ring_variables "); + } if (SetRingVariables_Verbose) {Ln();} } @@ -169,25 +166,19 @@ def k00AreThereLeftBrace(s) { if (jj != -1) return(true); else return(false); } -def void k00setRingVariables(tmp002_p,tmp002_q) { - /* tmp002_ must not be used as variables names. */ - local tmp002_i,tmp002_v,tmp002_str; - PSfor (tmp002_i=tmp002_p;tmp002_i