File: [local] / OpenXM / src / kan96xx / Kan / usage.sm1 (download)
Revision 1.9, Sat Sep 11 01:00:42 2004 UTC (20 years ago) by takayama
Branch: MAIN
Changes since 1.8: +4 -1
lines
The primitive get accepts the following input
obj [k0 k1 k2 ... ] get
It also accepts a list as an argument.
New macros: arrayToList and listToArray.
|
%% $OpenXM: OpenXM/src/kan96xx/Kan/usage.sm1,v 1.9 2004/09/11 01:00:42 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.)
]
] 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