In this chapter, we discuss the meanings of the messages that appear
in output from the ACE binary, the verbosity of which is determined
by the messages
option (see option messages). Actually our aim
here is to concentrate on describing those ``messages'' that are
controlled by the messages
option, namely the progress and
results messages; other output from ACE is fairly
self-explanatory. (We describe some other output to give points of
reference.)
Both interactively and non-interactively, ACE output is Info
-ed
at InfoACE
level 3. To see the Info
-ed ACE output, set the
InfoLevel
of InfoACE
to at least 3, e.g.
gap> SetInfoACELevel(3);
This causes each line of ACE output to be prepended with
``#I
''. Below, we describe the Info
-ed output observed when
each of ACECosetTableFromGensAndRels
, ACECosetTable
, ACEStats
or
ACEStart
is called with three arguments, and presume that users will
be able to extend the description to explain output observed from
other ACE interface functions. The first-observed (Info
-ed)
output from ACE, is ACE's banner, e.g.
#I ACE 3.001 Sat Feb 27 11:44:12 2016 #I ========================================= #I Host information: #I name = banksia #I ***
If there were any errors in the directives put to ACE, or output from the options described in Appendix Other ACE Options, they will appear next. Then, the next observed output is a row of three asterisks:
#I ***
Guru note:
The three asterisks are generated by a ``text:***
'' (see option text) directive, emitted to ACE, so that ACE's response can be
used as a sentinel to flush out any user errors, or any output from a
user's use of Appendix Other ACE Options options.
Next, if the messages
option (see option messages) is set to a
non-zero value, what is observed is a heading like:
#I #--- ACE 3.001: Run Parameters ---
(where 3.001
may be replaced be some later version number of the
ACE binary) followed by the ``input parameters'' developed from the
arguments and options passed to ACECosetTableFromGensAndRels
,
ACEStats
or ACEStart
. After these appears a separator:
#I #---------------------------------
followed by any progress messages (progress messages only occur if
messages
is non-zero; recall that by default messages
= 0),
followed by a results message.
In the case of ACECosetTableFromGensAndRels
, the results message
is followed by a compaction (CO
or co
) progress message and a
coset table.
ACE's exit banner which should look something like:
========================================= ACE 3.001 Sat Feb 27 11:44:17 2016
is only seen when running ACE as a standalone.
Both progress messages and the results message consist of an
initial tag followed by a list of statistics. All messages have values
for the statistics a
, r
, h
, n
, h
, l
and c
(excepting
that the second h
, the one following the n
statistic, is only
given if hole monitoring has been turned on by setting messages
< 0, which as noted above is expensive and should be avoided unless
really needed). Additionally, there may appear the statistics: m
and
t
(as for the results message); d
; or s
, d
and c
(as for the
DS
progress message). The meanings of the various statistics and
tags will follow later. The following is a sample progress message:
#I AD: a=2 r=1 h=1 n=3; h=66.67% l=1 c=+0.00; m=2 t=2
with tag AD
and values for the statistics a
, r
, h
, n
, h
(appears because messages
< 0), l
, c
, m
and t
. The
following is a sample results message:
#I INDEX = 12 (a=12 r=16 h=1 n=16; l=3 c=0.01; m=14 t=15)
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.
You should see all the above (and a little more), except that your dates and host information will no doubt differ, by running:
gap> ACEExample("A5-C5" : echo:=0, messages:=-1);
In the following table we list the statistics that can follow a progress or results message tag, in order:
-------------------------------------------------------------------- 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) --------------------------------------------------------------------
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.
A progress message (and its tag) indicates the function just completed
by the enumerator. In the following table, the possible message tag
s
appear in the first column. In the action
column, a y
indicates
the function is aggregated and counted. Every time this count reaches
the value of messages
, a message line is printed and the count is
zeroed. Those tags flagged with a y*
are only present if the
appropriate option was included when the ACE binary was compiled (a
default compilation includes the appropriate options; so normally read
y*
as y
). Tags with an n
in the action
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.
------------------------------------------------------------------ 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) ------------------------------------------------------------------
The possible results are given in the following table; any result not listed represents an internal error and should be reported to the ACE authors.
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) -------------------------------------------------------------------
Notes:
Recall that hole monitoring is switched on by setting a negative value
for the messages
(see option messages) 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 messages
non-zero, but very large.
(You'll still get the SG
, DS
, etc. messages, but not the RD
,
DD
, etc. ones.) You can set messages
to 1, to monitor all
enumerator actions, but be warned that this can yield very large
output files.
[Up] [Previous] [Next] [Index]
ACE manual