=================================================================== RCS file: /home/cvs/OpenXM/src/kan96xx/Kan/dr.sm1,v retrieving revision 1.47 retrieving revision 1.50 diff -u -p -r1.47 -r1.50 --- OpenXM/src/kan96xx/Kan/dr.sm1 2004/09/20 02:11:22 1.47 +++ OpenXM/src/kan96xx/Kan/dr.sm1 2005/06/16 08:40:04 1.50 @@ -1,4 +1,4 @@ -% $OpenXM: OpenXM/src/kan96xx/Kan/dr.sm1,v 1.46 2004/09/17 00:47:08 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 %% This file is error clean. @@ -4383,6 +4383,92 @@ $ [ff ff] fromVectors :: $ } def /~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 ;