1,747 research outputs found
A Proof Strategy Language and Proof Script Generation for Isabelle/HOL
We introduce a language, PSL, designed to capture high level proof strategies
in Isabelle/HOL. Given a strategy and a proof obligation, PSL's runtime system
generates and combines various tactics to explore a large search space with low
memory usage. Upon success, PSL generates an efficient proof script, which
bypasses a large part of the proof search. We also present PSL's monadic
interpreter to show that the underlying idea of PSL is transferable to other
ITPs.Comment: This paper has been submitted to CADE2
Adjunctions for exceptions
An algebraic method is used to study the semantics of exceptions in computer
languages. The exceptions form a computational effect, in the sense that there
is an apparent mismatch between the syntax of exceptions and their intended
semantics. We solve this apparent contradiction by efining a logic for
exceptions with a proof system which is close to their syntax and where their
intended semantics can be seen as a model. This requires a robust framework for
logics and their morphisms, which is provided by categorical tools relying on
adjunctions, fractions and limit sketches.Comment: In this Version 2, minor improvements are made to Version
Determiner spreading as DP-predication
Determiner Spreading (DS) occurs in adjectivally modified nominal phrases comprising more than one definite article, a phenomenon that has received considerable attention and has been extensively described in Greek. This paper discusses the syntactic properties of DS in detail and argues that DS structures are both arguments and predication configurations involving two DPs. This account successfully captures the word-order facts and the distinctive interpretation of DS, while also laying the groundwork towards unifying it with other structures linking two DPs in a predicative relation
Notions of Monad Strength
Over the past two decades the notion of a strong monad has found wide
applicability in computing. Arising out of a need to interpret products in
computational and semantic settings, different approaches to this concept have
arisen. In this paper we introduce and investigate the connections between
these approaches and also relate the results to monad composition. We also
introduce new methods for checking and using the required laws associated with
such compositions, as well as provide examples illustrating problems and issues
that arise.Comment: In Proceedings Festschrift for Dave Schmidt, arXiv:1309.455
Playing Games in the Baire Space
We solve a generalized version of Church's Synthesis Problem where a play is
given by a sequence of natural numbers rather than a sequence of bits; so a
play is an element of the Baire space rather than of the Cantor space. Two
players Input and Output choose natural numbers in alternation to generate a
play. We present a natural model of automata ("N-memory automata") equipped
with the parity acceptance condition, and we introduce also the corresponding
model of "N-memory transducers". We show that solvability of games specified by
N-memory automata (i.e., existence of a winning strategy for player Output) is
decidable, and that in this case an N-memory transducer can be constructed that
implements a winning strategy for player Output.Comment: In Proceedings Cassting'16/SynCoP'16, arXiv:1608.0017
Syntax for free: representing syntax with binding using parametricity
We show that, in a parametric model of polymorphism, the type ∀ α. ((α → α) → α) → (α → α → α) → α is isomorphic to closed de Bruijn terms. That is, the type of closed higher-order abstract syntax terms is isomorphic to a concrete representation. To demonstrate the proof we have constructed a model of parametric polymorphism inside the Coq proof assistant. The proof of the theorem requires parametricity over Kripke relations. We also investigate some variants of this representation
A Categorical Framework for Program Semantics and Semantic Abstraction
Categorical semantics of type theories are often characterized as
structure-preserving functors. This is because in category theory both the
syntax and the domain of interpretation are uniformly treated as structured
categories, so that we can express interpretations as structure-preserving
functors between them. This mathematical characterization of semantics makes it
convenient to manipulate and to reason about relationships between
interpretations. Motivated by this success of functorial semantics, we address
the question of finding a functorial analogue in abstract interpretation, a
general framework for comparing semantics, so that we can bring similar
benefits of functorial semantics to semantic abstractions used in abstract
interpretation. Major differences concern the notion of interpretation that is
being considered. Indeed, conventional semantics are value-based whereas
abstract interpretation typically deals with more complex properties. In this
paper, we propose a functorial approach to abstract interpretation and study
associated fundamental concepts therein. In our approach, interpretations are
expressed as oplax functors in the category of posets, and abstraction
relations between interpretations are expressed as lax natural transformations
representing concretizations. We present examples of these formal concepts from
monadic semantics of programming languages and discuss soundness.Comment: MFPS 202
- …