=================================================================== RCS file: /home/cvs/OpenXM/src/k097/lib/minimal/minimal.k,v retrieving revision 1.30 retrieving revision 1.34 diff -u -p -r1.30 -r1.34 --- OpenXM/src/k097/lib/minimal/minimal.k 2000/11/19 05:50:30 1.30 +++ OpenXM/src/k097/lib/minimal/minimal.k 2001/01/05 11:14:28 1.34 @@ -1,4 +1,4 @@ -/* $OpenXM: OpenXM/src/k097/lib/minimal/minimal.k,v 1.29 2000/08/22 05:34:06 takayama Exp $ */ +/* $OpenXM: OpenXM/src/k097/lib/minimal/minimal.k,v 1.33 2000/12/29 07:19:40 takayama Exp $ */ #define DEBUG 1 Sordinary = false; /* If you run this program on openxm version 1.1.2 (FreeBSD), @@ -44,18 +44,12 @@ def Sprint2(s) { */ +/* We cannot use load command in the if statement. */ +load("lib/minimal/cohom.k"); +Load_sm1(["k0-tower.sm1","lib/minimal/k0-tower.sm1"],"k0-tower.sm1.loaded"); +Load_sm1(["new.sm1","lib/minimal/new.sm1"],"new.sm1.loaded"); +sm1(" oxNoX "); -load("cohom.k"); -def load_tower() { - if (Boundp("k0-tower.sm1.loaded")) { - }else{ - sm1(" [(parse) (k0-tower.sm1) pushfile ] extension "); - sm1(" [(parse) (new.sm1) pushfile ] extension "); - sm1(" /k0-tower.sm1.loaded 1 def "); - } - sm1(" oxNoX "); -} -load_tower(); SonAutoReduce = true; def Factor(f) { sm1(f, " fctr /FunctionValue set"); @@ -145,8 +139,15 @@ def Max(v) { HelpAdd(["Max", ["Max(v) returns the maximal element in v."]]); -def Kernel(f) { - sm1(" [f] syz /FunctionValue set "); +def Kernel(f,v) { + local ans; + /* v : string or ring */ + if (Length(Arglist) < 2) { + sm1(" [f] syz /ans set "); + }else{ + sm1(" [f v] syz /ans set "); + } + return(ans); } def Syz(f) { sm1(" [f] syz /FunctionValue set "); @@ -1475,23 +1476,10 @@ HelpAdd(["IsSameIdeal_h", "cf. ReParse" ]]); -def ReParse(a) { - local c; - if (IsArray(a)) { - c = Map(a,"ReParse"); - }else{ - sm1(a," toString . /c set"); - } - return(c); -} -HelpAdd(["ReParse", -["Reparse(obj): obj", - "It parses the given object in the current ring.", - "Outputs from SlaScala, Sschreyer may cause a trouble in other functions,", - "because it uses the Schreyer order.", - "In this case, ReParse the outputs from these functions.", - "cf. IsExaxt_h" -]]); +/* + Output of S* functions may cause a trouble because it uses Schreyer orders. + In this case, use ReParse(). +*/ def ScheckIfSchreyer(s) { local ss;