This simple applet can help finding maps that preserve a set
of graphs. It uses a bounded width one algorithm, so even if
you have no solution, the one consistency algorithm could give
you a set of possibilities. You can also find a solution, which
automatically searches all possibilities for you. You can run
this program in command line mode if you simply save the
GraphPoly.jar file and in that
directory you run "java -jar GraphPoly".
You have to type in your input into the following field.
A tuple is a sequence of digits starting from 0. A graph
is a sequence of pairs separated by spaces.
A list is a comma separated list of numbers.
First you have
to specify the arity of the operation, then the size of domain.
You can restrict the domain of the operation to
a connected component of a direct power of a graph.
This can be followed by constraints on the operation
we want to generate. The simplest restriction is a value
specification with a list of possible values.
You can also specify that the operation needs to be a
(weak) near-unanimity, or it needs to be a polymorphism
of a given graph. You can put a # mark infront of lines you want to
comment out. The format of the input is the following.
[ component <tuple> of <graph> ]
[ value <tuple> = <list> ]
[ weak-nu ]
[ nu ]
[ conservative ]
[ idempotent ]
[ preserves <graph> ]
preserves 01 12 20