Solving Sudoku
Input values:
Check 1 - Establish possible numbers
0 changes made
End of establish possible numbers
sqfil 1 for row 1
col 1: 1 2 3 4 5 6 7 8 9
col 2: 1 2 3 4 5 6 7 8 9
col 3: 1 2 3 4 5 6 7 8 9
col 4: 1 2 3 4 5 6 7 8 9
col 5: 1 2 3 4 5 6 7 8 9
col 6: 1 2 3 4 5 6 7 8 9
col 7: 1 2 3 4 5 6 7 8 9
col 8: 1 2 3 4 5 6 7 8 9
col 9: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 2
col 1: 1 2 3 4 5 6 7 8 9
col 2: 1 2 3 4 5 6 7 8 9
col 3: 1 2 3 4 5 6 7 8 9
col 4: 1 2 3 4 5 6 7 8 9
col 5: 1 2 3 4 5 6 7 8 9
col 6: 1 2 3 4 5 6 7 8 9
col 7: 1 2 3 4 5 6 7 8 9
col 8: 1 2 3 4 5 6 7 8 9
col 9: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 3
col 1: 1 2 3 4 5 6 7 8 9
col 2: 1 2 3 4 5 6 7 8 9
col 3: 1 2 3 4 5 6 7 8 9
col 4: 1 2 3 4 5 6 7 8 9
col 5: 1 2 3 4 5 6 7 8 9
col 6: 1 2 3 4 5 6 7 8 9
col 7: 1 2 3 4 5 6 7 8 9
col 8: 1 2 3 4 5 6 7 8 9
col 9: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 4
col 1: 1 2 3 4 5 6 7 8 9
col 2: 1 2 3 4 5 6 7 8 9
col 3: 1 2 3 4 5 6 7 8 9
col 4: 1 2 3 4 5 6 7 8 9
col 5: 1 2 3 4 5 6 7 8 9
col 6: 1 2 3 4 5 6 7 8 9
col 7: 1 2 3 4 5 6 7 8 9
col 8: 1 2 3 4 5 6 7 8 9
col 9: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 5
col 1: 1 2 3 4 5 6 7 8 9
col 2: 1 2 3 4 5 6 7 8 9
col 3: 1 2 3 4 5 6 7 8 9
col 4: 1 2 3 4 5 6 7 8 9
col 5: 1 2 3 4 5 6 7 8 9
col 6: 1 2 3 4 5 6 7 8 9
col 7: 1 2 3 4 5 6 7 8 9
col 8: 1 2 3 4 5 6 7 8 9
col 9: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 6
col 1: 1 2 3 4 5 6 7 8 9
col 2: 1 2 3 4 5 6 7 8 9
col 3: 1 2 3 4 5 6 7 8 9
col 4: 1 2 3 4 5 6 7 8 9
col 5: 1 2 3 4 5 6 7 8 9
col 6: 1 2 3 4 5 6 7 8 9
col 7: 1 2 3 4 5 6 7 8 9
col 8: 1 2 3 4 5 6 7 8 9
col 9: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 7
col 1: 1 2 3 4 5 6 7 8 9
col 2: 1 2 3 4 5 6 7 8 9
col 3: 1 2 3 4 5 6 7 8 9
col 4: 1 2 3 4 5 6 7 8 9
col 5: 1 2 3 4 5 6 7 8 9
col 6: 1 2 3 4 5 6 7 8 9
col 7: 1 2 3 4 5 6 7 8 9
col 8: 1 2 3 4 5 6 7 8 9
col 9: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 8
col 1: 1 2 3 4 5 6 7 8 9
col 2: 1 2 3 4 5 6 7 8 9
col 3: 1 2 3 4 5 6 7 8 9
col 4: 1 2 3 4 5 6 7 8 9
col 5: 1 2 3 4 5 6 7 8 9
col 6: 1 2 3 4 5 6 7 8 9
col 7: 1 2 3 4 5 6 7 8 9
col 8: 1 2 3 4 5 6 7 8 9
col 9: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 9
col 1: 1 2 3 4 5 6 7 8 9
col 2: 1 2 3 4 5 6 7 8 9
col 3: 1 2 3 4 5 6 7 8 9
col 4: 1 2 3 4 5 6 7 8 9
col 5: 1 2 3 4 5 6 7 8 9
col 6: 1 2 3 4 5 6 7 8 9
col 7: 1 2 3 4 5 6 7 8 9
col 8: 1 2 3 4 5 6 7 8 9
col 9: 1 2 3 4 5 6 7 8 9
729 unplaced numbers in 81 squares
Check 2 for single sqfil numbers in a square
0 changes made
End of check single numbers
0 numbers added
Check 3a for single occurrence of sqfil number in a row
0 changes made
End of check single numbers - rows
0 numbers added
Check 3b for single occurrence of sqfil number in a col
End of check single numbers - cols
0 numbers added
0 changes made
Check 3c for single occurrence of sqfil number in an octant
End of check single numbers - octants
0 numbers added
0 changes made
CHECK 4a for single missing endvalue number - rows
0 numbers added
0 changes made
End of CHECK 4a - rows
CHECK 4b for single missing endvalue number - cols
0 numbers added
0 changes made
End of CHECK 4b - cols
CHECK 4c for single missing endvalue number - octants
0 numbers added
0 changes made
End of CHECK 4c - octants
Check 5 - Look at every square wrt row, col and oct
0 changes made
End of check 5 looking at square
(No check no 6)
Check 7a - ROWS (2 numbers)
0 changes made
Check 7b - COLUMNS (2 numbers)
0 changes made
End of CHECK 7
Check 8 - Remove possibilities from rows and columns
0 changes made
End of Check 8 - Remove possibilities from rows and columns
Check 9 - Remove possibilities from octants
0 changes made
End of Check 9 - Remove possibilities from octants
LATEST values after iteration 1
Error check 1a - rows
Error check 1b - cols
End of error check 1
sqfil 1 for row 1
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 2
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 3
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 4
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 5
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 6
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 7
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 8
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 9
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
729 unplaced numbers in 81 squares
Check 10 - Single possibility in octants
0 numbers added
0 changes made
End of check 10 - single possibility in octants
sqfil 1 for row 1
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 2
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 3
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 4
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 5
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 6
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 7
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 8
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
sqfil 1 for row 9
col 1:: 1 2 3 4 5 6 7 8 9
col 2:: 1 2 3 4 5 6 7 8 9
col 3:: 1 2 3 4 5 6 7 8 9
col 4:: 1 2 3 4 5 6 7 8 9
col 5:: 1 2 3 4 5 6 7 8 9
col 6:: 1 2 3 4 5 6 7 8 9
col 7:: 1 2 3 4 5 6 7 8 9
col 8:: 1 2 3 4 5 6 7 8 9
col 9:: 1 2 3 4 5 6 7 8 9
729 unplaced numbers in 81 squares
Check 11 - OCTANT by OCTANT
0 changes made
Check 12 - Two rows/cols of octant filled
End of check 12 - two rows/cols of octant full
End of Octant by Octant
Check 13 - THREE rows at a time
Looking at octants 1, 2, 3
Looking at octants 4, 5, 6
Looking at octants 7, 8, 9
0 changes made
End of check 13 - Three rows at a time
Check 14 - THREE columns at a time
Looking at octants 1, 4, 7
Looking at octants 2, 5, 8
Looking at octants 3, 6, 9
0 changes made
End of check 14 - Three cols at a time
Error check 2a - rows
Error check 2b - cols
LATEST values after iteration 1
Check 15 - Locked candidates in rows
0 changes made
End of check 15 - locked candidates in rows
Check 16 - Locked candidates in cols
0 changes made
End of check 16 - locked candidates in cols
Check 17 - Locked candidates in octants
0 changes made
End of check 17 - locked candidates in octants
Check 18 - Naked pairs in rows and columns
0 Single pairs found
0 changes made
End of check 18 - naked pairs
Check 19 - Naked triples - first, rows (take 2)
Fatal error: Uncaught Error: Cannot use a scalar value as an array in /home/basecrea/mileham.net/test/sudoku.php:4478
Stack trace:
#0 {main}
thrown in /home/basecrea/mileham.net/test/sudoku.php on line 4478