7,403 research outputs found
Matching Logic
This paper presents matching logic, a first-order logic (FOL) variant for
specifying and reasoning about structure by means of patterns and pattern
matching. Its sentences, the patterns, are constructed using variables,
symbols, connectives and quantifiers, but no difference is made between
function and predicate symbols. In models, a pattern evaluates into a power-set
domain (the set of values that match it), in contrast to FOL where functions
and predicates map into a regular domain. Matching logic uniformly generalizes
several logical frameworks important for program analysis, such as:
propositional logic, algebraic specification, FOL with equality, modal logic,
and separation logic. Patterns can specify separation requirements at any level
in any program configuration, not only in the heaps or stores, without any
special logical constructs for that: the very nature of pattern matching is
that if two structures are matched as part of a pattern, then they can only be
spatially separated. Like FOL, matching logic can also be translated into pure
predicate logic with equality, at the same time admitting its own sound and
complete proof system. A practical aspect of matching logic is that FOL
reasoning with equality remains sound, so off-the-shelf provers and SMT solvers
can be used for matching logic reasoning. Matching logic is particularly
well-suited for reasoning about programs in programming languages that have an
operational semantics, but it is not limited to this
Proofs for free - parametricity for dependent types
Reynolds' abstraction theorem shows how a typing judgement in System F can be translated into a relational statement (in second order predicate logic) about inhabitants of the type. We obtain a similar result for pure type systems: for any PTS used as a programming language, there is a PTS that can be used as a logic for parametricity. Types in the source PTS are translated to relations (expressed as types) in the target. Similarly, values of a given type are translated to proofs that the values satisfy the relational interpretation. We extend the result to inductive families. We also show that the assumption that every term satisfies the parametricity condition generated by its type is consistent with the generated logic
Tuplix Calculus
We introduce a calculus for tuplices, which are expressions that generalize
matrices and vectors. Tuplices have an underlying data type for quantities that
are taken from a zero-totalized field. We start with the core tuplix calculus
CTC for entries and tests, which are combined using conjunctive composition. We
define a standard model and prove that CTC is relatively complete with respect
to it. The core calculus is extended with operators for choice, information
hiding, scalar multiplication, clearing and encapsulation. We provide two
examples of applications; one on incremental financial budgeting, and one on
modular financial budget design.Comment: 22 page
Optimal Tableaux Method for Constructive Satisfiability Testing and Model Synthesis in the Alternating-time Temporal Logic ATL+
We develop a sound, complete and practically implementable tableaux-based
decision method for constructive satisfiability testing and model synthesis in
the fragment ATL+ of the full Alternating time temporal logic ATL*. The method
extends in an essential way a previously developed tableaux-based decision
method for ATL and works in 2EXPTIME, which is the optimal worst case
complexity of the satisfiability problem for ATL+ . We also discuss how
suitable parametrizations and syntactic restrictions on the class of input ATL+
formulae can reduce the complexity of the satisfiability problem.Comment: 45 page
Using Kinds to Represent Heterogeneous Collections in a Static Type System (Extended Abstract)
We consider the problem of representing heterogeneous collections of objects in a typed polymorphic programming language in such a way that common properties of members of a collection, such as having commonly named field with a common type can be expressed in the type system. The use of such collections is widespread in object-oriented and database programming and has so far been achieved in statically typed systems only through the use of a single dynamic type, which effectively hides all the structure of a value. In this paper we exploit a system of types and kinds (sets of types) to represent dynamic values with some known properties. The type system is shown to be sound and to have a complete type inference algorithm
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
On Graphical Calculi for Modal Logics
We present a graphical approach to classical and intuitionistic modal logics, which provides uniform formalisms for expressing, analysing and comparing their semantics. This approach uses the flexibility of graphical calculi to express directly and intuitively the semantics for modal logics. We illustrate the benefits of these ideas by applying them to some familiar cases of classical and intuitionistic multi-modal logics.Cálculos Gráficos para lógicas modais
Apresentamos uma abordagem gráfica para as lĂłgicas modais clássica e intuicionista, capaz de fornecer formalismos uniformes para expressar, analisar e comparar suas respectivas semânticas. Tal abordagem utiliza a flexibilidade dos cálculos gráficos para expressar, direta e intuitivamente, a semântica das lĂłgicas modais. Ilustramos os benefĂcios dessas ideias aplicando-as a alguns casos conhecidos de lĂłgicas multimodais clássica e intuicionista.---Artigo em inglĂŞs
- …