Performing an exhaustive backtrack search of combinatorial objects is always a dicey business. One can spend years of CPU time without finding anything. There is always the embarrassing question: ''is the program correct?'' The situation is even worse when the combinatorial object being searched for has a large symmetry group. For efficiency purposes, it is almost obligatory to use as much of the group as possible to prune isomorphic branches of the search tree. Yet, isomorph rejection is difficult to implement and is one of the major sources of errors. This paper proposes a new method of using the symmetry group, not only for isomorph rejection, but also as an independent consistency check of the correctness of the program. The number of isomorphic copies of a given solution is computed in two different ways and the results have to agree, which provides us with the independent consistency check.
[1]
Clement W. H. Lam,et al.
The nonexistence of code words of weight 16 in a projective plane of order 10
,
1986,
J. Comb. Theory, Ser. A.
[2]
Rufus Walker,et al.
An enumerative technique for a class of combinatorial problems
,
1960
.
[3]
Gregory Butler,et al.
A General Backtrack Algorithm for the Isomorphism Problem of Combinatorial Objects
,
1985,
J. Symb. Comput..
[4]
Clement W. H. Lam,et al.
The nonexistence of ovals in a projective plane of order 10
,
1983,
Discret. Math..
[5]
Solomon W. Golomb,et al.
Backtrack Programming
,
1965,
JACM.