version 1.4w10UCIb18
[polyglot.git] / README
diff --git a/README b/README
index fa7080c..6322277 100644 (file)
--- a/README
+++ b/README
@@ -5,7 +5,8 @@ POLYGLOT(6)                                                        POLYGLOT(6)
 NAME
        PolyGlot -  Winboard protocol to UCI protocol adapter
                 -  book engine for Polyglot books
-                -  a collection of utilities for creating opening books
+                -  a collection of utilities for creating and analyzing open-
+       ing books
                 -  a utility for analyzing epd files
                 -  a perft counter
 
@@ -20,6 +21,10 @@ SYNOPSIS
 
        polyglot merge-book -in1 inputfile1 -in2 inputfile2 [-out outputfile]
 
+       polyglot info-book [-bin inputfile] [-exact]
+
+       polyglot dumb-book [-bin inputfile] -color color [-out outputfile]
+
        polyglot [configfile] epd-test [-epd inputfile] [-min-depth depth]
        [-max-depth depth] [-max-time time] [-depth-delta delta]
 
@@ -78,6 +83,33 @@ DESCRIPTION
        PolyGlot can compile a pgn file into a binary PolyGlot book and fur-
        thermore it can merge two such binary books into a third one.
 
+       PolyGlot can also extract some useful information from PolyGlot books.
+       The utility "dump-book" dumps the "lines" in a book for a given color.
+       By definition a line is a sequence of moves (from the starting posi-
+       tion) in which the given color makes only book moves and the other
+       color makes arbitrary moves (i.e. not necessarily book moves).
+
+       Since a PolyGlot book is built up from positions and not lines there
+       may be (and there usually are) many positions in the book that are not
+       on a "line" as defined in the previous paragraph. It is convenient to
+       call such positions "isolated" positions. The utility "info-book"
+       counts such isolated positions.
+
+       Some of the isolated positions are provably unreachable and they could
+       in principle be deleted from the book. For example if a book contains
+       only the move "e4" in the starting position but also the position after
+       "d4 d5" then this last position is provably unreachable since it
+       requires white to make a non-book move when a book move is available.
+       Such situations arise frequently from the priority rules in merging
+       books.
+
+       Unfortunately not all isolated positions are provably unreachable and
+       it is difficult to identify the latter. If invoked with "-exact" the
+       utility info-book will attempt to count the isolated positions which
+       require a player to make a non-book move when a book move is available.
+       Due to the possibility of transpositions this is not a fool proof
+       method.
+
        Epd test mode
 
        In epd test mode, PolyGlot will search positions in an epd file and
@@ -158,6 +190,34 @@ OPTIONS
 
        When invoked as
 
+       polyglot dump-book
+
+       PolyGlot supports the following options
+
+       -bin (default: book.bin)
+           Input file in PolyGlot book format.
+
+       -color
+           The color for whom to generate the lines.
+
+       -out (default: book_<color>.txt)
+           The name of the output file.
+
+       When invoked as
+
+       polyglot info-book
+
+       PolyGlot supports the following options
+
+       -bin (default: book.bin)
+           Input file in PolyGlot book format.
+
+       -exact
+           Attempt to count the provably unreachable positions among the iso-
+           lated ones.  Note that this takes a very long time.
+
+       When invoked as
+
        polyglot epd-test
 
        (possibly with a config file as first argument) PolyGlot supports the
@@ -434,4 +494,4 @@ SEE ALSO
 
 
 
-                                  2009-01-14                       POLYGLOT(6)
+                                  2009-01-15                       POLYGLOT(6)