Chapter 5

First-Order Logic (FOL) or Predicate Logic (PL1, PC1)

In Aristotle’s syllogistic, every statement consists of the attribution of a property to an object, which means that they are expressed using unary predicates and therefore formalized using PL. This is no longer sufficient when we need to consider relations (binary, ternary, etc.) between objects. These relations cannot be reduced to unary relations (properties)1.

Handling properties and relations is of course essential in programming (logic programming, multi-agent programming, etc.)2.

If we believe we can manage using formalizations, such as those after definition 2.8, how can we talk about objects that have properties P,Q,… or that are related to other objects?

For example, how can we use PL to verify that the following reasoning is correct:

All horses are animals.

Some horses are white.

Therefore, some white horses are animals.

Similarly, how can the following reasoning, which should obviously be correct, be translated into PL?

For all x, xRa, therefore there exists an x such that aRx

If we denote by P: For all x, xRa

and:

Q: there exists x such that aRx

this reasoning would be classified as incorrect (P can be evaluated to true and Q to false).

This reasoning can be formalized as follows: (as you already know, see also definition 5.1).

image

and now “we can see” that it is correct.

The soundness of these reasonings ...

Get Logic for Computer Science and Artificial Intelligence now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.