Follow project on Twitter

Generally accepted workaround

The generally accepted workaround in the field of Artificial Intelligence (AI) and knowledge technology (NLP), to enter knowledge containing verb “have”, is to program it directly into a reasoner, like: has_son(john,paul). However, this is not a generic solution (=science), but a specific solution to a specific problem (=engineering). Because it requires to program each and every noun directly into the reasoner (has_daughter, has_father, has_mother, and so on), and for each and every new language. As a consequence, there is no technique available to convert a sentence like “Paul is a son of John” to “John has a son, called Paul” in a generic way – from natural language, through an algorithm, to natural language – by which noun “son” and proper nouns “Paul” and “John” don't have to be programmed into the reasoner. It is just the first example of this challenge (see Block 1).

Below, a contribution I received from a student, in an attempt to solve this problem. With his permission, his Excel implementation for the English language:

= IF(ISERROR(SEARCH("has a";A1));MID(A1;SEARCH("of";A1)+3;999) & " has a" & IF(ISERROR(SEARCH("is an";A1));" ";"n ") & MID(SUBSTITUTE(A1;"is an";"is a");SEARCH("is a"; SUBSTITUTE(A1;"is an";"is a"))+5;SEARCH("of"; SUBSTITUTE(A1;"is an";"is a"))-SEARCH("is";SUBSTITUTE(A1;"is an";"is a"))-6) & " called " & LEFT(A1;SEARCH("is";SUBSTITUTE(A1;"is an";"is a"))-1);MID(SUBSTITUTE(A1;"has an";"has a");SEARCH("called";SUBSTITUTE(A1;"has an";"has a"))+7;999) & " is a" & IF(ISERROR(SEARCH("has an";A1));" ";"n ") & MID(SUBSTITUTE(A1;"has an";"has a");SEARCH("has a"; SUBSTITUTE(A1;"has an";"has a"))+6;SEARCH("called"; SUBSTITUTE(A1;"has an";"has a"))-SEARCH("has";SUBSTITUTE(A1;"has an";"has a"))-7) & " of " & LEFT(A1;SEARCH("has";SUBSTITUTE(A1;"has an";"has a"))-1))

This solution doesn't check for word types, as explained in paragraph 1.6.2. The function of word types in reasoning of my fundamental document. Besides that, this logic needs to be copied for each language, while a generic solution has only one logical implementation. Moreover, this implementation can't be expanded to process for example multiple specifications words, like in: “Paul is a son of John and Anna” or “John has two sons, called Paul and Joe”. So, this implementation is not flexible. Therefore, it is not generic, and thus not scientific.

The field of AI and NLP is “inspired by nature”. But it has no foundation in nature. Therefore, this field is limited to deliver specific solutions to specific problems (=engineering), like Excel implementation mentioned above. However, this challenge is about uplifting this field of engineering towards a fundamental science, by developing generic solutions, based on a foundation in nature, like I am developing.

My fundamental approach shows that verb “has/have” is complementary to verb “is/are”. So, verb “has/have” can also be used in predicate logic. In order to utilize the naturally intelligent function of structure words, I have defined natural intelligence first. Then I have identified a few Laws of Intelligence that are naturally present in Language. And by implementing these laws of nature as a set of structuring algorithms is my system able to structure the knowledge of the system autonomously.