gardner_prime_puzzle.fzn 1.75 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
var 2222..7777: INT____00001 :: is_defined_var :: var_is_introduced;
var 222..777: INT____00002 :: is_defined_var :: var_is_introduced;
var 2222222..6042729: INT____00003 :: is_defined_var :: var_is_introduced;
var 2222..7777: mP :: output_var = INT____00001;
array [1..4] of var 2..7: mP_a;
var 2222222..7777777: mnP :: output_var = INT____00003;
array [1..7] of var 2..7: mnP_a;
var 222..777: nP :: output_var = INT____00002;
array [1..3] of var 2..7: nP_a;
constraint int_lin_eq([-1, 100, 10, 1], [INT____00002, nP_a[1], nP_a[2], nP_a[3]], 0) :: defines_var(INT____00002);
constraint int_lin_eq([-1, 1000, 100, 10, 1], [INT____00001, mP_a[1], mP_a[2], mP_a[3], mP_a[4]], 0) :: defines_var(INT____00001);
constraint int_lin_eq([-1, 1000000, 100000, 10000, 1000, 100, 10, 1], [INT____00003, mnP_a[1], mnP_a[2], mnP_a[3], mnP_a[4], mnP_a[5], mnP_a[6], mnP_a[7]], 0) :: defines_var(INT____00003);
constraint int_times(INT____00001, INT____00002, INT____00003);
constraint set_in(mP_a[1], {2, 3, 5, 7});
constraint set_in(mP_a[2], {2, 3, 5, 7});
constraint set_in(mP_a[3], {2, 3, 5, 7});
constraint set_in(mP_a[4], {2, 3, 5, 7});
constraint set_in(mnP_a[1], {2, 3, 5, 7});
constraint set_in(mnP_a[2], {2, 3, 5, 7});
constraint set_in(mnP_a[3], {2, 3, 5, 7});
constraint set_in(mnP_a[4], {2, 3, 5, 7});
constraint set_in(mnP_a[5], {2, 3, 5, 7});
constraint set_in(mnP_a[6], {2, 3, 5, 7});
constraint set_in(mnP_a[7], {2, 3, 5, 7});
constraint set_in(nP_a[1], {2, 3, 5, 7});
constraint set_in(nP_a[2], {2, 3, 5, 7});
constraint set_in(nP_a[3], {2, 3, 5, 7});
solve  :: int_search([mP_a[1], mP_a[2], mP_a[3], mP_a[4], nP_a[1], nP_a[2], nP_a[3], mnP_a[1], mnP_a[2], mnP_a[3], mnP_a[4], mnP_a[5], mnP_a[6], mnP_a[7], INT____00001, INT____00002, INT____00003], first_fail, indomain, complete) satisfy;