Article View: comp.lang.prolog
Article #2161Re: Occurs check
From: Gert Smolka
Date: Tue, 22 Dec 1992 15:20
Date: Tue, 22 Dec 1992 15:20
68 lines
2961 bytes
2961 bytes
In article <1992Dec21.153147.26177@cs.brown.edu>,
mj@cs.brown.edu (Mark Johnson) writes:
|> This is a nice way of viewing things, but I don't know any Prolog that
|> gives you all of the constraints C. Consider the following program:
|>
|> p(a) :- q(X,X).
|>
|> q(Y, f(Y)).
|>
|> One the query p(X), Sicstus returns the following:
|>
|> | ?- p(X).
|>
|> X = a ? ;
|>
|> no
This is the perfect answer with respect to
rational trees (there is exactly one X such that X=f(X)).
|> | ?- q(X,X).
|>
|> X = f(f(f(f(f(f(f(f(f(f(f(f(f(f ...
Again, the right answer (maybe, some depth limit
in printing things would be nice).
|> That is, sicstus only returns constraints related to variables appearing
|> the goal. But the constraints that only have cyclic solutions may be
|> associated with other variables.
Sure, but this is how it has to be, isn't it?
By the way, a recent paper of Ralf Treinen and myself in the
Proceedings of JICSLP'92 gives an in-depth study of incremental
decision methods for satisfiability, entailment and negation for
rational trees (actually, a proper generalization of Colmerauer's
rational tree system also accommodating features). The full paper
describes an abstract machine (WAM-like) providing for an
efficient incremental implementation of the decision methods.
Both papers can be obtained by anonymous ftp from
duck.dfki.uni-sb.de (134.96.188.92) from the directory pub/papers.
@inproceedings{CFT-JICLP92,
editor = "K. Apt",
author = "Gert Smolka and Ralf Treinen",
title = "Records for Logic Programming",
booktitle = "Proceedings of the 1992 Joint International Conference and
Symposium on Logic Programming",
year = "1992",
publisher = "The MIT Press",
address = "Cambridge, Mass."
}
@TechReport{ST:cft92rep,
author = "Gert Smolka and Ralf Treinen",
title = "Records for Logic Programming",
institution = "German Research Center for Artificial Intelligence (DFKI)",
year = 1992,
type = "Research Report",
number = "RR-92-23",
address = {Stuhlsatzenhausweg 3, 6600 Saarbr\"ucken 11, Germany}
}
***********
Gert Smolka, DFKI, Stuhlsatzenhausweg 3, D-W-6600 Saarbr"ucken, Germany
Tel: +49 681 302-5311; Fax: +49 681 302-5341; Net: smolka@dfki.uni-sb.de
Technical Details
Message-ID:
<1h7bnlINN5es@eagle.dfki.uni-sb.de>Path:
arc1-ca.pugleaf.net!sparky!uunet!cs.utexas.edu!qt.cs.utexas.edu!yale.edu!ira.uka.de!sbusol.rz.uni-sb.de!gs-serv3.dfki.uni-sb.de!dfki.uni-sb.de!smolkaReferences:
<TORKEL.92Dec18231028@lludd.sics.se> <24454@alice.att.com> <TORKEL.92Dec20104928@bast.sics.se> <1992Dec21.153147.26177@cs.brown.edu>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!cs.utexas.edu!qt.cs.utexas.edu!yale.edu!ira.uka.de!sbusol.rz.uni-sb.de!gs-serv3.dfki.uni-sb.de!dfki.uni-sb.de!smolka From: smolka@dfki.uni-sb.de (Gert Smolka) Newsgroups: comp.lang.prolog Subject: Re: Occurs check Date: 22 Dec 1992 16:20:21 +0100 Organization: DFKI - German Research Center for AI Lines: 69 Sender: gs-soft@gs-serv3.dfki.uni-sb.de Distribution: world Message-ID: <1h7bnlINN5es@eagle.dfki.uni-sb.de> References: <TORKEL.92Dec18231028@lludd.sics.se> <24454@alice.att.com> <TORKEL.92Dec20104928@bast.sics.se> <1992Dec21.153147.26177@cs.brown.edu> NNTP-Posting-Host: gs-serv1.dfki.uni-sb.de