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

File: [local] / OpenXM / src / kan96xx / Kan / usage.sm1 (download)

Revision 1.15, Sun Sep 22 01:06:20 2013 UTC (10 years, 7 months ago) by takayama
Branch: MAIN
CVS Tags: RELEASE_1_3_1_13b, HEAD
Changes since 1.14: +7 -2 lines

Added a function sm1log to store logs.

%% $OpenXM: OpenXM/src/kan96xx/Kan/usage.sm1,v 1.15 2013/09/22 01:06:20 takayama Exp $
%% usage.sm1
%%  [(key word)
%%    [(   )
%%     (   )
%%    ]
%%   ] putUsages
[(putUsages)
 [$[(key word) [(explanation line 1) (explanation line 2) ... ]] putUsages$ ]
] putUsages

[(;)
 [(Output the prompt sm1>)]
] putUsages

[(::)
 [(Pop the top of the stack and print it.)]
] putUsages

[(Libraries) 
 [
  (Doc/appell.sm1   : It generates Appell differential equations.)
  (Doc/bfunction.sm1: Computing the b-function of a given polynomial)
  (                   by using Groebner basis. Written by T.Oaku.)
  (Doc/factor-a.sm1: A sample interface to factor polynomials by risa/asir.)
  (Doc/gkz.sm1     : It generates GKZ systems for given A and b.)
  (Doc/hol.sm1     : Basic package for holonomic systems. Holonomic rank,)
  (                  characteristic ideal, singular locus.)
  (Doc/resol0.sm1  : Constructing Schreyer resolutions. tower.sm1, tower-sugar.sm1)
  (Doc/rest0.sm1   : Computing the restriction (inverse image) as a complex.)
  (                  This package is under developement by T.Oaku.)
  (                  cf. restall_s.sm1, resol0.sm1)
 ]
] putUsages
/Loadall {
   [(parse) (bfunction.sm1) pushfile] extension 
   [(parse) (hol.sm1) pushfile] extension
   [(parse) (gkz.sm1) pushfile] extension 
   [(parse) (appell.sm1)pushfile] extension
   [(parse) (resol0.sm1)pushfile] extension
} def
[(Loadall)
 [(Loadall loads the packages  bfunction.sm1, hol.sm1, gkz.sm1, appell.sm1,)
  (resol0.sm1)
]] putUsages

[(Version)
 [(Packages must be loaded in a proper version of kan/sm1.)
  (It can be checked as follows.)
  (Example:  )
  (   /factor-a.version (2.981101) def)
  (   factor-a.version [(Version)] system_variable gt )
  $   { (This package requires the latest version of kan/sm1) message$
  $     (Please get it from http://www.math.kobe-u.ac.jp/KAN) message$
  $     error$
  $   } { } ifelse$
]]putUsages


[(bugs)
 [(All known bugs are fixed.)
 ]
] putUsages

[(factor)
 [(Load Doc/factor-a.sm1, then factorization can be computed by invoking )
  (asir, of which ftp cite is at http://www.math.kobe-u.ac.jp)
 ]
] putUsages


[(message)
 [ (string message) 
   (Output the string to the screen with the newline.)
   (cf. messagen.)
   $Example:  (Hello world) message$
 ]
] putUsages

[(messagen)
 [ (string messagen) 
   (Output the string to the screen without the newline.)
   (cf. message.)
   $Example:  (Hello world) messagen$
 ]
] putUsages

[(ring_of_polynomials)
 [ (string ring_of_polynomials)
   (This command is used to define a ring of polynomials with the macros)
   (define_ring, weight_vector and elimination_order.)
   (The user cannot use the variable names h, e, H and E.)
   (cf. show_ring, system_variable --- CurrentRing)
   (    print_switch_status, switch_function)
   (Example: [(x,y,z) ring_of_polynomials (x,y) elimination_order 0] define_ring)
 ]
] putUsages

[(ring_of_differential_operators)
 [ (string ring_of_differential_operators)
   (This command is used to define a ring of differential operators )
   (with the macros define_ring, weight_vector and elimination_order.)
   (The user cannot use the variable names h, e, H and E.)
   (cf. show_ring, system_variable --- CurrentRing)
   (    print_switch_status, switch_function)
   (Example: [(x,y) ring_of_differential_operators [[(Dx) 1 (Dy) 1]])
   (           weight_vector 0] define_ring)
   (   Define the ring of differential operators Q<x,y,Dx,Dy> with the order)
   (   obtained by refining the partial order defined by the weight vector)
   (   [x,y,Dx,Dy] = [0,0,1,1] ) 
   (Example: [(x,y) ring_of_differential_operators 0 [(weightedHomogenization) 1]])
   (          define_ring )
   (Example: [(x,y) ring_of_differential_operators [[(x) -1 (Dx) 1]] weight_vector)
   (          0 [(degreeShift) [[1 0 1]]] ])
   (          define_ring )
   (Example: [(x,y,z) ring_of_differential_operators (Dx,Dy) elimination_order 0] define_ring)
   (         Dx,Dy, and Dz are corresponding differential operators to the )
   (         space variables x, y and z.)
 ]
] putUsages

[(ring_of_difference_operators)
 [ (string ring_of_difference_operators)
   (!!! OBSOLETE !!!)
   (  )
   (This command has not been maintained since 1996. So, there may be)
   (troubles if it is used with new features of kan/sm1.)
   (  )
   (This command is used to define a ring of difference operators )
   (with the macros define_ring, weight_vector and elimination_order.)
   (The user cannot use the variable names h, e, H and E.)
   (cf. show_ring, system_variable --- CurrentRing)
   (    print_switch_status, switch_function)
   (Example: [(x,y,z) ring_of_difference_operators (Ex,Ey) elimination_order 0] define_ring)
   (         Ex,Ey, and Ez are corresponding difference operators to the )
   (         space variables x, y and z ( Ex x = (x+1) Ex).)
 ]
] putUsages


[(ring_of_q_difference_operators)
 [ (string ring_of_q_difference_operators)
   (  )
   (This command has not been maintained since 1996. So, there may be)
   (troubles if it is used with new features of kan/sm1.)
   (  )
   (This command is used to define a ring of q-difference operators )
   (with the macros define_qring, weight_vector and elimination_order.)
   (Note that you should use this macro with define_qring instead of)
   (define_ring.)
   (The user cannot use the variable names h, e, q and E.)
   (cf. show_ring, system_variable --- CurrentRing)
   (    print_switch_status, switch_function)
   (Example: [(x,y,z) ring_of_q_difference_operators (Qx,Qy) elimination_order 0] define_qring)
   (         Qx,Qy, and Qz are corresponding q-difference operators to the )
   (         space variables x, y and z ( Qx x = (q) x Q).)
 ]
] putUsages

[(ring_of_differential_difference_operators)
 [ ([string1 string2]  ring_of_differential_difference operators)
   (This command is used to define a ring of differential-difference operators )
   (with the macros define_ring, weight_vector and elimination_order.)
   (string1 is a set of variables for differential operators.)
   (string2 is a set of variables for difference operators.)
   (The user cannot use the variable names h, e, H and E.)
   (cf. show_ring, system_variable --- CurrentRing)
   (    print_switch_status, switch_function)
   (Example: [[(x,y) (s)] ring_of_differential_difference_operators )
   (          [[(Es) 1] [(s) 1]] weight_vector 0] define_ring)
   (         Dx and Dy are corresponding differential operators to the )
   (         space variables x and y.  Try show_ring to see the commutation)
   (         relations.)
   (Example: contiguity of 1F1. Eb b = (b-1) Eb)
   ( [ [(x) (a,b)] ring_of_differential_difference_operators )
   (  [[(Dx) 1]] weight_vector 0] define_ring )
   ( [ ( x Dx (x Dx+b-1) -x (x Dx+a) ). )
   ( ( (x Dx +b-1) - (b-1) Eb ). ] /ff set )
   ( ff {dehomogenize homogenize} map /ff2 set )
   ( [ff2] groebner /gg set )
   ( gg dehomogenize 0 get /gg set )
   ( gg [(Dx)] eliminatev /gg2 set )
   ( gg2 pmat )

 ]
] putUsages

[(define_ring)
  [( [varlist ring_of_??? order characteristic options] define_ring)
   ( Pointer to the ring.)
   (Example: [(x,y,z) ring_of_polynomials [[(x) 100 (y) 10 (z) 1]] weight_vector)
   (          11] define_qring )
   (Example: [(x,y) ring_of_polynomials [[(x) 1]] weight_vector 0 ] define_ring)
   (         /R set)
   (cf. define_qring, set_up_ring@ <coefficient ring>)
   (    <<ring_of_???>> ring_of_polynomials, ring_of_differential_operators, )
   (    ring_of_difference_operators)
   (    <<order>> elimination_order, weight_vector)
   (    ring_def,ring , << __ >>)
  ]
] putUsages


[(.)
 [(string . polynomial)
  (Parse the string as a polynomial in the current ring and put it on the stack)
  (Example ( (x+2)^3 ) .)
 ]
] putUsages

[(evenQ)
 [ (number evenQ bool)
 ]
] putUsages

[(reverse)
 [ (array reverse reversed_array) 
 ]
] putUsages

[(memberQ)
 [(element array(list) memberQ bool)
 ]
] putUsages

[(transpose)
 [( matrix transpose transposed_matrix)
 ]
] putUsages

[(timer)
 [( { codes } timer )
  (It outputs the execution time to execute << codes >>.)
  (If you type in ctrl-C while you are executing this macro,)
  (you need to type in set_timer after you type in ctrl-C to reset)
  (the timer.)
]] putUsages

[(complement)
 [( set universal_set complement complement_set)
  (Example: [1 2] [3 4 1 2 5] complement ::)
 ]
] putUsages

[(pushVariables)
 [ (varlist pushVariables pushed-variables)
   (The macro is used to define local variables in a macro.)
   (Example : /foo {                     )
   (           /arg1 set                 )
   (          [/abc /cd] pushVariables   )
   (          [ /abc arg1 def            )
   (            /cd abc 1 add def )
   (            /arg1 cd def )
   (          ] pop                      )
   (          popVariables)
   (          arg1  )
   (          } def )
   (  10 foo ::    returns 11 )
   (    In the example, abc and cd are local variables.)
 ]
] putUsages



/@@@.global.usage1
 [(@@@. is the prefix for the global control variables and global functions.)
  (@@@.quiet   :  1 ---> quiet mode,  0 ---> not. cf. sm1 -q)
  (@@@.esymbol : (e_) is the standard value. It is used to express)
  (              vectors internally. cf. fromVectors, toVectors)
  (@@@.Dsymbol :  (D) is the standard value for differential operator.)
  (                cf. ring_of_differential_operators)
  (@@@.diffEsymbol :  (E) is the standard value for difference operator.)
  (                cf. ring_of_difference_operators)
  (@@@.Qsymbol :  (Q) is the standard value for q-difference operator.)
  (                cf. ring_of_qdifference_operators)
 ]
def
[(@@@.quiet)  @@@.global.usage1] putUsages
[(@@@.Dsymbol)  @@@.global.usage1] putUsages
[(@@@.diffEsymbol)  @@@.global.usage1] putUsages
[(@@@.Qsymbol)  @@@.global.usage1] putUsages
[(@@@.esymbol)  @@@.global.usage1] putUsages

[(join) 
 [(list1 list2 join list3)
  (Ex.  [1 2] [3 [4 (ab)]] join  [1 2 3 [4 (ab)]])
  (Note: Join should use for arrays. It works for list too,)
  (      but it does not copy cells. cf. cons)
  (      So, it might generate looped lists or destroy other lists.)
 ]
] putUsages

[(not)
 [(int not int)
  (1 not 0)
  (0 not 1)
 ]
] putUsages

[(append) 
 [(list1 obj2 append list3)
  (Ex.  [1 2]  3 append  [1 2 3])
 ]
] putUsages

[(null)
 [(<<null>> returns null object)]
] putUsages

[(oxasir)
 [(ox_asir is an asir server which is complient to open xxx protocol.)
  (This module is necessary for efficient execution factorization )
  (of b-functions in annfs, deRham.  cf. lib/oxasir.sm1)
  (ox_asir has not yet been put on the ftp cite. 12/17, 1998.)
 ]
] putUsages

[(toVectors)
 [(obj toVectors vec)
  (Convert the internal expression of vector into the array <<vec>>.)
  (obj can be  [n [g1 ... gm]] where n is the length of the vector.)
  $cf. [(toe_) array_of_poly] gbext $
  $Example 1: [(x) ring_of_polynomials 0] define_ring  $
  $           (e_ + 2).  toVectors :: $
  (        --->  [2  , 1] )
  (Example 2: [3 (e_ +2).] toVectors ::)
  (        ---> [2 , 1 , 0 ])
  (Example 3: [(e_+2). (e_^2+1).] toVectors ::)
  (        ---> [[2 , 1] [1 , 0 , 1]] )
  (Example 4: [2 [(e x + 1). (x+1).]] toVectors )
  (           ===> [ [1 , x] [x+1 , 0] ] ) 
]] putUsages
[(toVectors2)
 [(Remained for the compatibility. cf. toVectors)
]] putUsages

[(extension-examples)
 [
   $putAttributeList$
   $  [(putAttributeList) [[(x+y-1) (x-y-2)] (x,y)]  $
   $                      [(needSyz) 1 (sugar) 1]] extension /myarg set $
   $  [(getAttributeList) myarg] extension :: $
   $  [(getAttribute) myarg (sugar)] extension :: $
]] putUsages

[(note-class)
[ 
  $Example 1: [(object) [ ] [1,2]] [(class) (tree)] dc /ff set $
  $           ff (array) dc :: $
  $cf. data_conversion, kan96xx/Kan/kclass.c (KclassDataConversion) $
]] putUsages

[(sm1log)
[
  $str sm1log outputs the str to the log file /tmp/sm1log.txt$
]] putUsages