version 1.2, 2000/01/21 03:01:25 |
version 1.6, 2000/12/29 07:19:39 |
|
|
/* $OpenXM$ */ |
/* $OpenXM: OpenXM/src/k097/help.k,v 1.5 2000/12/28 00:08:13 takayama Exp $ */ |
if (K00_verbose) |
if (K00_verbose) |
Println("help.k (help.ccc). 8/6, 1996 --- 8/7, 1996. 3/6, 1997 --- 12/21, 1997."); |
Println("help.k (help.ccc). 8/6, 1996 --- 8/7, 1996. 3/6, 1997 --- 12/21, 1997."); |
|
|
Line 270 HelpAdd(["IsString", |
|
Line 270 HelpAdd(["IsString", |
|
["IsString(obj) returns true if << obj >> is a string (object obj).", |
["IsString(obj) returns true if << obj >> is a string (object obj).", |
"Example: if (IsString(\"abc\")) Println(\"Hello\"); ;"]]); |
"Example: if (IsString(\"abc\")) Println(\"Hello\"); ;"]]); |
|
|
|
HelpAdd(["IsRing", |
|
["IsRing(obj) returns true if << obj >> is a ring (object obj)." |
|
]]); |
|
|
|
|
HelpAdd(["IsSm1Integer", |
HelpAdd(["IsSm1Integer", |
["IsSm1Integer(obj) returns true if << obj >> is an integer of sm1(object obj)."]]); |
["IsSm1Integer(obj) returns true if << obj >> is an integer of sm1(object obj)."]]); |
|
|
Line 331 def RingPoly(vList,weightMatrix,pp) { |
|
Line 335 def RingPoly(vList,weightMatrix,pp) { |
|
sm1("[", vList, |
sm1("[", vList, |
"ring_of_polynomials ( ) elimination_order 0 ] define_ring |
"ring_of_polynomials ( ) elimination_order 0 ] define_ring |
/tmp set "); |
/tmp set "); |
|
SetRingVariables(); |
return(tmp); |
return(tmp); |
} else ; |
} else ; |
if (argsize == 2) { |
if (argsize == 2) { |
Line 351 def RingPoly(vList,weightMatrix,pp) { |
|
Line 356 def RingPoly(vList,weightMatrix,pp) { |
|
} |
} |
new0[i] = newtmp; |
new0[i] = newtmp; |
} |
} |
|
SetRingVariables(); |
ringpp = |
ringpp = |
sm1("[", vList, |
sm1("[", vList, |
"ring_of_polynomials ", new0, " weight_vector", pp, " ] define_ring"); |
"ring_of_polynomials ", new0, " weight_vector", pp, " ] define_ring"); |
Line 366 def IsSm1Integer(ob) { |
|
Line 372 def IsSm1Integer(ob) { |
|
sm1(ob , " isInteger /FunctionValue set "); |
sm1(ob , " isInteger /FunctionValue set "); |
} |
} |
|
|
|
def IsRing(ob) { |
|
sm1(ob , " isRing /FunctionValue set "); |
|
} |
|
|
|
|
def CancelNumber(rn) { |
def CancelNumber(rn) { |
local tmp; |
local tmp; |
sm1(" [(cancel) ",rn," ] mpzext /tmp set "); |
sm1(" [(cancel) ",rn," ] mpzext /tmp set "); |
Line 374 def CancelNumber(rn) { |
|
Line 384 def CancelNumber(rn) { |
|
sm1(" tmp (denominator) dc (1).. eq { /FunctionValue tmp (numerator) dc def} { /FunctionValue tmp def } ifelse "); |
sm1(" tmp (denominator) dc (1).. eq { /FunctionValue tmp (numerator) dc def} { /FunctionValue tmp def } ifelse "); |
} |
} |
|
|
|
def DC_polynomial(obj) { |
|
return(DC(obj,"polynomial")); |
|
} |
def DC(obj,key) { |
def DC(obj,key) { |
|
if (IsArray(obj) && key=="polynomial") { |
|
return(Map(obj,"DC_polynomial")); |
|
} |
if (key == "string") { return(ToString(obj)); } |
if (key == "string") { return(ToString(obj)); } |
else if (key == "integer") { key = "universalNumber"; } |
else if (key == "integer") { key = "universalNumber"; } |
else if (key == "sm1integer") { key = "integer"; } |
else if (key == "sm1integer") { key = "integer"; } |
Line 506 def RingDonIndexedVariables(vList, size, weightMatrix, |
|
Line 522 def RingDonIndexedVariables(vList, size, weightMatrix, |
|
if (argsize == 2) { |
if (argsize == 2) { |
vListD = AddString(["D",vList]); |
vListD = AddString(["D",vList]); |
myring = RingD(IndexedVariables(vList,size)); |
myring = RingD(IndexedVariables(vList,size)); |
SetRingVariables(); |
|
tmp = NewArray(size); |
tmp = NewArray(size); |
for (k00_i=0; k00_i<size; k00_i++) {tmp[k00_i]=Poly(Indexed(vList,k00_i));} |
for (k00_i=0; k00_i<size; k00_i++) {tmp[k00_i]=Poly(Indexed(vList,k00_i));} |
sm1(vList, " (literal) dc ", tmp, " def "); |
sm1(vList, " (literal) dc ", tmp, " def "); |
|
|
if (IsArray(f)) { |
if (IsArray(f)) { |
return(Map(f,"Tag")); |
return(Map(f,"Tag")); |
}else { |
}else { |
ans = sm1(f," tag (universalNumber) dc "); |
ans = sm1(f," etag (universalNumber) dc "); |
return(ans); |
return(ans); |
} |
} |
} |
} |
HelpAdd(["Tag", |
HelpAdd(["Tag", |
["Tag(f) returns the datatype tags of f where", |
["Tag(f) returns the datatype tags of f where", |
"5: string, 9: polynomial, 15: integer(big-num), 16: rational, ", |
"5: string, 9: polynomial, 15: integer(big-num), 16: rational, ", |
"17: object, 18:double.", |
"18:double, 257: Error ", |
"Ex. Tag([Poly(\"0\"), 0]):" |
"Ex. Tag([Poly(\"0\"), 0]):" |
]]); |
]]); |
|
|
|
def Error(s) { |
|
sm1(" s error "); |
|
} |
|
HelpAdd(["Error", |
|
["Error(s) causes an error and outputs a message s."]]); |
|
|
OutputPrompt ; |
OutputPrompt ; |