A Confluent Relational Calculus for Higher-Order Programming with Constraints

@inproceedings{Niehren1994ACR,
  title={A Confluent Relational Calculus for Higher-Order Programming with Constraints},
  author={Joachim Niehren and Gert Smolka},
  booktitle={CCL},
  year={1994}
}
We present the ρ-calculus, a relational calculus parametrized with a logical constraint system. The ρ-calculus provides for higher-order relational programming with first-order constraints, and subsumes higher-order functional programming as a special case. It captures important aspects of the concurrent constraint programming language Oz. We prove the uniform confluence of the ρ-calculus. Uniform confluence implies that all maximal derivations issuing from a given expression have equal length… 
Constraints for Free in Concurrent Computation
TLDR
This work proposes the ρ-calculus as a uniform foundation of concurrent computation and formally relate it to other models: The ρ calculus with equational constraints provides for logic variables and is bisimilar to the γ-Calculus.
A Foundation for Higher-order Concurrent Constraint Programming
TLDR
The γ-calculus can elegantly express higher-order functions and concurrent objects with encapsulated state and multiple inheritance with the remarkable property that it combines first-order constraints with higher- order programming.
A Foundation for Higher-order Concurrent Constraint Programming
TLDR
The γ-calculus can elegantly express higher-order functions and concurrent objects with encapsulated state and multiple inheritance with the remarkable property that it combines first-order constraints with higher- order programming.
A Confluent Calculus for Concurrent Constraint Programming with Guarded Choice
TLDR
It is shown that it is possible to give a natural confluent calculus for concurrent constraint programs, if the syntactic domain is extended by a blind choice operator and a special constant standing for a discarded branch.
Confluence and Normalization in Reduction Systems Lecture Notes
We study confluence and normalization in abstract reduction systems and apply the results to combinatory logic and an abstract version of the lambda beta calculus. For both systems we obtain the
Functional computation as concurrent computation
TLDR
It is proved that call- by-need complexity is dominated by call-by-value complexity, and the concurrent call-By-need model incorporates mutual recursion and can be extended to cyclic data structures by means of constraints.
On proving confluence modulo equivalence for Constraint Handling Rules
TLDR
A formal meta-language is introduced that allows reasoning about abstract states and derivations with meta-level restrictions that reflect the non-logical and incomplete predicates in CHR, and differs from earlier approaches by its simplicity without loss of generality.
Temporal Concurrent Constraint Programming: Denotation, Logic and Applications
TLDR
This work presents a model of temporal concurrent constraint programming which adds to tcc the capability of modeling asynchronous and nondeterministic timed behavior, and calls this tcc extension the ntcc calculus, which gives a denotational semantics for the strongest-postcondition of ntCC processes.
Uniform confluence in concurrent computation
TLDR
This paper investigates concurrent programs that are uniformly confluent and their relation to eager and lazy functional programs and proves a folk theorem, namely that the call- by-need complexity of a functional program is smaller than its call-by-value complexity.
...
1
2
3
...

References

SHOWING 1-10 OF 24 REFERENCES
A Foundation for Higher-order Concurrent Constraint Programming
TLDR
The γ-calculus can elegantly express higher-order functions and concurrent objects with encapsulated state and multiple inheritance with the remarkable property that it combines first-order constraints with higher- order programming.
A calculus for higher-order concurrent constraint programming with deep guards
TLDR
The calculus is parameterized with a first-order constraint system and provides first-class abstraction, guarded disjunction, committed-choice, deepguards, dynamic creation of unique names, and constraint communication for higher-order concurrent constraint programming.
Encapsulated Search for Higher-order Concurrent Constraint Programming
TLDR
The paper focuses on a higher-order combinator providing for encapsulated search, which allows to program diierent search strategies, including depth-rst, indeterministic one solution, demand-driven multiple solution, all solutions, and best solution (branch and bound) search.
A functional theory of local names
TLDR
λv is an extension of the λ-calculus with a binding construct for local names that preserves all observational equivalences of λ and is useful as a basis for modeling wide-spectrum languages that build on a functional core.
Object-Oriented Concurrent Constraint Programming in Oz
TLDR
A novel feature of Oz is that it accommodates higher-order programming without sacrificing that denotation and equality of variables are captured by first-order logic.
A natural semantics for lazy evaluation
TLDR
Because a heap is explicitly modelled, the semantics provides a suitable framework for studies about space behaviour of terms under lazy evaluation, so is more suitable for a variety of proofs.
Observable Properties of Higher Order Functions that Dynamically Create Local Names, or What's new?
TLDR
A notion of ‘logical relation’ is introduced which incorporates a version of representation independence for local names and is shown to be complete (and decidable) for expressions of first order types, but incomplete at higher types.
Rewrite Systems
  • N. Dershowitz, J. Jouannaud
  • Computer Science
    Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics
  • 1990
On the Observable Properties of Higher Order Functions that Dynamically Create Local Names (Preliminary Report)
TLDR
The research reported in this paper is concerned with the problem of reasoning about properties of higher order functions involving state, and develops a general, categorical framework for computationally adequate models of the language based on Moggi’s monadic approach to denotational semantics.
M-Structures: Extending a Parallel, Non-strict, Functional Language with State
TLDR
A solution is to introduce assignments, as in ML and Scheme; however, for meaningful semantics, they resort to strict, sequential evaluation.
...
1
2
3
...