...Thanks for the code, but I do not really understand what is happening.
...Any chance of a quick lesson into how it works?
i assume you mean benson, since the other is just inner classes (i was
thinking that these could give you a board to move on as well as being
something to add benson to).
hmmm, can't seem to find my copies of benson's papers (wish i could get
them online). i sent someone copies of what i had by snailmail, maybe they
can send you copies.
in a nutshell, benson finds all sets of stones that are unconditionally
alive (i.e. the other guy can move forever and you never have to respond).
this is good for terminating searches.
benson, calls a connected set of stones an x-block (x=black or white).
benson determines unconditional aliveness by making sure that each x-block
has 2 small x-enclosed regions (usually eyes, but not always - some may be
"fake" eyes) that are "healthy" for it. these x-enclosed regions must be
enclosed by x_blocks in the set x_blocks under consideration for aliveness.
furthermore, these x-enclosed regions are such that the other player can
not fill them up without capturing himself (i.e they are "small" in some
sense).
in the suport class, we take the initial x-blocks (y) and find every thing
that is region connected to it ([y]) - (tranansitive closure). then we
throw way any xblock that does not have 2 healthy regions. what's left is a
set of x-blocks that are unconditionaly alive and this is called the
support of y.
i can probably answer more detailed questions by looking at the code, but
maybe we ought to do this off line as perhaps not all on the list are
interested in benson.