The Mathematics of Sudoku