A relaxed condition for avoiding the occur-check
We generalize the notion of “not subject to occur-check” (NSTO), on which most known results on avoiding the occur-check in logic programming are based. NSTO means that unification is performed only on such pairs of atoms for which the occur-check never succeeds in any run of a nondeterministic unif...
Saved in:
Published in | Theoretical computer science Vol. 975; p. 114107 |
---|---|
Main Author | |
Format | Journal Article |
Language | English |
Published |
Elsevier B.V
09.10.2023
|
Subjects | |
Online Access | Get full text |
ISSN | 0304-3975 |
DOI | 10.1016/j.tcs.2023.114107 |
Cover
Summary: | We generalize the notion of “not subject to occur-check” (NSTO), on which most known results on avoiding the occur-check in logic programming are based. NSTO means that unification is performed only on such pairs of atoms for which the occur-check never succeeds in any run of a nondeterministic unification algorithm. Here we show that “any run” can be weakened to “some run”. We present some related sufficient conditions under which the occur-check may be safely omitted. We show examples for which the proposed approach provides more general results than the approaches based on well-moded and nicely moded programs (this includes cases to which the latter approaches are inapplicable). We additionally present a sufficient condition based on NSTO, working for arbitrary selection rules.
•We deal with sufficient conditions for avoiding the occur-check in unification.•Such conditions have been based on a notion of “not subject to occur-check” (NSTO).•We propose a less restrictive version of NSTO.•It widens the class of cases dealt with.•Also, it leads to simpler sufficient conditions than NSTO, for some cases. |
---|---|
ISSN: | 0304-3975 |
DOI: | 10.1016/j.tcs.2023.114107 |