Traducir sentencia a lógica de predicados

P(x,y) = def "x divide y"

Declaración: "No hay número primo más grande"

UD: Z+

¿Cómo traducimos esto a la lógica?

Estoy pensando entre estas dos opciones:

X y [ y > X z ( PAG ( z , y ) ( z = 1 z = y ) ) ]

X y [ y > X z ( ( z = 1 z = y ) PAG ( z , y ) ) ]

Encontré una publicación anterior en este sitio que aborda exactamente la misma pregunta que la tuya, aunque usa π(x)="x es un número primo" en lugar de tu predicado P(x,y). Simplemente puede sustituir su π(x) con su P(x,y) de su definición allí. Tenga en cuenta que, aunque se puede demostrar que su primera fórmula es lógicamente equivalente a su oración prevista, pero como en la publicación vinculada, la respuesta aceptada señaló que no es la traducción exacta y que le falta el concepto de número primo . Espero que esto ayude...

Respuestas (2)

Definitivamente no es la segunda afirmación: esa dice que 1 e y dividen a y... lo cual es cierto para cualquier número, no solo para los números primos.

La primera tiene razón: dice que los únicos dos números que dividen a y son el 1 y el mismo y…. y eso lo convierte en un número primo (y no tenemos que preocuparnos de que y sea 1, ya que el dominio son los números enteros positivos, por lo que si y es mayor que x, ya tenemos que y es mayor que 1

Simplemente no entiendo las oraciones, no hay un número primo más grande. Estoy confundido por la respuesta de Mark Savings. ¿Básicamente está validando su reclamo?
@RogerSteinberg No he leído la respuesta de Mark, pero la primera declaración dice literalmente: cada número tiene un número primo (el segundo conjunto) que es más grande que él mismo (el primer conjunto).
@RogerSteinberg Sí, Mark y yo estamos señalando lo mismo: dado que cada número es divisible por 1 y por sí mismo, la segunda declaración no dice nada más que para cada número x hay un número y más grande. Así que eso no es lo que quieres. Para asegurarse de que y es un número primo , debe asegurarse de que no sea divisible por nada más que 1 o por sí mismo. Entonces, podrías hacer: Az (~(z=1 vz =y) -> ~Div(z,y)) … que por contraposición es equivalente a Az(Div(z,y)->(z=1 vz= y))… así que es la primera declaración que quieres

Considere la declaración z ( ( z = 1 z = y ) PAG ( z , y ) ) . Tenga en cuenta que, en general, ( A B ) C es lógicamente equivalente a ( A C ) ( B C ) . Entonces podemos reescribir ( z = 1 z = y ) PAG ( z , y ) como ( z = 1 PAG ( z , y ) ) ( z = y ) PAG ( z , y ) ) .

Ahora en general, z ( q ( z ) R ( z ) ) es lógicamente equivalente a z q ( z ) z R ( z ) . Entonces podemos reescribir z ( ( z = 1 PAG ( z , y ) ) ( z = y PAG ( z , y ) ) como z ( z = 1 PAG ( z , y ) ) z ( z = y PAG ( z , y ) ) .

Ahora en general, X ( X = w q ( X ) ) es lógicamente equivalente a q ( w ) . Entonces podemos reescribir z ( z = 1 PAG ( z , y ) ) como PAG ( 1 , y ) , y podemos reescribir z ( z = y PAG ( z , y ) ) como PAG ( y , y ) .

Así que la declaración es lógicamente equivalente a PAG ( 1 , y ) PAG ( y , y ) . Tenga en cuenta que ambos PAG ( 1 , y ) y PAG ( y , y ) son siempre verdad.

Así que la declaración X y ( y > X z ( ( z = 1 z = y ) PAG ( z , y ) ) ) es lógicamente equivalente a X y ( y > X ) . Esto es trivial.

Por el contrario, tenga en cuenta que la declaración " w es primo" se puede expresar como w 1 z ( PAG ( z , w ) z = 1 z = w ) ) . Entonces, la primera definición es lógicamente equivalente a decir que hay números primos arbitrariamente grandes.