=================================================================== RCS file: /home/cvs/OpenXM/src/kan96xx/Doc/ecart.sm1,v retrieving revision 1.25 retrieving revision 1.30 diff -u -p -r1.25 -r1.30 --- OpenXM/src/kan96xx/Doc/ecart.sm1 2004/05/13 05:52:53 1.25 +++ OpenXM/src/kan96xx/Doc/ecart.sm1 2004/07/29 08:13:42 1.30 @@ -1,5 +1,6 @@ -% $OpenXM: OpenXM/src/kan96xx/Doc/ecart.sm1,v 1.24 2004/05/13 05:33:10 takayama Exp $ -%[(parse) (hol.sm1) pushfile] extension +% $OpenXM: OpenXM/src/kan96xx/Doc/ecart.sm1,v 1.29 2004/05/28 08:11:31 takayama Exp $ +(hol_loaded) boundp { } +{ [(parse) (hol.sm1) pushfile] extension } ifelse %[(parse) (appell.sm1) pushfile] extension (ecart.sm1 : ecart division for D, 2003/07/25 ) message-quiet @@ -7,7 +8,7 @@ /ecart.end { endEcart } def /ecart.autoHomogenize 1 def /ecart.needSyz 0 def -/ecartd.gb.oxRingStructure [ ] def +/ecartd.gb.oxRingStructure [[ ] [ ] ] def /ecartd.begin { ecart.begin @@ -1628,7 +1629,16 @@ (x,y) [[(Dx) 1 (Dy) 1] [(x) -1 (y) -1 (Dx) 1 (Dy) 1]]] /ggg set (Dx) ggg ecartd.reduction /gg4 set gg4 message - [gg2 gg3 gg4] + + (----------- reduction by h=1 ---------------) message + [[( 2*(1-x-y) Dx + 1 ) ( 2*(1-x-y) Dy + 1 )] + (x,y) [[(Dx) 1 (Dy) 1] [(x) -1 (y) -1 (Dx) 1 (Dy) 1]]] /ggg set + [(Homogenize) 0] system_variable + (Dx) ggg ecartd.reduction /gg5 set + [(Homogenize) 1] system_variable + gg5 message + + [gg2 gg3 gg4 gg5] } def /ecarth.reduction { @@ -1682,6 +1692,38 @@ $ (Dx+Dy) ggg ecartd.reduction :: $ ]] putUsages +/ecartd.reduction_noh { + /arg2 set + /arg1 set + [/in-ecarth.reduction_noh /gbasis /flist] pushVariables + [(Homogenize)] pushEnv + [ + /gbasis arg2 def + /flist arg1 def + [(Homogenize) 0] system_variable + flist gbasis ecartd.reduction /arg1 set + ] pop + popEnv + popVariables + arg1 +} def + +[(ecartd.reduction_noh) +[ (f basis ecartd.reduction_noh r) + (f is reduced by basis by the tangent cone algorithm.) + (The first element of basis must be a standard basis.) + (r is the return value format of reduction.) + (r=[h,c0,syz,input], h = c0 f + \sum syz_i g_i) + (basis is given in the argument format of ecartd.gb and) + (it should not contain the variable h. cf. dehomogenize) + $h[0,1](D)-homogenization is NOT used.$ + (cf. reduction, ecartd.gb, ecartd.reduction ) + $Example:$ + $ [[( 2*(1-x-y) Dx + 1 ) ( 2*(1-x-y) Dy + 1 )] $ + $ (x,y) [[(Dx) 1 (Dy) 1] [(x) -1 (y) -1 (Dx) 1 (Dy) 1]]] /ggg set $ + $ (Dx+Dy) ggg ecartd.reduction_noh :: $ +]] putUsages + /ecart.stdOrder { /arg1 set [/in-ecart.stdOrder /vv /tt /dvv /wv1 /wv2 @@ -1799,7 +1841,7 @@ } def /ecart.homogenize01Ideal { /arg1 set - [/in.ecart.homogenize01Ideal /ll /vv /wv] pushVariables + [/in.ecart.homogenize01Ideal /ll /vv /wv /ans] pushVariables [ /ll arg1 0 get def /vv arg1 1 get def @@ -1813,7 +1855,9 @@ [vv ring_of_differential_operators vv ecart.stdOrder weight_vector 0 [(weightedHomogenization) 1]] define_ring - ll ,,, {ecart.homogenize01 ecart.dehomogenizeH} map /arg1 set + ll ,,, {ecart.homogenize01 ecart.dehomogenizeH} map /ans set + ecart.end + /arg1 ans def ] pop popVariables arg1 @@ -1829,3 +1873,4 @@ ( ) message-quiet +/ecart_loaded 1 def \ No newline at end of file