the proceedings contain 22 papers. the topics discussed include: programming with Boolean satisfaction;automated verification of higher-order functional programs;dependently-typed programming in GHC;call-by-value solv...
ISBN:
(纸本)9783642298219
the proceedings contain 22 papers. the topics discussed include: programming with Boolean satisfaction;automated verification of higher-order functional programs;dependently-typed programming in GHC;call-by-value solvability, revisited;compiling a functional logic language: the basic scheme;classical call-by-need sequent calculi: the unity of semantic artifacts;normal form bisimulations for delimited-control operators;declarative debugging of wrong and missing answers for SQL views;improving the performance of FD constraint solving in a CFLP system;a general implementation framework for tabled CLP;correct looping arrows from cyclic terms: traced categorical interpretation in Haskell;mutual exclusion by interpolation;parallel computation skeletons with premature termination property;and calculational developments of new parallel algorithms for size-constrained maximum-sum segment problems.
We propose a typed lambda calculus based on Avron's hypersequent calculus for Godel-Dummett logic. this calculus turns out to model waitfree computation. Besides strong normalization and non-abortfullness, we give...
详细信息
ISBN:
(纸本)9783642298226
We propose a typed lambda calculus based on Avron's hypersequent calculus for Godel-Dummett logic. this calculus turns out to model waitfree computation. Besides strong normalization and non-abortfullness, we give soundness and completeness of the calculus against the typed version of waitfree protocols. the calculus is not only proof theoretically interesting, but also valuable as a basis for distributed programming languages.
the question of what constraints must hold for a predicate to behave as a ( partial) function, is key to understanding the behaviour of a logic program. It has been shown how this question can be answered by combining...
详细信息
ISBN:
(纸本)9783642298226
the question of what constraints must hold for a predicate to behave as a ( partial) function, is key to understanding the behaviour of a logic program. It has been shown how this question can be answered by combining backward analysis, a form of analysis that propagates determinacy requirements against the control flow, with a component for deriving so-called mutual exclusion conditions. the latter infers conditions sufficient to ensure that if one clause yields an answer then another cannot. this paper addresses the challenge of how to compute these conditions by showing that this problem can be reformulated as that of vertex enumeration. Whilst directly applicable in logicprogramming, the method might well also find application in reasoning about type classes.
Constraint logicprogramming (CLP) has been proposed as a declarative paradigm for merging constraint solving and logicprogramming. Recently, coinductive logicprogramming has been proposed as a powerful extension of...
详细信息
ISBN:
(纸本)9783642298226
Constraint logicprogramming (CLP) has been proposed as a declarative paradigm for merging constraint solving and logicprogramming. Recently, coinductive logicprogramming has been proposed as a powerful extension of logicprogramming for handling (rational) infinite objects and reasoning about their properties. Coinductive logicprogramming does not include constraints while CLP's declarative semantics is given in terms of a least fixed-point (i.e., it is inductive) and cannot directly support reasoning about (rational) infinite objects and their properties. In this paper we combine constraint logicprogramming and coinduction to obtain co-constraint logicprogramming (co-CLP for brevity). We present the declarative semantics of co-CLP in terms of a greatest fixed-point and its operational semantics based on the coinductive hypothesis rule. We prove the equivalence of these two semantics for programs with rational terms.
We present a Prolog implementation of real-time persistent queues and double-ended queues. Our implementation is inspired by Okasaki's lazy-functional approach, but relies only on standard Prolog, comprising of th...
详细信息
ISBN:
(纸本)9783642298226
We present a Prolog implementation of real-time persistent queues and double-ended queues. Our implementation is inspired by Okasaki's lazy-functional approach, but relies only on standard Prolog, comprising of the pure subset plus if-then-else constructs to efficiently implement guards and meta-calls for convenience. the resulting data structure is a nice demonstration of the fact that the use of logic variables to hold the outcome of an unfinished computation can sometimes give the same kind of elegant and compact solutions as lazy evaluation.
We present a new constraint solver over finite domains, freely available as library(clpfd)(1) in SWI-Prolog. Our solver has several unique features, which we describe in this paper: Reasoning over arbitrarily large in...
详细信息
ISBN:
(纸本)9783642298226
We present a new constraint solver over finite domains, freely available as library(clpfd)(1) in SWI-Prolog. Our solver has several unique features, which we describe in this paper: Reasoning over arbitrarily large integers, always terminating propagation, and a domain-specific language that concisely expresses the full semantics of constraint reification. the library is entirely written in Prolog and can be easily ported to other Prolog systems that support attributed variables. the constraint solver is fast enough for teaching and research purposes and is already being used in courses at several universities in France, Germany, Italy, Austria and other countries.
We present the design of a compiler for a functional logicprogramming language and discuss the compiler's implementation. the source program is abstracted by a constructor based graph rewriting system obtained fr...
详细信息
ISBN:
(纸本)9783642298226
We present the design of a compiler for a functional logicprogramming language and discuss the compiler's implementation. the source program is abstracted by a constructor based graph rewriting system obtained from a functional logic program after syntax desugaring, lambda lifting and similar transformations provided by a compiler's front-end. this system is non-deterministic and requires a specialized normalization strategy. the target program consists of 3 procedures that execute graph replacements originating from either rewrite or pull-tab steps. these procedures are deterministic and easy to encode in an ordinary programming language. We describe the generation of the 3 procedures, discuss the correctness of our approach, highlight some key elements of an implementation, and benchmark the performance of a proof-of-concept. Our compilation scheme is elegant and simple enough to be presented in one page.
this paper describes a framework to combine tabling evaluation and constraint logicprogramming (TCLP). While this combination has been studied previously from a theoretical point of view and some implementations exis...
详细信息
ISBN:
(纸本)9783642298226
this paper describes a framework to combine tabling evaluation and constraint logicprogramming (TCLP). While this combination has been studied previously from a theoretical point of view and some implementations exist, they either suffer from a lack of efficiency, flexibility, or generality, or have inherent limitations with respect to the programs they can execute to completion (either with success or failure). Our framework addresses these issues directly, including the ability to check for answer / call entailment, which allows it to terminate in more cases than other approaches. the proposed framework is experimentally compared with existing solutions in order to provide evidence of the mentioned advantages.
Constraint Functional logicprogramming (CFLP) integrates lazy narrowing with constraint solving. It provides a high modeling abstraction, but its solving performance can be penalized by lazy narrowing and solver inte...
详细信息
ISBN:
(纸本)9783642298226
Constraint Functional logicprogramming (CFLP) integrates lazy narrowing with constraint solving. It provides a high modeling abstraction, but its solving performance can be penalized by lazy narrowing and solver interface surcharges. As for real-world problems most of the solving time is carried out by solver computations, the system performance can be improved by interfacing state-of-the-art external solvers with proven performance. In this work we depart from the CFLP system TOY(FD), implemented in SICStus Prolog and supporting Finite Domain (FD) constraints by using its underlying Prolog FD solver. We present a scheme describing how to interface an external CP(FD) solver to TOY(FD), and easily adaptable to other Prolog CLP or CFLP systems. We prove the scheme to be generic enough by interfacing Gecode and ILOG solvers, and we analyze the new performance achieved.
this book constitutes the refereed proceedings of the 11thinternationalsymposium on Functional and logicprogramming, flops 2012, held in Kobe, Japan, in May 2012. the 19 research papers and 3 system demonstrations ...
详细信息
ISBN:
(数字)9783642298226
ISBN:
(纸本)9783642298219
this book constitutes the refereed proceedings of the 11thinternationalsymposium on Functional and logicprogramming, flops 2012, held in Kobe, Japan, in May 2012.
the 19 research papers and 3 system demonstrations presented in this volume were carefully reviewed and selected from 39 submissions. they deal with declarative programming, including functional programming and logicprogramming.
暂无评论