Estoy tratando de escribir un programa que resuelve sudokus el uso de una base de Gröbner. Me introdujo 81 variables $x_1$$x_{81}$, esta es una linealización de la sudoku de la junta.
El espacio de validez sudokus se define por:
para $i=1,\ldots,81$ : $F_i = (x_i - 1)(x_i - 2)\cdots(x_i - 9)$ Esto representa el hecho de que todos los cuadrados tienen valores enteros entre 1 y 9.
para todos los $x_i$ $x_j$ que no son iguales, pero en la misma fila, columna o bloque: $G_{ij} = (F_i - F_j)/(x_i - x_j)$ Esto representa que las variables $x_i$ $x_j$ no puede ser igual.
Todos estos $F_i$ $G_{ij}$ juntos definen el espacio de validez sudokus. Este consta de 891 polinomios.
Ahora para resolver un sudoku, podemos añadir las pistas para el espacio, así por ejemplo si la idea de un sudoku es el primer cuadrado es 5, luego añadimos $(x_1 - 5)$ a el espacio. Si aprovechamos la base de Gröbner de este espacio podemos ver directamente la solución para ello.
Entiendo lo que estoy haciendo en este momento. Pero tengo problemas para encontrar una computable forma para encontrar las bases de Gröbner. Me ha hecho todo por $4\times4$ sudokus (o los llamados shidokus). Pero Arce ni Singular me están dando un resultado de la base de Gröbner de la $9\times9$ sudoku espacio. Usted puede ver los comandos que me dio a Arce aquí (Primero debo definir los 891 polinomios, entonces pido una base de esto) He leído los papeles diciendo que es factible aunque ineficaz para hacer lo que me esfuerzo, pero no veo la manera de encontrar la solución, ya que no incluyen muchos de los detalles de implementación. Puede alguien me apunte a una dirección, haciendo de este problema más fácil de Arce o de otro software?