<html><head><title>[ACE] A The Meanings of ACE's output messages</title></head> <body text="#000000" bgcolor="#ffffff"> [<a href = "chapters.htm">Up</a>] [<a href ="CHAP006.htm">Previous</a>] [<a href ="CHAP00B.htm">Next</a>] [<a href = "theindex.htm">Index</a>] <h1>A The Meanings of ACE's output messages</h1><p> <P> <H3>Sections</H3> <oL> <li> <A HREF="CHAP00A.htm#SECT001">Progress Messages</a> <li> <A HREF="CHAP00A.htm#SECT002">Results Messages</a> </ol><p> <p> In this chapter, we discuss the meanings of the messages that appear in output from the <font face="Gill Sans,Helvetica,Arial">ACE</font> binary, the verbosity of which is determined by the <code>messages</code> option (see <a href="CHAP004.htm#SSEC018.1">option messages</a>). Actually our aim here is to concentrate on describing those ``messages'' that are controlled by the <code>messages</code> option, namely the <strong>progress</strong> and <strong>results messages</strong>; other output from <font face="Gill Sans,Helvetica,Arial">ACE</font> is fairly self-explanatory. (We describe some other output to give points of reference.) <p> Both interactively and non-interactively, <font face="Gill Sans,Helvetica,Arial">ACE</font> output is <code>Info</code>-ed at <code>InfoACE</code> level 3. To see the <code>Info</code>-ed <font face="Gill Sans,Helvetica,Arial">ACE</font> output, set the <code>InfoLevel</code> of <code>InfoACE</code> to at least 3, e.g. <p> <pre> gap> SetInfoACELevel(3); </pre> <p> This causes each line of <font face="Gill Sans,Helvetica,Arial">ACE</font> output to be prepended with ``<code>#I </code>''. Below, we describe the <code>Info</code>-ed output observed when each of <code>ACECosetTableFromGensAndRels</code>, <code>ACECosetTable</code>, <code>ACEStats</code> or <code>ACEStart</code> is called with three arguments, and presume that users will be able to extend the description to explain output observed from other <font face="Gill Sans,Helvetica,Arial">ACE</font> interface functions. The first-observed (<code>Info</code>-ed) output from <font face="Gill Sans,Helvetica,Arial">ACE</font>, is <font face="Gill Sans,Helvetica,Arial">ACE</font>'s banner, e.g. <p> <pre> #I ACE 3.001 Sun Sep 30 21:45:39 2001 #I ========================================= #I Host information: #I name = rigel </pre> <p> If there were any errors in the directives put to <font face="Gill Sans,Helvetica,Arial">ACE</font>, or output from the options described in Appendix <a href="CHAP00D.htm">Other ACE Options</a>, they will appear next. Then, the next observed output is a row of three asterisks: <p> <pre> #I *** </pre> <p> <strong>Guru note:</strong> The three asterisks are generated by a ``<code>text:***</code>'' (see <a href="CHAP00D.htm#SSEC007.1">option text</a>) directive, emitted to <font face="Gill Sans,Helvetica,Arial">ACE</font>, so that <font face="Gill Sans,Helvetica,Arial">ACE</font>'s response can be used as a sentinel to flush out any user errors, or any output from a user's use of Appendix <a href="CHAP00D.htm">Other ACE Options</a> options. <p> Next, if the <code>messages</code> option (see <a href="CHAP004.htm#SSEC018.1">option messages</a>) is set to a non-zero value, what is observed is a heading like: <p> <pre> #I #--- ACE 3.001: Run Parameters --- </pre> <p> (where <code>3.001</code> may be replaced be some later version number of the <font face="Gill Sans,Helvetica,Arial">ACE</font> binary) followed by the ``input parameters'' developed from the arguments and options passed to <code>ACECosetTableFromGensAndRels</code>, <code>ACEStats</code> or <code>ACEStart</code>. After these appears a separator: <p> <pre> #I #--------------------------------- </pre> <p> followed by any <strong>progress messages</strong> (progress messages only occur if <code>messages</code> is non-zero; recall that by default <code>messages</code> = 0), followed by a <strong>results message</strong>. <p> In the case of <code>ACECosetTableFromGensAndRels</code>, the <strong>results message</strong> is followed by a compaction (<code>CO</code> or <code>co</code>) progress message and a coset table. <p> <font face="Gill Sans,Helvetica,Arial">ACE</font>'s exit banner which should look something like: <p> <pre> ========================================= ACE 3.001 Sun Sep 30 22:03:36 2001 </pre> <p> is only seen when running <font face="Gill Sans,Helvetica,Arial">ACE</font> as a standalone. <p> Both <strong>progress messages</strong> and the <strong>results message</strong> consist of an initial tag followed by a list of statistics. All messages have values for the statistics <code>a</code>, <code>r</code>, <code>h</code>, <code>n</code>, <code>h</code>, <code>l</code> and <code>c</code> (excepting that the second <code>h</code>, the one following the <code>n</code> statistic, is only given if hole monitoring has been turned on by setting <code>messages</code> < 0, which as noted above is expensive and should be avoided unless really needed). Additionally, there may appear the statistics: <code>m</code> and <code>t</code> (as for the results message); <code>d</code>; or <code>s</code>, <code>d</code> and <code>c</code> (as for the <code>DS</code> progress message). The meanings of the various statistics and tags will follow later. The following is a sample progress message: <p> <pre> #I AD: a=2 r=1 h=1 n=3; h=66.67% l=1 c=+0.00; m=2 t=2 </pre> <p> with tag <code>AD</code> and values for the statistics <code>a</code>, <code>r</code>, <code>h</code>, <code>n</code>, <code>h</code> (appears because <code>messages</code> < 0), <code>l</code>, <code>c</code>, <code>m</code> and <code>t</code>. The following is a sample results message: <p> <pre> #I INDEX = 12 (a=12 r=16 h=1 n=16; l=3 c=0.01; m=14 t=15) </pre> <p> which, in this case, declares a successful enumeration of the coset numbers of a subgroup of index 12 within a group, and, as it turns out, values for the same statistics as the sample progress message. <p> You should see all the above (and a little more), except that your dates and host information will no doubt differ, by running: <p> <pre> gap> ACEExample("A5-C5" : echo:=0, messages:=-1); </pre> <p> In the following table we list the statistics that can follow a progress or results message tag, in order: <p> <pre> -------------------------------------------------------------------- statistic meaning -------------------------------------------------------------------- a number of active coset numbers r number of applied coset numbers h first (potentially) incomplete row n next coset number definition h percentage of holes in the table (if `messages'$ \< 0$) l number of main loop passes c total CPU time m maximum number of active coset numbers t total number of coset numbers defined s new deduction stack size (with DS tag) d current deduction stack size, or no. of non-redundant deductions retained (with DS tag) c no. of redundant deductions discarded (with DS tag) -------------------------------------------------------------------- </pre> <p> Now that we have discussed the various meanings of the statistics, it's time to discuss the various types of progress and results messages possible. First we describe progress messages. <p> <p> <h2><a name="SECT001">A.1 Progress Messages</a></h2> <p><p> A progress message (and its tag) indicates the function just completed by the enumerator. In the following table, the possible message <code>tag</code>s appear in the first column. In the <code>action</code> column, a <code>y</code> indicates the function is aggregated and counted. Every time this count reaches the value of <code>messages</code>, a message line is printed and the count is zeroed. Those tags flagged with a <code>y*</code> are only present if the appropriate option was included when the <font face="Gill Sans,Helvetica,Arial">ACE</font> binary was compiled (a default compilation includes the appropriate options; so normally read <code>y*</code> as <code>y</code>). Tags with an <code>n</code> in the <code>action</code> column indicate the function is not counted, and cause a message line to be output every time they occur. They also cause the action count to be reset. <p> <pre> ------------------------------------------------------------------ tag action meaning ------------------------------------------------------------------ AD y coset 1 application definition (`SG'/`RS' phase) RD y R-style definition RF y row-filling definition CG y immediate gap-filling definition CC y* coincidence processed DD y* deduction processed CP y preferred list gap-filling definition CD y C-style definition Lx n lookahead performed (type `x') CO n table compacted co n compaction routine called, but nothing recovered CL n complete lookahead (table as deduction stack) UH n updated completed-row counter RA n remaining coset numbers applied to relators SG n subgroup generator phase RS n relators in subgroup phase DS n stack overflowed (compacted and doubled) ------------------------------------------------------------------ </pre> <p> <p> <h2><a name="SECT002">A.2 Results Messages</a></h2> <p><p> The possible results are given in the following table; any result not listed represents an internal error and should be reported to the <font face="Gill Sans,Helvetica,Arial">ACE</font> authors. <p> <pre> result tag meaning ------------------------------------------------------------------- INDEX = x finite index of `x' obtained OVERFLOW out of table space SG PHASE OVERFLOW out of space (processing subgroup generators) ITERATION LIMIT `loop' limit triggered TIME LIMT `ti' limit triggered HOLE LIMIT `ho' limit triggered INCOMPLETE TABLE all coset numbers applied, but table has holes MEMORY PROBLEM out of memory (building data structures) ------------------------------------------------------------------- </pre> <p> <strong>Notes:</strong> Recall that hole monitoring is switched on by setting a negative value for the <code>messages</code> (see <a href="CHAP004.htm#SSEC018.1">option messages</a>) option, but note that hole monitoring is expensive, so don't turn it on unless you really need it. If you wish to print out the presentation and the options, but not the progress messages, then set <code>messages</code> non-zero, but very large. (You'll still get the <code>SG</code>, <code>DS</code>, etc. messages, but not the <code>RD</code>, <code>DD</code>, etc. ones.) You can set <code>messages</code> to 1, to monitor all enumerator actions, but be warned that this can yield very large output files. <p> <p> [<a href = "chapters.htm">Up</a>] [<a href ="CHAP006.htm">Previous</a>] [<a href ="CHAP00B.htm">Next</a>] [<a href = "theindex.htm">Index</a>] <P> <address>ACE manual<br>Januar 2006 </address></body></html>