% http://www.cs.mu.oz.au/433/tenpenki.html
% tenpenki
% tini: 0.7 sec
% minizinc: 3.9 sec
% fz: 3 sec for first solution, 30 sec for proving that it was the
% only solution
% ECLiPSe/ic: solution after 30 sec, then 1 minute.
% lazy: 0.5 seconds
%
%% ROW RULES
row_max = 10;
row_states = array2d(1..row_total_states, 1..2, [
% pattern 0,2,
%
1,2,
0,3,
3,0,
% pattern 1,1,
%
1,2,
3,0,
3,4,
4,0,
% pattern 1,4,
%
1,2,
3,0,
3,4,
0,5,
0,6,
0,7,
7,0,
% pattern 1,3,
%
1,2,
3,0,
3,4,
0,5,
0,6,
6,0,
% pattern 1,4,
%
1,2,
3,0,
3,4,
0,5,
0,6,
0,7,
7,0,
% pattern 0,8,
%
1,2,
0,3,
0,4,
0,5,
0,6,
0,7,
0,8,
0,9,
9,0,
% pattern 0,7,
%
1,2,
0,3,
0,4,
0,5,
0,6,
0,7,
0,8,
8,0,
% pattern 0,6,
%
1,2,
0,3,
0,4,
0,5,
0,6,
0,7,
7,0,
% pattern 0,4,
%
1,2,
0,3,
0,4,
0,5,
5,0,
% pattern 0,2
%
1,2,
0,3,
3,0,
]);
row_max_state = 9;
row_total_states = 59;
row_num_patterns = 10;
row_num_states = [3,4,7,6,7,9,8,7,5,3]; % this is also the final state
row_start_where = [1,4,8,15,21,28,37,45,52,57];
% COL_RULES:
col_max = 10;
col_states = array2d(1..col_total_states, 1..2, [
% pattern 0,5,
1,2,
0,3,
0,4,
0,5,
0,6,
6,0,
% pattern 0,3,
1,2,
0,3,
0,4,
4,0,
% pattern 0,4,
1,2,
0,3,
0,4,
0,5,
5,0,
% pattern 0,5,
1,2,
0,3,
0,4,
0,5,
0,6,
6,0,
% pattern 0,6,
1,2,
0,3,
0,4,
0,5,
0,6,
0,7,
7,0,
% pattern 0,6,
1,2,
0,3,
0,4,
0,5,
0,6,
0,7,
7,0,
% pattern 0,8,
1,2,
0,3,
0,4,
0,5,
0,6,
0,7,
0,8,
0,9,
9,0,
% pattern 1,4,
1,2,
3,0,
3,4,
0,5,
0,6,
0,7,
7,0,
% pattern 0,2,
1,2,
0,3,
3,0,
% pattern 0,1
1,2,
2,0,
]);
col_num_patterns = 10;
col_max_state = 9;
col_total_states = 56;
col_num_states = [6,4,5,6,7,7,9,7,3,2]; % this is also the final state
col_start_where = [1,7,11,16,22,29,36,45,52,55];