Domanda

Utilizzando solo questi predicati .....

child(X)            X is a child
unwell(X,Y) X is unwell on day Y
location(X,Y,Z)     Location of X on day Y is Z (school, park, home)
sunny(X)            X is a sunny day

Generally, children do not go to school whenever they are unwell
∄x [Child(x) ∧ location(X,y,home) → Child(x) ∧ unwell(X,y)]

Non sono sicuro se quello che ho scritto è giusto o sbagliato

Inoltre non è sicuro, come convertire questa linea ...

On sunny days Julie goes to the park, otherwise she stays at home.

apprezzerebbe l'aiuto ... Grazie ...

È stato utile?

Soluzione

Forse qualcosa di simile:

 ((child(Julie) ^ location(Julie,Y,park)) -> sunny(Y)) ^ ((child(Julie) ^ location(Julie,Y,home)) -> ~sunny(Y))

I permetterà di modificare questo ulteriore se mi viene in mente qualcosa. Stato un po 'da quando ho toccato la logica del primo ordine:)

Altri suggerimenti

la tua prima risposta non è corretta, ma in realtà non è traducibile per FOL perché descrive non descrive una regola rigida, ma solo qualcosa che è generalmente il caso. Per descrivere questo tipo di cose che si avrebbe bisogno di un qualche tipo di logica non monotona.

Ma anche se lasciamo che fuori, e proprio asume Si tratta di una regola ferrea e ignorare tutto il comportamento eccezionale qui dire che non ci sia un'entità x che, se si tratta di un bambino che a casa è malato e un bambino. Penso che si intende essere il secondo precedente della implicazione di essere $ posizione (X, Y, scuola) $

il rendering della seconda frase da Sagar V sembra bello ma forse si vuole invertire l'implicazione (dipende da cosa relazione causale che si desidera avere) e le sue forze di frase Julie di essere un bambino che non è nella sua dichiarazione problema

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top