=================================================================== RCS file: /home/cvs/OpenXM/src/kan96xx/Kan/usage.c,v retrieving revision 1.24 retrieving revision 1.52 diff -u -p -r1.24 -r1.52 --- OpenXM/src/kan96xx/Kan/usage.c 2003/11/17 00:28:13 1.24 +++ OpenXM/src/kan96xx/Kan/usage.c 2020/10/06 11:33:47 1.52 @@ -1,5 +1,6 @@ -/* $OpenXM: OpenXM/src/kan96xx/Kan/usage.c,v 1.23 2003/09/12 02:52:50 takayama Exp $ */ +/* $OpenXM: OpenXM/src/kan96xx/Kan/usage.c,v 1.51 2018/09/07 00:09:32 takayama Exp $ */ #include +#include #include "datatype.h" #include "stackm.h" #include "extern.h" @@ -99,6 +100,8 @@ void Kusage2(fp,s) fppp(fp," map, orderMatrix, error, \n"); fppp(fp," or [(class) (class-name)].\n"); fppp(fp,"The primitive reports and converts the data type of obj.\n"); + fppp(fp,"Special combinations of obj and keyword.\n"); + fppp(fp," ring (oxRingStructure) data_conversion list\n"); fppp(fp,"Example: (2) (integer) data_conversion ===> 2\n"); }else if (strcmp(s,"def")==0 || strcmp(s,"set")==0) { fppp(fp,"<< /name object def >> or << object /name set >>\n"); @@ -143,24 +146,43 @@ void Kusage2(fp,s) fppp(fp," [(parse) string] extension result-integer \n"); fppp(fp," [(chattr) num literal] extension result-object \n"); fppp(fp," [(chattrs) num ] extension result-object \n"); + fppp(fp," [(date)] extension date-string \n"); fppp(fp," [(defaultPolyRing) num ] extension result-object \n"); fppp(fp," [(flush) ] extension null \n"); + fppp(fp," [(getAttribute) obj key] extension value \n"); + fppp(fp," [(getAttributeList) obj] extension attrList \n"); fppp(fp," [(getpid) ] extension result-integer \n"); fppp(fp," [(getenv) envName] extension valueOfEnvName \n"); + fppp(fp," [(gethostname) ] extension myhostname \n"); fppp(fp," [(stat) fname] extension v \n"); fppp(fp," v = [null,[(error no), p]] or [0, [size ]]\n"); fppp(fp," [(forkExec) argList fdList sigblock] extension pid\n"); + fppp(fp," [(getattr) literal] extension attr\n"); fppp(fp," [(getchild)] extension listOfPid (generated by forkExec)\n"); fppp(fp," [(keywords) ] extension array-of-names-of-primitives \n"); fppp(fp," [(nobody) ] extension null \n"); fppp(fp," [(newMatrix) m n] extension mat \n"); fppp(fp," [(newVector) m ] extension vec \n"); fppp(fp," [(getUniqueFileName) path] extension newName \n"); + fppp(fp," [(or_attr) atr literal] extension new_value \n"); + fppp(fp," [(or_attrs) atr ] extension result-obj \n"); fppp(fp," [(outputObjectToFile) path obj] extension null \n"); fppp(fp," [(ostype)] extension list \n"); + fppp(fp," [(quiet) flag] extension int \n"); + fppp(fp," [(setAttribute) obj key value] extension new-attributed-obj \n"); + fppp(fp," [(setAttributeList) obj attrList] extension new-attributed-obj \n"); + fppp(fp," [(stringToArgv) sobj] extension decomposed_str cf. to_records \n"); + fppp(fp," [(stringToArgv2) sobj separator] extension decomposed_str cf. to_records \n"); + fppp(fp," [(read) fd size] extension string \n"); + fppp(fp," [(regexec) regular_expression stringArray flags(opt)] extension list \n"); fppp(fp," [(regionMatches) string stringArray] extension list \n"); + fppp(fp," [(traceClearStack)] extension null \n"); + fppp(fp," [(traceShowStack)] extension str \n"); + fppp(fp," [(traceShowScannerBuf)] extension str \n"); + fppp(fp," [(unlink) fname] extension r\n"); /* fppp(fp," [(asir0) string] extension result-object \n"); */ - fppp(fp,"See also plugin-* in ??. \n"); + fppp(fp,"See also plugin-* in ?? by [(plugin)] usages :: \n"); + fppp(fp,"See also (extension-examples) usage :: \n"); }else if (strcmp(s,"file")==0) { fppp(fp,"<< filename mode file fd >>\n"); fppp(fp,"string filename, mode; file fd;\n"); @@ -178,34 +200,41 @@ void Kusage2(fp,s) fppp(fp,"array of objects obj1;"); fppp(fp,"The first element of the obj1 should be the key word tag.\n"); fppp(fp,"<< gbext >> is used to call auxiliary functions for g-basis computation. \n"); + fppp(fp," [(divByN) poly1 n(universalNumber)] gbext [qpoly rpoly] \n"); + fppp(fp," where poly1 = n*qpoly+rpoly.\n"); + fppp(fp," (see also cancelCoeff) \n"); + fppp(fp," [(exponents) poly type ] gbext array \n"); + fppp(fp," example: type == 0 x,y,Dx,Dy\n"); + fppp(fp," type == 1 x,y,Dx,Dy,h,H\n"); + fppp(fp," type == 2 x,y,Dx,Dy,h --- default.\n"); + fppp(fp," [(grade) poly1 ] gbext integer \n"); + fppp(fp," [(isConstant) poly] gbext bool \n"); + fppp(fp," [(isConstantAll) poly] gbext bool \n"); + fppp(fp," [(isOrdered) poly] gbext poly \n"); fppp(fp," [(isReducible) poly1 poly2 ] gbext integer \n"); fppp(fp," [(lcm) poly1 poly2] gbext poly \n"); - fppp(fp," [(grade) poly1 ] gbext integer \n"); - fppp(fp," [(ord_ws_all) fv wv] gbext integer \n"); + fppp(fp," [(lcoeff) poly] gbext poly \n"); + fppp(fp," [(lmonom) poly] gbext poly \n"); fppp(fp," [(mod) poly1 universalNumber] gbext poly \n"); fppp(fp," poly = poly1 mod universalNumber where char=0 and \n"); fppp(fp," poly and poly2 belong to a same ring.\n"); + fppp(fp," [(ord_ws_all) fv wv] gbext integer \n"); + fppp(fp," [(reduceContent) poly] gbext [poly c] \n"); fppp(fp," [(tomodp) poly1 ring] gbext poly, char(ring)>0. \n"); fppp(fp," poly = poly1 mod char(ring) where poly belongs to ring.\n"); fppp(fp," [(tomod0) poly1 ring] gbext poly, char(ring)=0. \n"); - fppp(fp," [(divByN) poly1 n(universalNumber)] gbext [qpoly rpoly] \n"); - fppp(fp," where poly1 = n*qpoly+rpoly.\n"); - fppp(fp," (see also cancelCoeff) \n"); - fppp(fp," [(isConstant) poly] gbext bool \n"); - fppp(fp," [(isConstantAll) poly] gbext bool \n"); - fppp(fp," [(lcoeff) poly] gbext poly \n"); - fppp(fp," [(lmonom) poly] gbext poly \n"); fppp(fp," [(schreyerSkelton) array_of_poly] gbext array \n"); fppp(fp," [(toes) array_of_poly] gbext poly \n"); fppp(fp," [(toe_) poly] gbext poly \n"); fppp(fp," [(toe_) array_of_poly] gbext poly cf. toVectors \n"); - fppp(fp," [(isOrdered) poly] gbext poly \n"); - fppp(fp," [(reduceContent) poly] gbext [poly c] \n"); }else if (strcmp(s,"get")==0) { fppp(fp,"<< [f0 f1 ... fn] k get fk >>\n"); fppp(fp,"integer k;"); fppp(fp,"The primitive gets the k-th element of a given array.\n"); fppp(fp,"Example: [1 4 3] 1 get :: ---> 4\n"); + fppp(fp,"<< ob [k0 k1 ... ] get f >>\n"); + fppp(fp,"It is equivalent to << ob k0 get k1 get ... >>\n"); + fppp(fp,"The primitive get works for array or list.\n"); }else if (strcmp(s,"goto")==0) { fppp(fp,"<< label goto >>\n"); fppp(fp,"literal label;\n"); @@ -219,8 +248,10 @@ void Kusage2(fp,s) fppp(fp,"poly f1, ..., fn; poly g1, ..., gm;\n"); fppp(fp,"optional return value: matrix of poly backward-transformation, syzygy;\n"); fppp(fp,"Computation of the Groebner basis of f1,...,fn. The basis is {g1,...,gm}.\n"); - fppp(fp,"Options: << (needBack), (needSyz), (countDown) number (StopDegree) number, (forceReduction)>>\n"); + fppp(fp,"Options: << (needBack), (needSyz), (reduceOnly), (gbCheck),\n"); + fppp(fp," (countDown) number (StopDegree) number, (forceReduction)>>\n"); fppp(fp,"Flags:<< [(ReduceLowerTerms) 1] system_variable >>\n"); + fppp(fp," << [(AutoReduce) 0] system_variable >>\n"); fppp(fp," << [(UseCriterion1) 0] system_variable >>\n"); fppp(fp," << [(UseCriterion2B) 0] system_variable >>\n"); fppp(fp," << [(Sugar) 0] system_variable >>\n"); @@ -325,6 +356,10 @@ void Kusage2(fp,s) }else if (strcmp(s,"newstack") == 0) { fppp(fp,"<< size newstack class.OperandStack >>\n"); /*:*/ fppp(fp,"cf. setstack, stdstack.\n"); + }else if (strcmp(s,"oxshell") == 0) { + fppp(fp,"<< cmds oxshell result >>\n"); /*:*/ + fppp(fp,"cmds is an array of strings.\n"); + KoxShellHelp((char *)NULL,fp); }else if (strcmp(s,"pop")==0) { fppp(fp,"<< obj pop >> \n"); /*:*/ fppp(fp,"It removes the obj from the stack.\n"); @@ -488,13 +523,15 @@ void Kusage2(fp,s) fppp(fp,"ReduceLowerTerms, CheckHomogenization, Homogenize, Sugar, Homogenize_vec,\n"); fppp(fp,"Statistics, StackPointer, StandardOperandStack,\n"); fppp(fp,"ErrorStack, ErrorMessageMode, WarningMessageMode,\n"); - fppp(fp,"CatchCtrlC, Strict, CurrentContextp, NullContextp, Strict2,\n"); + fppp(fp,"CatchCtrlC, Strict, CurrentContextp, NullContextp, Strict2, QuoteMode\n"); fppp(fp,"SigIgn, KSPushEnvMode, PrimitiveContextp, KanGBmessage,\n"); fppp(fp,"orderMatrix, gbListTower, Schreyer, \n"); fppp(fp,"outputOrder, multSymbol, variableNames, Version,\n"); fppp(fp,"AvoidTheSameRing, RingStack, LeftBracket, RightBracket,\n"); - fppp(fp,"AutoReduce, SecureMode, Ecart, EcartAutomaticHomogenization\n"); + fppp(fp,"AutoReduce, Ecart, EcartAutomaticHomogenization\n"); fppp(fp,"DoCancel, DebugContentReduction\n"); + fppp(fp,"RestrictedMode (cf. or_attr 8), SecureMode(obsolete) \n"); + fppp(fp,"UseDsmall, COutput \n"); fppp(fp,"Example: [(N)] system_variable\n"); fppp(fp," (maximum number of variables)/2.\n"); fppp(fp," [(x) (var) 3] system_variable\n"); @@ -503,7 +540,8 @@ void Kusage2(fp,s) fppp(fp," The 4th differential operator.\n"); fppp(fp," [(PrintDollar) 0] system_variable\n"); fppp(fp," Set the global variable PrintDollar to 0\n"); - fppp(fp,"DebugReductionEcart (bit): (2) *% (1) find_reducer,in(r) \n"); +// fppp(fp,"DebugReductionEcart (bit): (2) *% (1) find_reducer,in(r) \n"); + fppp(fp,"DebugReductionEcart (bit): (2) * (1) find_reducer,in(r) \n"); fppp(fp," (any) cont (4) #+[rat division, + ecartd] \n"); fppp(fp," (8) check the order. \n"); fppp(fp,"DoCancel (bit): (2) always_reduce_content (1) Noro_strategy \n"); @@ -517,6 +555,7 @@ void Kusage2(fp,s) fppp(fp,"Example: ({x,y2}) to_records ===> (x) (y2) 2\n"); fppp(fp,"Example: (x,y2) to_records ===> (x) (y2) 2\n"); fppp(fp,"Example: [(x,y2) to_records pop] ===> [(x) (y2)]\n"); + fppp(fp,"cf. [(stringToArgv) str] extension or stringToArgv2\n"); }else if (strcmp(s,"writestring") == 0) { fppp(fp,"<< fd s writestring >>\n"); /*:*/ fppp(fp,"file fd; string s;\n");