Follow project on Twitter

2.3.3. Predicate Logic

Predicate Logic (algebra) has a fundamental problem when applied to linguistics: It doesn’t naturally go beyond the present tense of basic verb “to be”. For example, when we encounter a calculation containing possessive verb “has/have”, we have been unconsciously taught to convert it into a verb “is/are” problem, as illustrated by the following example:

> Given: “John has three apples.
> Given: “Paul has four apples.

• A logical conclusion would be:
< “John and Paul have seven apples (together).”.

• However, we convert calculations into a basic verb “is/are” problem:
< “Three apples and four apples are seven apples (together).”.

This generally accepted workaround solves the calculation. But it is unable to draw the logical conclusion.

So, the current algebra is not equipped for linguistics. It describes logic expressed by present tense verb “is/are” in a natural way. But it doesn’t describe the logic of the complimentary function of verb “is/are”, namely verb “has/have”, neither does it describe the logic of their past tense functions, namely verb “was/were” and verb “had”.

As a consequence, automated reasoners are unable to read and write sentences with possessive verb “has/have” and with past tense verbs “was/were” and “had”.

Words like definite article “the”, possessive verb “has/have” and past tense verbs “was/were” and “had” have a naturally intelligent function in language. However, their naturally intelligent function is not described in any scientific paper. Apparently, scientists don't understand their naturally intelligent function in language.

Being unable to describe possessive logic in a natural way, another workaround is created, by adding possessive logic in an artificial way:

• Possessive logic must be programmed directly into the reasoner, like “has_son(john,paul)”;
• Besides that, lacking a generic solution, the same logic needs to be programmed for each and every new noun. So, separate functions must be programmed for “has_daughter”, “has_father”, “has_mother”, “has_teacher”, “has_student”, and so on;
• Moreover, in order to enable multilingual reasoning, all existing functions in one language, need to be translated for each and every new language.

This is engineering (specific solutions to specific problems) instead of science (a generic solution). Actually, it is a bad example of engineering. This is madness. We need to uplift the field of AI and NLP from engineering to a science.