In this paper we describe a sound and complete concurrent operational semantics for constraint functional logic programming languages which allows to model declarative applications in which the interaction between demand-driven narrowing and constraint solving helps to prune the search space, leading to shorter goal derivations. We encode concurrency into… (More)
In this paper, we propose a new methodology based on a logic teaching tool on semantic tableaux that has been developed to help students to use logic as a formal proof technique in advanced topics of Computer Science, such as the formal verification of algorithms and the algorithmic debugging of imperative programs.
Modularity is a key issue in the construction of large multi-paradigm declarative programs involving complex features like higher-order, polymorphism or constraints. The modular framework defined in this paper for higher-order declarative constraint programming builds complex software systems by combining and composing existing components or modules from a… (More)