Annotation of OpenXM/src/kan96xx/Doc/cv0.sm1, Revision 1.1
1.1 ! maekawa 1:
! 2: /example1 {
! 3: [(x,y,a,b,c,d) %% change here
! 4: ring_of_differential_operators
! 5: (Dx,Dy) %% change here
! 6: elimination_order 0] swap01 define_ring
! 7:
! 8: [[(x*Dx-a). (-b).] [(-c). ((x-1)*Dx-d).] [(Dy). (0).] [(0). (Dy).]] %% give equations
! 9: /ff set
! 10: ff { { [[$h$. $1$.]] replace } map } map /ff set
! 11: /ff ff homogenize def
! 12: [ff] groebner /ans set
! 13: ans 0 get {[[$h$. $1$.]] replace} map /gg set
! 14: (Now, you get the characteristic variety) message
! 15: (When your result is given as [I_1 I_2 ...], ) message
! 16: (the characteristic variety is V(I_1) \cup V(I_2) \cup ... ) message
! 17: gg characteristic-v print ( ) message ( ) message
! 18: } def
! 19:
! 20:
! 21: /characteristic-v {
! 22: /arg1 set
! 23: [/gb /lps /i /n /ans /maxp /ansp /k] pushVariables
! 24: [ /gb arg1 def
! 25: /ans [ ] def
! 26: /maxp 0 def
! 27: /lps gb {lpoint} map def
! 28: 0 1 << lps length 1 sub >>
! 29: {
! 30: /i set
! 31: lps i get maxp gt
! 32: { /maxp lps i get def }
! 33: { }
! 34: ifelse
! 35: } for
! 36:
! 37: %%lps print
! 38: /ans [
! 39: 0 1 maxp { pop [ ] } for
! 40: ] def
! 41:
! 42: gb toVectors /gb set
! 43:
! 44: 0 1 << lps length 1 sub >>
! 45: {
! 46: /i set /k lps i get def
! 47: /ansp ans k get def
! 48: << gb i get >> k get principal /f set
! 49: /ansp ansp [f] join def
! 50: ans k ansp put
! 51: } for
! 52:
! 53: /arg1 ans def
! 54: ] pop
! 55: popVariables
! 56: arg1
! 57: } def
! 58:
! 59: %%%%%%%%%%%%%%%%%%%%%%%%%%
! 60:
! 61:
! 62: ( ) message
! 63: (cv0.sm1 11/10, 1994. This program computes characteristic varieties.) message
! 64: (Type in example1 ; for a demo.) message
! 65:
! 66:
! 67:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>