Traduzca las siguientes oraciones al lenguaje de lógica de predicados.

Traduzca las siguientes oraciones al lenguaje de lógica de predicados. Utilice la siguiente clave de traducción:

~ Ana

b ~ Bob

M(x) ~ x es masculino

G(x,y) ~ x está casado con y

C(x,y) ~ x es un hijo de y

a) Anne tiene exactamente dos hijos, ambos casados ​​con Bob

b) Todos los abuelos tienen o sólo hijas, o exactamente dos hijos, o no tienen hijos.

Estoy luchando con esto, especialmente con la última oración. ¿Es esto correcto?

a) X y ( C ( X , a ) C ( y , a ) ¬ X = y ¬ z ( C ( z , a ) ¬ z = X ¬ z = y ) GRAMO ( X , b ) GRAMO ( y , b ) ) .

b) X y z ( C ( y , X ) C ( z , y ) ( tu ( C ( tu , X ) ¬ METRO ( tu ) ) ( v w ( C ( v , X ) C ( w , X ) METRO ( v ) METRO ( w ) ¬ v = w ¬ s ( C ( s , X ) ¬ s = v ¬ s = w ) ) ) ¬ t ( C ( t , X ) ) ) )

Mi cabeza está explotando en este momento. xP No estoy seguro de los paréntesis y los cuantificadores.

Gracias de antemano.

no estoy seguro del no ¬ X = y parte... parece que estás tratando de decir que ambos son distintos, pero la negación solo se aplica a verdadero/falso, según tengo entendido.
¿"Tener sólo hijas,..."?
El no) X = y parte es necesaria para asegurar que los dos niños elegidos no sean iguales...
¿Cómo puede un abuelo no tener hijos? ¿Necesitamos un predicado 'muerto'?
@Sharkos Lo sé, es estúpido, pero eso es lo que dice el ejercicio.

Respuestas (2)

Dos consejos: 1) A veces ayuda reformular la oración en una oración equivalente en inglés que parezca más fácil de analizar. 2) A menudo, puede dividir la oración para que sea más fácil de analizar. Si tiene problemas para comprender la oración, intente expresarla de una manera un poco más sugerente. Por ejemplo:

"Todos los abuelos son tales que o solo tienen hijas, o tienen exactamente dos hijos, o no tienen hijos".

En general, "Cada φ es tal que ψ " se traduce al cálculo de predicados como X ( φ ( X ) ψ ( X ) ) . Su φ ( X ) aquí está " X es un abuelo", mientras que su ψ ( X ) es " X cualquiera tiene... (etc.)". Entonces, en general, la traducción debería verse así:

X ( X  es un abuelo X  solo tiene hijas, o exactamente dos hijos, o no tiene hijos )

Así que si puedes averiguar cómo decir " X es abuelo" y " X o solo tiene hijas, o tiene exactamente dos hijos, o no tiene hijos", entonces sabrás cómo traducir la oración.

Cómo se dice " X es un abuelo"? Básicamente, equivale a decir que X tiene algún hijo, que también tiene algún (otro) hijo. Así que esto solo equivale a y ( C ( y , X ) z ( C ( z , y ) ) ) . Esta fórmula (que tiene X gratis por cierto) es tu φ ( X ) , que va en el antecedente del condicional de tu oración universalmente cuantificada.

Cómo se dice " X o tiene sólo hijas, o exactamente dos hijos, o no tiene hijos"? Bueno, parece ser una disyunción sobre X , así que divídalo en casos: si sabe que todo es una disyunción, puede abordar cada disyunción por separado y luego juntarlo todo con s al final. Así que solo necesitas analizar " X solo tiene hijas", " X tiene exactamente dos hijos", y " X no tiene hijos". Con suerte, las cosas están lo suficientemente claras como para que puedas hacer esto por tu cuenta.

Tu primera afirmación está bien. Para mayor claridad, estoy de acuerdo con los demás en que debe poner entre corchetes las declaraciones que desea negar.

Para el segundo, me preocupa la perspectiva de tener abuelos sin hijos en un mundo sin muerte, así que me saltearé esa parte.

En primer lugar, aclaremos la estructura de "para todos los abuelos x, P(x)". Su declaración actual se mantiene vacía cada vez que el LHS de su implicación falla, por ejemplo y = z = X , que es una elección estúpida, por lo que algo anda mal.

Lo que queremos es para cualquier situación en la que encontremos un X , y , z con la relación correcta, algo vale para X .

Así que considera X y z ( ( C ( y , X ) C ( z , y ) ) PAG ( X ) ) . esto hace cumplir PAG para todos los abuelos X . ¡Creo que tú puedes hacer el resto!