Information Processing Letters
Implication of clauses is undecidable
Theoretical Computer Science
Learning Conjunctions of Horn Clauses
Machine Learning - Computational learning theory
Satisfiability of the smallest binary program
Information Processing Letters
The resolution calculus
Foundations of Inductive Logic Programming
Foundations of Inductive Logic Programming
Undecidability of the Horn-clause implication problem
SFCS '92 Proceedings of the 33rd Annual Symposium on Foundations of Computer Science
On the Hardness of Learning Acyclic Conjunctive Queries
ALT '00 Proceedings of the 11th International Conference on Algorithmic Learning Theory
Hi-index | 0.00 |
Flattening is a method to make a definite clause function-free. For a definite clause C, flattening replaces every occurrence of a term f(t1, . . . , tn) in C with a new variable v and adds an atom pf(t1, ...,tn,v) with the associated predicate symbol pf with f to the body of C. Here, we denote the resulting function-free definite clause from C by flat(C). In this paper, we discuss the relationship between flattening and implication. For a definite program Π and a definite clause D, it is known that if flat(Π) = flat(D) then Π = D, where flat(Π) is the set of flat(C) for each C Ɛ Π. First, we show that the converse of this statement does not hold even if Π = {C}, that is, there exist definite clauses C and D such that C = D but flat(C) ≠ flat(D). Furthermore, we investigate the conditions of C and D satisfying that C |= D if and only if flat(C) |= flat(D). Then, we show that, if (1)C is not self-resolving and D is not tautological, (2) D is not ambivalent, or (3) C is singly recursive, then the statement holds.