version 1.10, 2002/11/08 14:18:01 |
version 1.12, 2003/05/15 00:49:17 |
|
|
% $OpenXM: OpenXM/src/kan96xx/Kan/dr.sm1,v 1.9 2002/02/12 08:54:55 takayama Exp $ |
% $OpenXM: OpenXM/src/kan96xx/Kan/dr.sm1,v 1.11 2003/05/15 00:42:07 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. |
|
|
|
|
[(ord_w) |
[(ord_w) |
[(ff [v1 w1 v2 w2 ... vm wm] ord_w d) |
[(ff [v1 w1 v2 w2 ... vm wm] ord_w d) |
(poly ff; string v1; integer w1; ...) |
(poly ff; string v1; integer w1; ...) |
(order of ff by the weight vector [w1 w2 ...]) |
(order of the initial of ff by the weight vector [w1 w2 ...]) |
(Example: [(x,y) ring_of_polynomials 0] define_ring ) |
(Example: [(x,y) ring_of_polynomials 0] define_ring ) |
( (x^2 y^3-x). [(x) 2 (y) 1] ord_w ::) |
( (x^2 y^3-x). [(x) 2 (y) 1] ord_w ::) |
] |
] |
|
|
<< www iii 1 add get >> mul |
<< www iii 1 add get >> mul |
ddd add /ddd set |
ddd add /ddd set |
} for |
} for |
|
/ord_w.LLL |
|
/arg1 ddd def |
|
] pop |
|
popVariables |
|
arg1 |
|
} def |
|
|
|
[(ord_w_all) |
|
[(ff [v1 w1 v2 w2 ... vm wm] ord_w d) |
|
(poly ff; string v1; integer w1; ...) |
|
(order of ff by the weight vector [w1 w2 ...]) |
|
(Example: [(x,y,t) ring_of_polynomials 0] define_ring ) |
|
( (x^2 y^3-x-t). [(t) 1 ] ord_w_all ::) |
|
] |
|
] putUsages |
|
/ord_w_all { |
|
/arg2 set /arg1 set |
|
[/ord_w-in /fff /fff-in /www /rrr /iii /ddd /zzz] pushVariables |
|
[ |
|
/fff arg1 def |
|
/www arg2 def |
|
fff (0). eq { /ddd -intInfinity def /ord_w.LLL goto} { } ifelse |
|
fff (ring) dc /rrr set |
|
/zzz (0) rrr ,, def |
|
fff init /fff-in set |
|
fff fff-in sub /fff set |
|
/ddd 0 def |
|
{ |
|
0 2 www length 1 sub { |
|
/iii set |
|
fff-in << www iii get rrr ,, >> degree |
|
<< www iii 1 add get >> mul |
|
ddd add /ddd set |
|
} for |
|
fff zzz eq { exit } { } ifelse |
|
fff init /fff-in set |
|
fff fff-in sub /fff set |
|
} loop |
/ord_w.LLL |
/ord_w.LLL |
/arg1 ddd def |
/arg1 ddd def |
] pop |
] pop |