258 research outputs found
Nominal Unification of Higher Order Expressions with Recursive Let
A sound and complete algorithm for nominal unification of higher-order
expressions with a recursive let is described, and shown to run in
non-deterministic polynomial time. We also explore specializations like nominal
letrec-matching for plain expressions and for DAGs and determine the complexity
of corresponding unification problems.Comment: Pre-proceedings paper presented at the 26th International Symposium
on Logic-Based Program Synthesis and Transformation (LOPSTR 2016), Edinburgh,
Scotland UK, 6-8 September 2016 (arXiv:1608.02534
Proof search in constructive logics
We present an overview of some sequent calculi organised not for
"theorem-proving" but for proof search, where the proofs themselves
(and the avoidance of known proofs on backtracking) are objects of
interest. The main calculus discussed is that of Herbelin [1994] for
intuitionistic logic, which extends methods used in hereditary
Harrop logic programming; we give a brief discussion of similar
calculi for other logics. We also point out to some related work on
permutations in intuitionistic Gentzen sequent calculi that
clarifies the relationship between such calculi and natural
deduction.Centro de Matemática da Universidade do Minho (CMAT).União Europeia (UE) - Programa ESPRIT - BRA 7232 Gentzen
Correspondences between Classical, Intuitionistic and Uniform Provability
Based on an analysis of the inference rules used, we provide a
characterization of the situations in which classical provability entails
intuitionistic provability. We then examine the relationship of these
derivability notions to uniform provability, a restriction of intuitionistic
provability that embodies a special form of goal-directedness. We determine,
first, the circumstances in which the former relations imply the latter. Using
this result, we identify the richest versions of the so-called abstract logic
programming languages in classical and intuitionistic logic. We then study the
reduction of classical and, derivatively, intuitionistic provability to uniform
provability via the addition to the assumption set of the negation of the
formula to be proved. Our focus here is on understanding the situations in
which this reduction is achieved. However, our discussions indicate the
structure of a proof procedure based on the reduction, a matter also considered
explicitly elsewhere.Comment: 31 page
Proceedings of the Workshop on Linear Logic and Logic Programming
Declarative programming languages often fail to effectively address many aspects of control and resource management. Linear logic provides a framework for increasing the strength of declarative programming languages to embrace these aspects. Linear logic has been used to provide new analyses of Prolog\u27s operational semantics, including left-to-right/depth-first search and negation-as-failure. It has also been used to design new logic programming languages for handling concurrency and for viewing program clauses as (possibly) limited resources. Such logic programming languages have proved useful in areas such as databases, object-oriented programming, theorem proving, and natural language parsing.
This workshop is intended to bring together researchers involved in all aspects of relating linear logic and logic programming. The proceedings includes two high-level overviews of linear logic, and six contributed papers.
Workshop organizers: Jean-Yves Girard (CNRS and University of Paris VII), Dale Miller (chair, University of Pennsylvania, Philadelphia), and Remo Pareschi, (ECRC, Munich)
A foundation for higher-order concurrent constraint programming
We present the gamma-calculus, a computational calculus for higher-order concurrent programming. The calculus can elegantly express higher-order functions (both eager and lazy) and concurrent objects with encapsulated state and multiple inheritance. The primitives of the gamma-calculus are logic variables, names, procedural abstraction, and cells. Cells provide a notion of state that is fully compatible with concurrency and constraints. Although it does not have a dedicated communication primitive, the gamma-calculus can elegantly express one-to-many and many-to-one communication. There is an interesting relationship between the gamma-calculus and the pi-calculus: The gamma-calculus is subsumed by a calculus obtained by extending the asynchronous and polyadic pi-calculus with logic variables. The gamma-calculus can be extended with primitives providing for constraint-based problem solving in the style of logic programming. A such extended gamma-calculus has the remarkable property that it combines first-order constraints with higher-order programming
A ρ-Calculus of Explicit Constraint Application
AbstractTheoretical presentations of the ρ-calculus often treat the matching constraint computations as an atomic operation although matching constraints are explicitly expressed. Actual implementations have to take a much more realistic view: computations needed in order to find the solutions of a matching equation can be really important in some matching theories and the substitution application usually involves a term traversal.Following the works on explicit substitutions in the λ-calculus, we propose, study and exemplify a ρ-calculus with explicit constraint handling, up to the level of substitution applications. The approach is general, allowing the extension to various matching theories. We show that the calculus is powerful enough to deal with errors. We establish the confluence of the calculus and the termination of the explicit constraint handling and application sub-calculus
Equational rules for rewriting logic
AbstractIn addition to equations and rules, we introduce equational rules that are oriented while having an equational interpretation. Correspondence between operational behavior and intended semantics is guaranteed by a property of coherence, which can be checked by examination of critical pairs and linearity conditions. We present applications of this theory to three examples where the rewrite relation is interpreted, respectively, as equality, transition and deduction
- …