//
// Compare propagation of allDiff with clique of neq
// Note: problem is insoluble
//

import choco.Constraint;
import choco.ContradictionException;
import choco.Problem;
import choco.integer.*;
import choco.integer.search.*;
import choco.Solver;
import choco.Solution;


public class Prop1 {

  public static void main(String[] args) throws ContradictionException {

    Problem pb = new Problem();
    IntDomainVar x = pb.makeEnumIntVar("X",1,2);
    IntDomainVar y = pb.makeEnumIntVar("Y",1,2);
    IntDomainVar z = pb.makeEnumIntVar("Z",1,2);

    IntDomainVar v[] = {x,y,z};
    pb.post(pb.allDifferent(v));

    System.out.println(pb.pretty());

    pb.propagate();

    System.out.println(pb.pretty());   
  }
}