1997
DOI: 10.1007/bfb0027000
|View full text |Cite
|
Sign up to set email alerts
|

Optimal non-deterministic functional logic computations

Abstract: Abstract. We show that non-determinism simplifies coding certain problems into programs. We define a non-confluent, but well-behaved class of rewrite systems for supporting non-deterministic computations in functional logic programming. We show the benefits of using this class on a few examples. We define a narrowing strategy for this class of systems and prove that our strategy is sound, complete, and optimal, modulo non-deterministic choices, for appropriate definitions of these concepts. We compare our stra… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

1
93
0

Year Published

1999
1999
2006
2006

Publication Types

Select...
6

Relationship

4
2

Authors

Journals

citations
Cited by 57 publications
(94 citation statements)
references
References 9 publications
1
93
0
Order By: Relevance
“…Non-determinism broadens the class of programs that can be coded using functional composition [3]. For example, a program that solves a cryptarithm must assign digits to each letters.…”
Section: Functional Logic Featuresmentioning
confidence: 99%
See 1 more Smart Citation
“…Non-determinism broadens the class of programs that can be coded using functional composition [3]. For example, a program that solves a cryptarithm must assign digits to each letters.…”
Section: Functional Logic Featuresmentioning
confidence: 99%
“…In the last decade, the theory of functional logic computations has made substantial progress. Significant milestones include a model that integrates narrowing and residuation [13], narrowing strategies for several classes of programs suitable for functional logic languages [5], a functional-like model for non-deterministic computations [3], and well-defined semantics for programming languages of this kind [1,11].…”
Section: Introductionmentioning
confidence: 99%
“…It is interesting to note that the determinism property of functions (i.e., there is at most one result value for fixed input arguments) is not strictly required. Actually, one can also deal with nondeterministic functions that deliver more than one result on a given input [3,15]. This comes at no cost to the implementor since non-determinism is always available in functional logic languages.…”
Section: Functional Logic Programming and Currymentioning
confidence: 99%
“…This comes at no cost to the implementor since non-determinism is always available in functional logic languages. On the other hand, the combination of demand-driven evaluation and non-deterministic functions can result in a large reduction of the search space [3,15].…”
Section: Functional Logic Programming and Currymentioning
confidence: 99%
See 1 more Smart Citation