Reputation: 5998
I am trying to figure out how you would encode "[agent A] wants to [verb] to [agent B]" as first-order logic (e.g. "John wants to bite Sara").
To encode "John bites Sara" as FOL would be: bites(John, Sara)
or if you like John(x) ^ Sara(y) ^ bites(x,y)
.
Also, something I noticed is that this relationship could be recursive. for example:
"John wants to want to bite Sara" (John wants to have the desire to bite Sara)
"John wants to want to want to bite Sara" (John wants to be in the state such that he wants to want to bite Sara).
Does anyone know how I can handle this, particularly the sentence "John wants to bite Sara".
Upvotes: 2
Views: 111
Reputation: 472
Tricky!
Let's first make the structure of the sentence more clear: "John wants that he bites Sara". The "he" of course refers to John, so we can simplify to:
Now we can try to formulate this using a predicate, as before:
But then the 2nd argument would be a sentence, rather than a term denoting some object like "John" or "Sara". It turns out, your sentence cannot be formalized using just predicates in FOL, because "wants that" is not a relation between individuals (like "bites(x,y)"), but a relation between an individual (John) and a sentence/proposition ("John bites Sara").
"John wants that A
" is a sentential operator: It takes some sentence A
and forms a new sentence with it. Other examples of operators that take sentences and make new sentences are "A
and B
", "ìf A
, then B
", "not A
", or "it is necessary that A
".
So "John wants that A
" is "on the same level" as the logical operators in FOL. If we want to formalize sentences of the form "x
wants that A
", we need to extend the logic by adding an additional operator (for each x
). This requires a step to intensional semantics (e.g. possible-worlds semantics), because the meaning of "x
wants that A
" cannot be specified using a truth-table alone (as with "not A
" or "A
and B
").
Epistemic logic (click), for example, is propositional logic, extended by sentential operators B_x(A)
, K_x(A)
that represent "x
believes that A
" and "x
knows that A
".
Upvotes: 2