Equational logic as a programming language
Equational logic as a programming language
Algorithms & data structures
Nondeterministic algebraic specifications and nonconfluent term rewriting
Journal of Logic Programming
Encapsulated search for higher-order concurrent constraint programming
ILPS '94 Proceedings of the 1994 International Symposium on Logic programming
Term rewriting and all that
Strongly sequential and inductively sequential term rewriting systems
Information Processing Letters
Term Rewriting Systems
Implementing Encapsulated Search for a Lazy Functional Logic Language
FLOPS '99 Proceedings of the 4th Fuji International Symposium on Functional and Logic Programming
Controlling Search in Declarative Programs
PLILP '98/ALP '98 Proceedings of the 10th International Symposium on Principles of Declarative Programming
Proceedings of the Third International Conference on Algebraic and Logic Programming
Optimal Non-deterministic Functional Logic Computations
ALP '97-HOA '97 Proceedings of the 6th International Joint Conference on Algebraic and Logic Programming
Constructor-based conditional narrowing
Proceedings of the 3rd ACM SIGPLAN international conference on Principles and practice of declarative programming
A proof theoretic approach to failure in functional logic programming
Theory and Practice of Logic Programming
Proceedings of the 9th ACM SIGPLAN international conference on Principles and practice of declarative programming
Evaluation strategies for functional logic programming
Journal of Symbolic Computation
On a tighter integration of functional and logic programming
APLAS'07 Proceedings of the 5th Asian conference on Programming languages and systems
Declarative programming with function patterns
LOPSTR'05 Proceedings of the 15th international conference on Logic Based Program Synthesis and Transformation
Overlapping rules and logic variables in functional logic programs
ICLP'06 Proceedings of the 22nd international conference on Logic Programming
A virtual machine for functional logic computations
IFL'04 Proceedings of the 16th international conference on Implementation and Application of Functional Languages
Programming with narrowing: A tutorial
Journal of Symbolic Computation
Transforming functional logic programs into monadic functional programs
WFLP'10 Proceedings of the 19th international conference on Functional and constraint logic programming
New functional logic design patterns
WFLP'11 Proceedings of the 20th international conference on Functional and constraint logic programming
Contracts and specifications for functional logic programming
PADL'12 Proceedings of the 14th international conference on Practical Aspects of Declarative Languages
Compiling a functional logic language: the basic scheme
FLOPS'12 Proceedings of the 11th international conference on Functional and Logic Programming
A semantics for weakly encapsulated search in functional logic programs
Proceedings of the 15th Symposium on Principles and Practice of Declarative Programming
Hi-index | 0.00 |
We propose a novel approach to encapsulate non-deterministic computations in functional logic programs. Our approach is based on set functions that return the set of all the results of a corresponding ordinary operation. A characteristic feature of our approach is the complete separation between a usually-non-deterministic operation and its possibly-non-deterministic arguments. This separation leads to the first provably order-independent approach to computing the set of values of non-deterministic expressions. The proof is provided within the framework of graph rewriting in constructor-based systems. We propose an abstract implementation of our approach and prove its independence of the order of evaluation. Our approach solves easily and naturally problems mishandled by current implementations of functional logic languages.