version 1.46, 2004/09/17 00:47:08 |
version 1.50, 2005/06/16 08:40:04 |
|
|
% $OpenXM: OpenXM/src/kan96xx/Kan/dr.sm1,v 1.45 2004/09/17 00:10:41 takayama Exp $ |
% $OpenXM: OpenXM/src/kan96xx/Kan/dr.sm1,v 1.49 2005/06/16 06:21:21 takayama Exp $ |
%% dr.sm1 (Define Ring) 1994/9/25, 26 |
%% dr.sm1 (Define Ring) 1994/9/25, 26 |
%% This file is error clean. |
%% This file is error clean. |
|
|
|
|
(type?) data_conversion RingP eq |
(type?) data_conversion RingP eq |
} def |
} def |
|
|
|
[(isByteArray) |
|
[(obj isByteArray bool) ] |
|
] putUsages |
|
/isByteArray { |
|
(type?) data_conversion ByteArrayP eq |
|
} def |
|
|
/toString.tmp { |
/toString.tmp { |
/arg1 set |
/arg1 set |
[/obj /fname] pushVariables |
[/obj /fname] pushVariables |
|
|
{ obj (string) data_conversion } { } ifelse |
{ obj (string) data_conversion } { } ifelse |
obj isRational |
obj isRational |
{ obj (string) data_conversion } { } ifelse |
{ obj (string) data_conversion } { } ifelse |
|
obj isByteArray |
|
{ obj (array) data_conversion toString } { } ifelse |
obj tag 0 eq |
obj tag 0 eq |
{ (null) } { } ifelse |
{ (null) } { } ifelse |
|
|
|
|
/RationalFunctionP 16 def |
/RationalFunctionP 16 def |
/ClassP 17 def |
/ClassP 17 def |
/DoubleP 18 def |
/DoubleP 18 def |
|
/ByteArrayP 19 def |
/@.datatypeConstant.usage [ |
/@.datatypeConstant.usage [ |
(IntegerP, LiteralP, StringP, ExecutableArrayP, ArrayP, PolyP, FileP, RingP,) |
(IntegerP, LiteralP, StringP, ExecutableArrayP, ArrayP, PolyP, FileP, RingP,) |
(UniversalNumberP, RationalFunctionP, ClassP, DoubleP) |
(UniversalNumberP, RationalFunctionP, ClassP, DoubleP, ByteArrayP) |
( return data type identifiers.) |
( return data type identifiers.) |
(Example: 7 tag IntegerP eq ---> 1) |
(Example: 7 tag IntegerP eq ---> 1) |
] def |
] def |
|
|
[(RationalFunctionP) @.datatypeConstant.usage ] putUsages |
[(RationalFunctionP) @.datatypeConstant.usage ] putUsages |
[(ClassP) @.datatypeConstant.usage ] putUsages |
[(ClassP) @.datatypeConstant.usage ] putUsages |
[(DoubleP) @.datatypeConstant.usage ] putUsages |
[(DoubleP) @.datatypeConstant.usage ] putUsages |
|
[(ByteArrayP) @.datatypeConstant.usage ] putUsages |
|
|
[(__) |
[(__) |
[( string ring __ polynomial) |
[( string ring __ polynomial) |
Line 4372 $ [ff ff] fromVectors :: $ |
|
Line 4383 $ [ff ff] fromVectors :: $ |
|
} def |
} def |
/~put~ makeInfix |
/~put~ makeInfix |
|
|
|
/toTokensBySpace { |
|
/arg1 set |
|
[(cgiToTokens) arg1 [ ]] extension |
|
} def |
|
[(toTokensBySpace) |
|
[ |
|
( string toTokensBySpace token_array ) |
|
]] putUsages |
|
|
|
/setAttributeList { |
|
/arg2 set |
|
/arg1 set |
|
[ |
|
[(setAttributeList) arg1 arg2] extension /arg1 set |
|
] pop |
|
arg1 |
|
} def |
|
/getAttributeList { |
|
/arg1 set |
|
[(getAttributeList) arg1] extension |
|
} def |
|
/setAttribute { |
|
/arg3 set |
|
/arg2 set |
|
/arg1 set |
|
[ |
|
[(setAttribute) arg1 arg2 arg3] extension /arg1 set |
|
] pop |
|
arg1 |
|
} def |
|
/getAttribute { |
|
/arg2 set |
|
/arg1 set |
|
[(getAttribute) arg1 arg2] extension |
|
} def |
|
[(setAttributeList) |
|
[ |
|
(ob attr setAttributeList new-obj ) |
|
(Example: [(x-1) (y-1)] [(gb) 1] setAttributeList /ff set ) |
|
]] putUsages |
|
[(setAttribute) |
|
[ |
|
(ob key value setAttribute new-obj ) |
|
(Example: [(x-1) (y-1)] (gb) 1 setAttribute /ff set ) |
|
]] putUsages |
|
[(getAttributeList) |
|
[ |
|
(ob getAttributeList attr-obj ) |
|
(Example: [(x-1) (y-1)] [(gb) 1] setAttributeList /ff set ) |
|
( ff getAttributeList :: ) |
|
]] putUsages |
|
[(getAttribute) |
|
[ |
|
(ob key getAttribute value ) |
|
(Example: [(x-1) (y-1)] (gb) 1 setAttribute /ff set ) |
|
( ff (gb) getAttribute :: ) |
|
]] putUsages |
|
|
|
% [(gbCheck) 1 (needSyz) 1 (countDown) 100] (attribute format) |
|
% --> [(gbCheck) (needSyz) (countDown) 100] (groebner option format) |
|
% cf. gb |
|
/configureGroebnerOption { |
|
/arg1 set |
|
[/opt /i] pushVariables |
|
[ |
|
/opt arg1 def |
|
opt tag 0 eq { |
|
/arg1 null def |
|
} { |
|
[ |
|
0 2 opt length 1 sub { |
|
/i set |
|
opt i get |
|
opt i get (countDown) eq { |
|
opt i 1 add get |
|
} { } ifelse |
|
opt i get (stopDegree) eq { |
|
opt i 1 add get |
|
} { } ifelse |
|
} for |
|
] /arg1 set |
|
} ifelse |
|
] pop |
|
popVariables |
|
arg1 |
|
} def |
|
|
; |
; |
|
|