About the format of the problems
--------------------------------
Example: The problem p1082022:

$ p1082022
AIAAFEAEDADCACBAGDAICABAAIBAHEAIDABBAGEADD?HC?GA?DB?EC?HD\
AFA?FB?EA?HB[HB][EA][EC][FB]
?+l2d#50 3 1 54.00 10 ??:GCFCFDFCEBHAFDFC:
?-d#8 3 1 37.50 12 ??:CAFCGCHAFDDA@@CAFCEB@@DB:
?-d#15 3 3 60.00 9 ??:FCDACAGCGBDAHACA:
?-d#2 3 1 250.00 7 ??:DAFCGCFDHAEB@@EC:
?-d#1 3 1 0.00 6 ??:HAFCGCEBFAEC:
?-d#1 3 1 0.00 2 ??:GBFCGCFD:
A+d#5 3 1 0.00 3 ??:GCFCGB:
A+d2l#7 3 1 300.00 12 ??:FCGCEBECFDHAEBECDAEB:
A+d1l#20 3 1 15.00 13 ??:DAGCEBDBFCEBHAFDCAFC:
A+d1l#34 3 1 17.65 10 ??:FDGCFCHAEBECDAEB:
A+d1l#25 3 1 40.00 10 ??:HAGCFCFDDAFCEBDBCAEB:
A-l#1 3 1 0.00 10 ??:GBGCFCFDDAEBHAFC:

(The problem name: p1082022
If the first letter is a p then this is a life&death problem,
if it is a q then a ladder problem.
The first digit specifies the computer on which the problem was
generated, the next three the indices a file which each contain
256 problems and the last three digits the index of the problem
in the file.)

A $ as first character in a line indicates that the problem name follows
behind (p1082022 above). The next lines (here two) give the stones, 
3 characters specify one stone: color, x-, y-coordinate. 
The numbers are obtained by subtracting
64 from the ascii-value of the character. Color=1 is Black (=character A)
and the color -1 is White (=character ?). For example, AIA means Black (A)
on (9,1). The \ character indicates continuation on the next line.
[..] indicates fields that are occupied by chains which try to live
like [HB][EA][EC][FB] means that the position is regarded as alive if
at least one of the 4 chains which occupy the fields (8,2), (5,1),
(5,3), (6,2) manages to live whatever the killing side tries.
In problems generated earlier [..] is missing, then the program checks
automatically which chains try to live.

Each of the following lines is one solution ordered by quality, the best
first. If there follows no solution then this means, that there is no
winning move or that there are more than one equally winning moves
(if seki is counted as alive). This happend if an earlier version of the
program thought that there is a unique solution and a newer version found
that there is actually no or more than one solution.

1. character = color to set first.
2.     "     = + then the side moving first wins if no Ko-threats are
                 played outside the problem
               - then the side moving first looses if no Ko-threats are
                 played outside the problem
3.     "     = result of such a sequence: d = death, l = life
If the 4. character is not # then it is a digit, saying how many KO-threats
would alter the outcome and the next characterizes the different outcome
(d=death, l=life). For example,
?-d3l  means White moving first looses and is dead but with 3 outside
       ko threats it would live.
A+l    means Black moving first wins and lives.
A-l    means Black moving first looses, the position lives, i.e. Black can
       not kill

After # follow a few numbers describing the problem which have only for the
first solution a real meaning:
- number of leaves of the search-tree
- internal number saying which heuristic has been used to solve the problem
- the number on which place the final winning move landed in the first
  heuristic (the higher, the more interesting the problem is)
- unnecessary overhead spent by the program when calculating the solution
  in % due to a weak heuristic or due to the unexpectedness of the solution.
- the largest number of moves in one sequence of the treesearch
- In solutions generated later there are two more characters (-,+ or ?)
  indicating whether double KO or other infinite cycles play a role for
  determing the status or whether this is not known(?).

Finally between : and : is enclosed one representative sequence of moves,
each move using only 2 characters because of alternating color. Passing
is expressed by @@ which if translated means a move on (0,0).

There is no guaranty about the accuracy of the solutions to the problems.
The higher the number created from the last six indices of the problem
name is, the later the problem has been generated with possibly an improved
program version. 

The second and all even moves need not be optimal if it is not a KO-situation
because then they all will lose eventually and the computer does not look for
the fastest win or longest resistence. But all odd numbered moves must be
correct answers, i.e. they must guarantee the best achievable, not
necessarily on the quickest way.

  Two specialities:
- The computer treates live and seki both as alive without distinction.
- The number of Ko's, described below, is the number of external threats which
  are necessary to change the outcome compared to the result if no side plays
  any exterior threat. A `2' therefore need not be the same as a 2-step-Ko but
  can as well mean that the other side has an internal Ko-threat which must be
  compensated by an extra own exterior threat. In both cases `2' is related to
  the relative strength of both sides and characterizes the position.

If you find an error or think something is wrong, especially with later
generated problems then please send a description to

twolf@brocku.ca


                             Have fun,

                            Thomas Wolf.
