version 1.37, 2004/09/14 08:30:47 |
version 1.40, 2012/08/26 01:38:02 |
|
|
% $OpenXM: OpenXM/src/kan96xx/Doc/ecart.sm1,v 1.36 2004/09/14 05:49:36 takayama Exp $ |
% $OpenXM: OpenXM/src/kan96xx/Doc/ecart.sm1,v 1.39 2004/09/14 11:51:20 takayama Exp $ |
(hol_loaded) boundp { } |
(hol_loaded) boundp { } |
{ [(parse) (hol.sm1) pushfile] extension } ifelse |
{ [(parse) (hol.sm1) pushfile] extension } ifelse |
%[(parse) (appell.sm1) pushfile] extension |
%[(parse) (appell.sm1) pushfile] extension |
|
|
[(ecart.homogenize01) |
[(ecart.homogenize01) |
[(obj ecart.homogenize01 r) |
[(obj ecart.homogenize01 r) |
(Example: ) |
(Example: ) |
|
$(appell.sm1) run ; $ |
( [(x1,x2) ring_of_differential_operators ) |
( [(x1,x2) ring_of_differential_operators ) |
( [[(H) 1 (h) 1 (x1) 1 (x2) 1] ) |
( [[(H) 1 (h) 1 (x1) 1 (x2) 1] ) |
( [(h) 1 (Dx1) 1 (Dx2) 1] ) |
( [(h) 1 (Dx1) 1 (Dx2) 1] ) |
|
|
popVariables |
popVariables |
/arg1 |
/arg1 |
} def |
} def |
/ecart.checkOrder.noglobal { |
/ecart.checkOrder.noGlobal { |
/arg1 set |
/arg1 set |
[/vv /tt /dd /n /i] pushVariables |
[/vv /tt /dd /n /i] pushVariables |
[ |
[ |
|
|
[/in-ecartd.isSameIdeal_h /aa /ii /jj /iigg /jjgg /vv /ans /k /n /f |
[/in-ecartd.isSameIdeal_h /aa /ii /jj /iigg /jjgg /vv /ans /k /n /f |
/ecartd.isSameIdeal_h.opt |
/ecartd.isSameIdeal_h.opt |
/save-ecart.autoHomogenize /wv /save-ecart.message.quiet |
/save-ecart.autoHomogenize /wv /save-ecart.message.quiet |
/vvGlobal /rng |
/vvGlobal /rng /noRecomputation |
] pushVariables |
] pushVariables |
[(CurrentRingp) (Homogenize_vec)] pushEnv |
[(CurrentRingp) (Homogenize_vec)] pushEnv |
[ |
[ |
|
|
gb.verbose { (Getting in ecartd.isSameIdeal_h) message } { } ifelse |
gb.verbose { (Getting in ecartd.isSameIdeal_h) message } { } ifelse |
%% comparison of hilbert series has not yet been implemented. |
%% comparison of hilbert series has not yet been implemented. |
/save-ecart.message.quiet ecart.message.quiet def |
/save-ecart.message.quiet ecart.message.quiet def |
aa length 3 eq , aa length 4 eq , or { } |
aa length 2 gt { } |
{ ([ii jj vv] ecartd.isSameIdeal_h) error } ifelse |
{ ([ii jj vv] ecartd.isSameIdeal_h) error } ifelse |
/ii aa 0 get def |
/ii aa 0 get def |
/jj aa 1 get def |
/jj aa 1 get def |
/vv aa 2 get def |
/vv aa 2 get def |
|
|
aa length 4 eq { |
aa length 3 gt { |
/vvGlobal aa 3 get def |
/vvGlobal aa 3 get def |
vvGlobal isString { [vvGlobal to_records pop] /vvGlobal set } |
vvGlobal isString { [vvGlobal to_records pop] /vvGlobal set } |
{ vvGlobal { toString } map /vvGlobal set } ifelse |
{ vvGlobal { toString } map /vvGlobal set } ifelse |
|
|
/rng [vv wv [(partialEcartGlobalVarX) vvGlobal]] def |
/rng [vv wv [(partialEcartGlobalVarX) vvGlobal]] def |
} ifelse |
} ifelse |
|
|
/save-ecart.autoHomogenize ecart.autoHomogenize def |
aa (noRecomputation) getNode /noRecomputation set |
/ecart.autoHomogenize 0 def |
noRecomputation tag 0 eq { /noRecomputation 0 def } { |
[ii] rng join ecartd.gb /iigg set |
/noRecomputation 1 def |
[jj] rng join ecartd.gb /jjgg set |
} ifelse |
save-ecart.autoHomogenize /ecart.autoHomogenize set |
noRecomputation { |
|
[ii] /iigg set [jj] /jjgg set |
|
} { |
|
/save-ecart.autoHomogenize ecart.autoHomogenize def |
|
/ecart.autoHomogenize 0 def |
|
[ii] rng join ecartd.gb /iigg set |
|
[jj] rng join ecartd.gb /jjgg set |
|
save-ecart.autoHomogenize /ecart.autoHomogenize set |
|
} ifelse |
|
|
iigg getRing ring_def |
iigg getRing ring_def |
|
|
|
|
iigg 0 get /iigg set |
iigg 0 get /iigg set |
jjgg 0 get /jjgg set |
jjgg 0 get /jjgg set |
%%Bug: not implemented for the case of module. |
%%Bug: not implemented for the case of module. |
|
/ecartd.isSameIdeal_h.gb [iigg jjgg] def |
|
|
/save-ecart.message.quiet ecart.message.quiet def |
/save-ecart.message.quiet ecart.message.quiet def |
/ecart.message.quiet 1 def |
/ecart.message.quiet 1 def |
|
|
$The ideals ii and jj will be compared in the ring h[0,1](D_0).$ |
$The ideals ii and jj will be compared in the ring h[0,1](D_0).$ |
$ii and jj are re-parsed.$ |
$ii and jj are re-parsed.$ |
$Example 1: [ [((1-x) Dx + h)] [((1-x)^2 Dx + h (1-x))] (x)] ecartd.isSameIdeal_h $ |
$Example 1: [ [((1-x) Dx + h)] [((1-x)^2 Dx + h (1-x))] (x)] ecartd.isSameIdeal_h $ |
|
( ) |
([ii jj vv vvGlobal] ecartd.isSameIdeal_h bool) |
([ii jj vv vvGlobal] ecartd.isSameIdeal_h bool) |
$ Ideals are compared in Q(x')_0 [x''] <Dx',Dx'',h> $ |
$ Ideals are compared in Q(x')_0 [x''] <Dx',Dx'',h> $ |
( where x'' is specified in vvGlobal.) |
( where x'' is specified in vvGlobal.) |
(cf. partialEcartGlobalVarX option) |
(cf. partialEcartGlobalVarX option) |
|
( ) |
|
$Option list: [(noRecomputation) 1] $ |
|
$Example 2: [ [((1-x) Dx + h)] [((1-x)^2 Dx + h (1-x))] (x)] ecartd.isSameIdeal_h $ |
|
$ ecartd.isSameIdeal_h.gb 0 get /ii set $ |
|
$ ecartd.isSameIdeal_h.gb 1 get /jj set $ |
|
$ [ ii jj (x) [[(noRecomputation) 1]] ] ecartd.isSameIdeal_h $ |
]] putUsages |
]] putUsages |
|
|
/ecartd.isSameIdeal_noh { |
/ecartd.isSameIdeal_noh { |
|
|
[/aa /ii /jj /iigg /jjgg /vv /ans /k /n /f |
[/aa /ii /jj /iigg /jjgg /vv /ans /k /n /f |
/ecartd.isSameIdeal_h.opt |
/ecartd.isSameIdeal_h.opt |
/save-ecart.autoHomogenize /wv /save-ecart.message.quiet |
/save-ecart.autoHomogenize /wv /save-ecart.message.quiet |
/vvGlobal /rng |
/vvGlobal /rng /noRecomputation |
] pushVariables |
] pushVariables |
[(CurrentRingp) (Homogenize_vec)] pushEnv |
[(CurrentRingp) (Homogenize_vec)] pushEnv |
[ |
[ |
|
|
gb.verbose { (Getting in ecartd.isSameIdeal_noh) message } { } ifelse |
gb.verbose { (Getting in ecartd.isSameIdeal_noh) message } { } ifelse |
%% comparison of hilbert series has not yet been implemented. |
%% comparison of hilbert series has not yet been implemented. |
/save-ecart.message.quiet ecart.message.quiet def |
/save-ecart.message.quiet ecart.message.quiet def |
aa length 3 eq , aa length 4 eq , or { } |
aa length 2 gt { } |
{ ([ii jj vv] ecartd.isSameIdeal_noh) error } ifelse |
{ ([ii jj vv] ecartd.isSameIdeal_noh) error } ifelse |
/ii aa 0 get def |
/ii aa 0 get def |
/jj aa 1 get def |
/jj aa 1 get def |
/vv aa 2 get def |
/vv aa 2 get def |
|
|
aa length 4 eq { |
aa length 3 gt { |
/vvGlobal aa 3 get def |
/vvGlobal aa 3 get def |
vvGlobal isString { [vvGlobal to_records pop] /vvGlobal set } |
vvGlobal isString { [vvGlobal to_records pop] /vvGlobal set } |
{ vvGlobal { toString } map /vvGlobal set } ifelse |
{ vvGlobal { toString } map /vvGlobal set } ifelse |
|
|
/rng [vv wv [(partialEcartGlobalVarX) vvGlobal]] def |
/rng [vv wv [(partialEcartGlobalVarX) vvGlobal]] def |
} ifelse |
} ifelse |
|
|
/save-ecart.autoHomogenize ecart.autoHomogenize def |
aa (noRecomputation) getNode /noRecomputation set |
/ecart.autoHomogenize 0 def |
noRecomputation tag 0 eq { /noRecomputation 0 def } { |
[ii] rng join ecartd.gb /iigg set |
/noRecomputation 1 def |
[jj] rng join ecartd.gb /jjgg set |
} ifelse |
save-ecart.autoHomogenize /ecart.autoHomogenize set |
noRecomputation { |
|
[ii] /iigg set [jj] /jjgg set |
|
} { |
|
/save-ecart.autoHomogenize ecart.autoHomogenize def |
|
/ecart.autoHomogenize 0 def |
|
[ii] rng join ecartd.gb /iigg set |
|
[jj] rng join ecartd.gb /jjgg set |
|
save-ecart.autoHomogenize /ecart.autoHomogenize set |
|
} ifelse |
|
|
iigg getRing ring_def |
iigg getRing ring_def |
|
|
|
|
/ans 1 def |
/ans 1 def |
iigg 0 get /iigg set |
iigg 0 get /iigg set |
jjgg 0 get /jjgg set |
jjgg 0 get /jjgg set |
|
/ecartd.isSameIdeal_noh.gb [iigg jjgg] def |
%%Bug: not implemented for the case of module. |
%%Bug: not implemented for the case of module. |
|
|
/save-ecart.message.quiet ecart.message.quiet def |
/save-ecart.message.quiet ecart.message.quiet def |
|
|
(cf. partialEcartGlobalVarX option, ecartd.reduction_noh, ecartd.isSameIdeal_h) |
(cf. partialEcartGlobalVarX option, ecartd.reduction_noh, ecartd.isSameIdeal_h) |
$Example 2: [ [(1-z) (1-x-y-z)] [(1-x) (1-y)] (x,y,z) [(x)]] $ |
$Example 2: [ [(1-z) (1-x-y-z)] [(1-x) (1-y)] (x,y,z) [(x)]] $ |
$ ecartd.isSameIdeal_noh $ |
$ ecartd.isSameIdeal_noh $ |
|
$Option list: [(noRecomputation) 1] $ |
|
$Example 2': [ [(1-z) (1-x-y-z)] [(1-x) (1-y)] (x,y,z) [(x)]] ecartd.isSameIdeal_noh$ |
|
$ ecartd.isSameIdeal_noh.gb 0 get /ii set $ |
|
$ ecartd.isSameIdeal_noh.gb 1 get /jj set $ |
|
$ [ ii jj (x) [[(noRecomputation) 1]] ] ecartd.isSameIdeal_noh $ |
]] putUsages |
]] putUsages |
(ecartd.isSameIdeal_noh ) messagen-quiet |
(ecartd.isSameIdeal_noh ) messagen-quiet |
|
|