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

File: [local] / OpenXM / src / kan96xx / Doc / cv0.sm1 (download)

Revision 1.1.1.1 (vendor branch), Fri Oct 8 02:12:02 1999 UTC (24 years, 7 months ago) by maekawa
Branch: OpenXM, MAIN
CVS Tags: maekawa-ipv6, R_1_3_1-2, RELEASE_20000124, RELEASE_1_3_1_13b, RELEASE_1_2_3_12, RELEASE_1_2_3, RELEASE_1_2_2_KNOPPIX_b, RELEASE_1_2_2_KNOPPIX, RELEASE_1_2_2, RELEASE_1_2_1, RELEASE_1_1_3, RELEASE_1_1_2, KNOPPIX_2006, HEAD, DEB_REL_1_2_3-9, ALPHA
Changes since 1.1: +0 -0 lines

o import OpenXM sources

/example1 {
  [(x,y,a,b,c,d)   %% change here
    ring_of_differential_operators 
   (Dx,Dy)         %% change here
  elimination_order 0] swap01 define_ring

  [[(x*Dx-a). (-b).] [(-c). ((x-1)*Dx-d).] [(Dy). (0).] [(0). (Dy).]] %% give equations
  /ff set
  ff { { [[$h$. $1$.]] replace } map } map /ff set
  /ff ff homogenize  def
  [ff] groebner /ans set
  ans 0 get {[[$h$. $1$.]] replace} map /gg set
  (Now, you get the characteristic variety) message
  (When your result is given as [I_1  I_2 ...], ) message
  (the characteristic variety is  V(I_1) \cup V(I_2) \cup ... ) message
  gg characteristic-v print (  ) message ( ) message
} def


/characteristic-v {
  /arg1 set
  [/gb  /lps /i /n /ans /maxp /ansp /k] pushVariables
  [  /gb arg1 def
     /ans [ ] def
     /maxp 0 def
     /lps gb {lpoint} map def
     0 1 << lps length 1 sub >>
     {
       /i set
       lps i get maxp gt
       { /maxp lps i get def }
       {  }
       ifelse
     } for

     %%lps print
     /ans [
      0 1 maxp { pop [ ]   } for
     ] def

     gb toVectors /gb set

     0 1 << lps length 1 sub >>
     {
       /i set  /k lps i get def
       /ansp ans k get def
       << gb i get >> k  get principal /f set
       /ansp ansp [f] join def
       ans k ansp put
     } for
    
     /arg1 ans def     
  ] pop
  popVariables
  arg1
} def

%%%%%%%%%%%%%%%%%%%%%%%%%%


( ) message
(cv0.sm1 11/10, 1994. This program computes characteristic varieties.) message
(Type in example1 ; for a demo.) message