Proving Symmetries by Model Transformation
- Cite this paper as:
- Mears C., Niven T., Jackson M., Wallace M. (2011) Proving Symmetries by Model Transformation. In: Lee J. (eds) Principles and Practice of Constraint Programming – CP 2011. CP 2011. Lecture Notes in Computer Science, vol 6876. Springer, Berlin, Heidelberg
The presence of symmetries in a constraint satisfaction problem gives an opportunity for more efficient search. Within the class of matrix models, we show that the problem of deciding whether some well known permutations are model symmetries (solution symmetries on every instance) is undecidable. We then provide a new approach to proving the model symmetries by way of model transformations. Given a model M and a candidate symmetry σ, the approach first syntactically applies σ to M and then shows that the resulting model σ(M) is semantically equivalent to M. We demonstrate this approach with an implementation that reduces equivalence to a sentence in Presburger arithmetic, using the modelling language MiniZinc and the term re-writing language Cadmium, and show that it is capable of proving common symmetries in models.
Unable to display preview. Download preview PDF.