Algorithm for Extraction Common Properties of Objects Described in the Predicate Calculus Language with Several Predicate Symbols - Kosovskaya, T. M.; Zhou, J. (Programming and computer software, 2024)
In artificial intelligence problems, connected with the study of complex structured objects which are described in the terms of properties of their elements and relationships between these elements, it is convenient to use predicate calculus formulas, more precisely elementary conjunctions of atomic predicate formulas. In such a case, the problem of extraction common properties of objects arises. The common properties of complex structured objects are set by formulas with variables as arguments, which, up to the names of the arguments, coincide with the subformulas of the objects under study, that is, are isomorphic to these subformulas. Previously, the authors developed algorithms for checking such formulas for isomorphism, as well as for extraction the maximal common subformula of two elementary conjunctions of predicate formulas with a single predicate symbol. Two algorithms, the first of which solves this problem for elementary conjunctions containing two predicate symbols, and the second for an arbitrary number of predicate symbols are proposed in this paper using the last-mentioned algorithm. Estimates of the computational complexity of the presented algorithms are proved. The algorithm is implemented in Python.