For efficiency reasons, most Prolog implementations do not include an occur check in their unification algorithms and thus do not conform to the semantic model of first-order logic. We present a simple test which guarantees that unification without occur check is sound in programs satisfying the conditions of the test. We designate each argument position of every predicate as either an input or an output position and then describe a sufficient condition in terms of this designation for unification without occur check to be sound. Unification with occur check can be performed in places in the program where this condition is not satisfied. Two algorithms for implementing this test are described and compared
In this paper we study how to verify that a pure Prolog program has solutions for a given query. The...
Although Prolog is (still) the most widely used logic language, it suffers from a number of drawback...
AbstractA Prolog technology theorem prover (PTTP) is an extension of Prolog that is complete for the...
For efficiency reasons, most Prolog implementations do not include an occur check in their unificati...
AbstractFor efficiency reasons, most Prolog implementations do not include an occur check in their u...
In most PROLOG implementations, for efficiency occur-check is omitted from the unification algorithm...
AbstractA method is presented for executing PROLOG programs which avoids almost all unnecessary occu...
AbstractFor reasons of efficiency, in almost all implementations of Prolog the occur check is left o...
Machine is used. This tag maintains information about the context in which a variable is used. This ...
We provide simple conditions which allow us to conclude that in case of several well-known Prolog pr...
In this dissertation, it is shown that declarative, feature-based, unification grammars can be used ...
International audienceConcolic testing is a popular dynamic validation technique that can be used fo...
Prolog is a logic programming language which is well-suited for rapid prototyping of type systems a...
We show how termination of logic programs with delay declarations can be proven. Three features are ...
Several proposals for computing freeness information for logic programs have been put forward in the...
In this paper we study how to verify that a pure Prolog program has solutions for a given query. The...
Although Prolog is (still) the most widely used logic language, it suffers from a number of drawback...
AbstractA Prolog technology theorem prover (PTTP) is an extension of Prolog that is complete for the...
For efficiency reasons, most Prolog implementations do not include an occur check in their unificati...
AbstractFor efficiency reasons, most Prolog implementations do not include an occur check in their u...
In most PROLOG implementations, for efficiency occur-check is omitted from the unification algorithm...
AbstractA method is presented for executing PROLOG programs which avoids almost all unnecessary occu...
AbstractFor reasons of efficiency, in almost all implementations of Prolog the occur check is left o...
Machine is used. This tag maintains information about the context in which a variable is used. This ...
We provide simple conditions which allow us to conclude that in case of several well-known Prolog pr...
In this dissertation, it is shown that declarative, feature-based, unification grammars can be used ...
International audienceConcolic testing is a popular dynamic validation technique that can be used fo...
Prolog is a logic programming language which is well-suited for rapid prototyping of type systems a...
We show how termination of logic programs with delay declarations can be proven. Three features are ...
Several proposals for computing freeness information for logic programs have been put forward in the...
In this paper we study how to verify that a pure Prolog program has solutions for a given query. The...
Although Prolog is (still) the most widely used logic language, it suffers from a number of drawback...
AbstractA Prolog technology theorem prover (PTTP) is an extension of Prolog that is complete for the...