Group theory crops us simply everywhere in theory of computing -- a seminar on ``Group-theoretic techniques in computer science'' would run on into weeks. All we could hope for was a good sample. We got a wonderful one.
Arvind showed us how group theory was used effectively to solve what looks like a purely graph-theoretic problem. The problem is to decide if two given graphs, of bounded degree (in fact most of the exposition was for graphs with max degree 3), are isomorphic. Without the degree restriction, graph isomorphism is the celebrated and well-studied ``intermediate'' problem -- unlikely to be NP-complete, not known to be in P, but no known lower bounds better than NLOG. For bounded degree graphs, there is however a polynomial time algorithm.
The intuition behind how this algorithm works on trivalent
graphs is roughly as follows: Consider the graph which
is disjoint union of
and
, and look at its
automorphism group
(elements are vertex relabellings
which preserve adjacency; the group operation is composition
of labellings). If the graphs are isomorphic, then
, and
hence any generator set for
, has elements which map a
vertex of
to a vertex of
. The converse is also
true. So it suffices to compute a generator set for
. But
this may not be an easy task. How can one nonetheless use
this idea?
Let be an edge of
,
. Subdivide both
and
and connect the division points
by new
edge
; this gives another trivalent graph
. Now
and
are isomorphic iff for some such
, there
is some element of Aut(
) that flips the endpoints of
.
We are back to computing the generator set of the
automorphism group of a graph. But the graph is trivalent,
and hence the automorphism subgroups stabilising individual
edges ( below) are 2-groups. Furthermore, and this is
crucial, the graph has a special edge
, a bridge between
two parts, and this provides the key to an incremental
construction as follows: For graphs
of increasing
``radius'' centred around the edge
(strictly speaking,
consists of all length
paths containing
),
figure out the ways in which these vertices/edges can be
relabelled preserving adjacency. (For distance 0, only two
labellings are possible: identity, and the map that flips
and
.) From each such set of permissible
relabellings, now figure out permissible relabellings for
adjacent edges/vertices.
Group theoretically, construct generator sets for the
automorphism groups of
. Each
restricted to
is in
, and the natural
homomorphism from
to
has as kernel those
relabellings that pointwise fix
. Given a generator set
for
, we can first figure out this kernel, and then use
it to find a generator set for
. Eventually we
construct
, which has the information we need.
The incremental construction requires polynomial time (poly
in ) algorithms for the following group-theoretic
questions: given a group (which is a subgroup of
)
presented by a generator set, (1) find the group
size. (2) test for membership in the group. (3) given poly
time membership testing for a ``large'' subgroup, find a
generator set for the subgroup. In describing the
algorithms, we were led through a nice exposure of
solvability, orbits, stabiliser subgroups, blocks and
primitivity, blocks and subgroups, block systems, Jerrum's
filter, Schreir's generator, and more. One had to remind
oneself periodically that this delving deep into the
fascinating world of groups was being done at that point
just to address graph isomorphism! The original paper
describing this in detail, is, I am told, quite
accessible/readable, and can be found at [17].
There was more to follow from Arvind, on connecting Galois
field theory with the question of whether a polynomial is
solvable by radicals (i.e. by a circuit with ,
and radical
gates.) Landau and Miller showed that
if this question is poly-time decidable, then there is an
effective poly-time construction of the required circuit as
well. However I must confess to having lost out on this
part, being satiated and saturated with the isomorphism
algorithm.
Incidentally, the tower of groups construction used in the GI algorithm, with sifting down the cosets to obtain the desired representation, has a fascinating history involving breaking the Iron Curtain; see Babai's article in Calude's book [9].