Estoy interesado en una prueba rápida para ver si un número es un cuadrado perfecto. Una buena prueba es observar cómo el número de extremos. En Base 10, un cuadrado perfecto termina en 0,1,4,5,6, o 9. Esto es útil porque puedo trivialmente filtrar los números que terminan de forma diferente antes de lo necesario para hacer más costosas operaciones.
También es cierto que en Base 16, un cuadrado perfecto termina en 0, 1, 4, 9.
Sin embargo, si nos fijamos en la no-perfecto-plaza de los números 11 y 17, podemos ver 11 pases de la Base 10 de la prueba, desde las 11 mod 10 = 1, pero no la Base 16 de la prueba (11 mod 16 = 11). Asimismo, el 17 de falla de la Base 10 de la prueba, sino que pasa a la Base 16 de la prueba. Creo que esto es porque el 10 tiene un factor que 16 no tiene, pero no estoy seguro.
Es fácil ver que la realización de ambas pruebas se filtran más números que cada uno de ellos por su propia cuenta, y es lógico pensar que existen más bases que filtrar los números adicionales.
Mi pregunta es: ¿por Qué estas dos bases de la prueba de un conjunto diferente de números, y cómo puedo elegir un conjunto mínimo de las bases que filtran la mayoría de los números?
(Me doy cuenta de cualquier método de elección de bases puede extenderse infinitamente, pero el infinito y rápido no llegar exactamente a lo largo. Yo soy más curioso en la teoría detrás de esto, y puedo hablar de una prueba de cobertura vs velocidad de equilibrio en Stack Overflow).