[BACK]Return to ecart.sm1 CVS log [TXT][DIR] Up to [local] / OpenXM / src / kan96xx / Doc

Diff for /OpenXM/src/kan96xx/Doc/ecart.sm1 between version 1.36 and 1.40

version 1.36, 2004/09/14 05:49:36 version 1.40, 2012/08/26 01:38:02
Line 1 
Line 1 
 % $OpenXM: OpenXM/src/kan96xx/Doc/ecart.sm1,v 1.35 2004/09/14 03:12:17 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
Line 167 
Line 167 
 [(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] )
Line 1027 
Line 1028 
   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
   [    [
Line 1839 
Line 1840 
   [/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
   [    [
Line 1847 
Line 1848 
     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
Line 1869 
Line 1870 
       /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
   
Line 1883 
Line 1892 
     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
     gb.verbose { (Comparing) message iigg message (and) message jjgg message }      gb.verbose { (Comparing) message iigg message (and) message jjgg message }
     {  } ifelse      {  } ifelse
     gb.verbose { ( ii < jj ?) messagen } {  } ifelse      gb.verbose { ( ii < jj ?) messagen } {  } ifelse
       /ecartd.isSameIdeal_h.failed [ ] def
     iigg length /n set      iigg length /n set
     0 1 n 1 sub {      0 1 n 1 sub {
       /k set        /k set
       iigg  k get        iigg  k get
       [jjgg] ecartd.reduction 0 get        [jjgg] ecartd.reduction 0 get
       (0). eq not { /ans 0 def /LLL.ecartd.isSame_h goto} {  } ifelse        (0). eq not {
           /ecartd.isSameIdeal_h.failed [ iigg k get jjgg] def
           /ans 0 def /LLL.ecartd.isSame_h goto
         } {  } ifelse
       gb.verbose { (o) messagen } {  } ifelse        gb.verbose { (o) messagen } {  } ifelse
     } for      } for
     gb.verbose { ( jj < ii ?) messagen } {  } ifelse      gb.verbose { ( jj < ii ?) messagen } {  } ifelse
Line 1903 
Line 1917 
       /k set        /k set
       jjgg k get        jjgg k get
       [iigg] ecartd.reduction 0 get        [iigg] ecartd.reduction 0 get
       (0). eq not { /ans 0 def /LLL.ecartd.isSame_h goto} {  } ifelse        (0). eq not {
            /ecartd.isSameIdeal_h.failed [ iigg jjgg k get] def
            /ans 0 def /LLL.ecartd.isSame_h goto
         } {  } ifelse
       gb.verbose { (o) messagen } {  } ifelse        gb.verbose { (o) messagen } {  } ifelse
     } for      } for
     /LLL.ecartd.isSame_h      /LLL.ecartd.isSame_h
Line 1924 
Line 1941 
  $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 {
Line 1935 
Line 1959 
   [/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
   [    [
Line 1943 
Line 1967 
     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
Line 1965 
Line 1989 
       /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
   
Line 1978 
Line 2010 
     /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
Line 1985 
Line 2018 
     gb.verbose { (Comparing) message iigg message (and) message jjgg message }      gb.verbose { (Comparing) message iigg message (and) message jjgg message }
     {  } ifelse      {  } ifelse
     gb.verbose { ( ii < jj ?) messagen } {  } ifelse      gb.verbose { ( ii < jj ?) messagen } {  } ifelse
       /ecartd.isSameIdeal_noh.failed [ ] def
     iigg length /n set      iigg length /n set
     0 1 n 1 sub {      0 1 n 1 sub {
       /k set        /k set
       iigg  k get        iigg  k get
       [jjgg] ecartd.reduction_noh 0 get        [jjgg] ecartd.reduction_noh 0 get
       (0). eq not { /ans 0 def /LLL.ecartd.isSame_noh goto} {  } ifelse        (0). eq not {
            /ecartd.isSameIdeal_noh.failed [ iigg k get jjgg] def
            /ans 0 def /LLL.ecartd.isSame_noh goto
         } {  } ifelse
       gb.verbose { (o) messagen } {  } ifelse        gb.verbose { (o) messagen } {  } ifelse
     } for      } for
     gb.verbose { ( jj < ii ?) messagen } {  } ifelse      gb.verbose { ( jj < ii ?) messagen } {  } ifelse
Line 1999 
Line 2036 
       /k set        /k set
       jjgg k get        jjgg k get
       [iigg] ecartd.reduction_noh 0 get        [iigg] ecartd.reduction_noh 0 get
       (0). eq not { /ans 0 def /LLL.ecartd.isSame_noh goto} {  } ifelse        (0). eq not {
           /ecartd.isSameIdeal_noh.failed [ iigg jjgg k get] def
           /ans 0 def /LLL.ecartd.isSame_noh goto
         } {  } ifelse
       gb.verbose { (o) messagen } {  } ifelse        gb.verbose { (o) messagen } {  } ifelse
     } for      } for
     /LLL.ecartd.isSame_noh      /LLL.ecartd.isSame_noh
Line 2025 
Line 2065 
  (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
   

Legend:
Removed from v.1.36  
changed lines
  Added in v.1.40

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>