A system, method, and computer program product for domain-independent natural language understanding, including at least one of forming pairs of words and/or phrases in a sentence, wherein each word and/or phrase is paired with every other word and/or phrase; determining meanings for the words and/or phrases; assigning numeric codes that uniquely identify semantic concepts to those word and/or phrase meanings; comparing the numeric code of each word and/or phrase with each numeric code of the other word and/or phrase in the pair; selecting the pairs with the best relationships; combining highly-related pairs with other highly-related pairs to form longer groups of words; exchanging numeric codes for the longer groups with numeric codes having a weaker relationship to determine if the exchanged numeric codes provide an overall stronger relationship; and forming longer and longer groups until the sentence is understood.
Relationship analysis system and method for semantic disambiguation of natural language