diff --git a/books/bookvol4.pamphlet b/books/bookvol4.pamphlet index a25774a..b2f400a 100644 --- a/books/bookvol4.pamphlet +++ b/books/bookvol4.pamphlet @@ -1148,7 +1148,7 @@ So now it turns to the general modemaps: has FIELD \end{verbatim} -and it eventually promotes PI to FRAC(POLY(INT)) and +it eventually promotes PI to FRAC(POLY(INT)) and POLY(INT) to FRAC(POLY(INT)) and finds the match: \begin{verbatim} (FRAC(POLY(INT))) / (FRAC(POLY(INT))) @@ -1354,9 +1354,15 @@ So we have a match \begin{verbatim} [1] signature: (FRAC POLY INT,SYMBOL) -> Union(EXPR INT,LIST EXPR INT) - implemented: slot (Union (Expression (Integer)) (List (Expression (Integer))))(Fraction (Polynomial (Integer)))(Symbol) from IRRF2F INT + implemented: slot (Union (Expression (Integer)) + (List (Expression (Integer)))) + (Fraction (Polynomial (Integer)))(Symbol) + from IRRF2F INT [2] signature: (EXPR INT,SYMBOL) -> Union(EXPR INT,LIST EXPR INT) - implemented: slot (Union (Expression (Integer)) (List (Expression (Integer))))(Expression (Integer))(Symbol) from FSINT(INT,EXPR INT) + implemented: slot (Union (Expression (Integer)) + (List (Expression (Integer)))) + (Expression (Integer))(Symbol) + from FSINT(INT,EXPR INT) \end{verbatim} @@ -2803,7 +2809,7 @@ the spad file that contains it. The second line gives debugging output containing a unique number for console debugging purposes of failed builds. -The third line extracts the help file. These help files are part of +The third line extracts the help file. Help files are part of the algebra books (bookvol10.2, bookvol10.3, and bookvol10.4). The chunkname is the same as the Category, Domain, or Package. @@ -2977,7 +2983,7 @@ CHAR;char;S\$;20 which is a mangled form of the name of the original spad function. To decode this name we can see that the CHAR portion is used to identify the domain where the function lives. This domain, CHAR, comes -from the source file ``string.spad'' which ultimately lives in +from the source file ``string.spad'' which lives in ``src/algebra/string.spad.pamphlet''. To discover this we use the Axiom ``asq'' command with the ``-so'' (sourcefile) option at a standard shell prompt (NOT in the lisp prompt) thus: @@ -3595,7 +3601,7 @@ in ./lib \noindent ./bin/htadd -This function adds pages to the Hyperdoc database (ht.db, which lives +This adds pages to the Hyperdoc database (ht.db, which lives in ./doc/hypertex/pages; hypertex, since we have a penchant for these things, is an historical name for Hyperdoc. The single word 'lawyers' will probably explain away a lot of name changes.) @@ -5172,7 +5178,7 @@ Value = (# )show INTERGB - InterfaceGroebnerPackage(K: Field,symb: List Symbol,E: OrderedAbelianMonoidSup,OV: OrderedSet,R: PolynomialCategory(K,E,OV)) is a package constructor + InterfaceGroebnerPackage(K: Field, + symb: List Symbol, + E: OrderedAbelianMonoidSup, + OV: OrderedSet, + R: PolynomialCategory(K,E,OV)) + is a package constructor Abbreviation for InterfaceGroebnerPackage is INTERGB This constructor is exposed in this frame. - Issue )edit /research/silver/PAFF/PAFF/spad/interGBwoGB.spad to see algebra source code for INTERGB + Issue )edit /research/silver/PAFF/PAFF/spad/interGBwoGB.spad to see + algebra source code for INTERGB ------------------------------- Operations -------------------------------- groebner : List R -> List R @@ -5902,7 +5915,12 @@ So we update our input file section to read: --S 1 of 1 )show InterfaceGroebnerPackage ---R InterfaceGroebnerPackage(K: Field,symb: List Symbol,E: OrderedAbelianMonoidSup,OV: OrderedSet,R: PolynomialCategory(K,E,OV)) is a package constructor +--R InterfaceGroebnerPackage(K: Field, +--R symb: List Symbol, +--R E: OrderedAbelianMonoidSup, +--R OV: OrderedSet, +--R R: PolynomialCategory(K,E,OV)) +--R is a package constructor --R Abbreviation for InterfaceGroebnerPackage is INTERGB --R This constructor is exposed in this frame. --R Issue )edit bookvol10.4.pamphlet to see algebra source code for INTERGB @@ -5992,38 +6010,13 @@ The total result is: /*"INTERGB" -> {"FFIELDC"; "FPC"; "FINITE"; "STEP"; "DIFRING"; "NNI"; "INT"}*/ \end{verbatim} -Now we add the help file. Look for the list called SPADHELP -(all help files live in \verb|$AXIOM/mnt/sys/doc/spadhelp|) -and add the full algebra name: -\begin{verbatim} - ${HELP}/InterfaceGroebnerPackage.help -\end{verbatim} +Help files are automatically extracted from the books using the +lisp function ``makeHelpFiles'' which lives in books/tangle.lisp. +This will find all of the .help chunks in books of interest +and write each chunk to the target directory in its own filename. +So if a chunk name is somedomain.help we create the help file +somedomain.help containing the chunk value. -Now we add the corresponding help stanza: -\begin{verbatim} -${HELP}/InterfaceGroebnerPackage.help: ${BOOKS}/bookvol10.4.pamphlet - @echo 7455 create InterfaceGroebnerPackage.help from \ - ${BOOKS}/bookvol10.4.pamphlet - @${TANGLE} -R"InterfaceGroebnerPackage.help" \ - ${BOOKS}/bookvol10.4.pamphlet \ - >${HELP}/InterfaceGroebnerPackage.help - @cp ${HELP}/InterfaceGroebnerPackage.help ${HELP}/INTERGB.help - @${TANGLE} -R"InterfaceGroebnerPackage.input" \ - ${BOOKS}/bookvol10.4.pamphlet \ - >${INPUT}/InterfaceGroebnerPackage.input - @echo "InterfaceGroebnerPackage (INTERGB)" >>${HELPFILE} -\end{verbatim} - -There are a couple things to note about the above stanza: -\begin{itemize} -\item the correct book needs to be referenced -\item the echo line should have a unique number -\item if a line exceeds 80 characters, split the line with a backslash -\item this stanza creates the input file for regression testing -\item this stanza creates 2 help files, one with the full algebra name -and one with the abbreviation so the user can query either one. -\item this stanza references chunk names in the book that have to exist -\end{itemize} Now we create the regression hook. Look for the list REGRESS and add the line containing the algebra thus: diff --git a/changelog b/changelog index 8a9bdbf..84878c6 100644 --- a/changelog +++ b/changelog @@ -1,6 +1,8 @@ +20130307 tpd src/axiom-website/patches.html 20130307.02.tpd.patch +20130307 tpd books/bookvol4 clean up latex, document makeHelpFiles 20130307 tpd src/axiom-website/patches.html 20130307.01.tpd.patch 20130307 tpd src/algebra/Makefile set up regression tests -20130307 tpd books/bookvol10.4 fix help documentation and regression tests +20130307 tpd books/bookvol10.4 fix help documentation and regression tests 20130307 tpd books/bookvol10.3 fix help documentation and regression tests 20130307 tpd books/bookvol10.2 fix help documentation and regression tests 20130306 tpd src/axiom-website/patches.html 20130306.02.tpd.patch diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html index 7147c9a..9901b48 100644 --- a/src/axiom-website/patches.html +++ b/src/axiom-website/patches.html @@ -4013,5 +4013,7 @@ books/bookvol4 fix mixing end verbatim books/bookvol4 replace " with `` 20130307.01.tpd.patch books/bookvol10.* fix help documentation and regression tests +20130307.02.tpd.patch +books/bookvol4 clean up latex, document makeHelpFiles