version 1.29, 2000/08/22 05:34:06 |
version 1.33, 2000/12/29 07:19:40 |
|
|
/* $OpenXM: OpenXM/src/k097/lib/minimal/minimal.k,v 1.28 2000/08/21 07:45:22 takayama Exp $ */ |
/* $OpenXM: OpenXM/src/k097/lib/minimal/minimal.k,v 1.32 2000/12/10 09:34:28 takayama Exp $ */ |
#define DEBUG 1 |
#define DEBUG 1 |
Sordinary = false; |
Sordinary = false; |
/* If you run this program on openxm version 1.1.2 (FreeBSD), |
/* If you run this program on openxm version 1.1.2 (FreeBSD), |
|
|
|
|
*/ |
*/ |
|
|
|
/* 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; |
SonAutoReduce = true; |
def Factor(f) { |
def Factor(f) { |
sm1(f, " fctr /FunctionValue set"); |
sm1(f, " fctr /FunctionValue set"); |
|
|
HelpAdd(["Max", |
HelpAdd(["Max", |
["Max(v) returns the maximal element in v."]]); |
["Max(v) returns the maximal element in v."]]); |
|
|
|
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 "); |
|
} |
|
HelpAdd(["Kernel", |
|
["Kernel(f) returns the syzygy of f.", |
|
"Return value [b, c]: b is a set of generators of the syzygies of f", |
|
" : c=[gb, backward transformation, syzygy without", |
|
" dehomogenization", |
|
"Example: Weyl(\"x,y\",[[\"x\",-1,\"Dx\",1]]); ", |
|
" s=Kernel([x*Dx+1,Dx^2+x^5]); s[0]:"]]); |
|
/* cf. sm1_syz in cohom.k */ |
|
def Gb(f) { |
|
sm1(" [f] gb /FunctionValue set "); |
|
} |
|
HelpAdd(["Gb", |
|
["Gb(f) returns the Groebner basis of f.", |
|
"cf. Kernel, Weyl."]]); |
|
|
|
|
/* End of standard functions that should be moved to standard libraries. */ |
/* End of standard functions that should be moved to standard libraries. */ |
def test0() { |
def test0() { |
local f; |
local f; |
|
|
} |
} |
|
|
|
|
|
|
def Sweyl(v,w) { |
def Sweyl(v,w) { |
/* extern WeightOfSweyl ; */ |
/* extern WeightOfSweyl ; */ |
local ww,i,n; |
local ww,i,n; |