5,205 research outputs found
Action semantics in retrospect
This paper is a themed account of the action semantics project, which Peter Mosses has led since the 1980s. It explains his motivations for developing action semantics, the inspirations behind its design, and the foundations of action semantics based on unified algebras. It goes on to outline some applications of action semantics to describe real programming languages, and some efforts to implement programming languages using action semantics directed compiler generation. It concludes by outlining more recent developments and reflecting on the success of the action semantics project
FunTAL: Reasonably Mixing a Functional Language with Assembly
We present FunTAL, the first multi-language system to formalize safe
interoperability between a high-level functional language and low-level
assembly code while supporting compositional reasoning about the mix. A central
challenge in developing such a multi-language is bridging the gap between
assembly, which is staged into jumps to continuations, and high-level code,
where subterms return a result. We present a compositional stack-based typed
assembly language that supports components, comprised of one or more basic
blocks, that may be embedded in high-level contexts. We also present a logical
relation for FunTAL that supports reasoning about equivalence of high-level
components and their assembly replacements, mixed-language programs with
callbacks between languages, and assembly components comprised of different
numbers of basic blocks.Comment: 15 pages; implementation at https://dbp.io/artifacts/funtal/;
published in PLDI '17, Proceedings of the 38th ACM SIGPLAN Conference on
Programming Language Design and Implementation, June 18 - 23, 2017,
Barcelona, Spai
Deverbal semantics and the Montagovian generative lexicon
We propose a lexical account of action nominals, in particular of deverbal
nominalisations, whose meaning is related to the event expressed by their base
verb. The literature about nominalisations often assumes that the semantics of
the base verb completely defines the structure of action nominals. We argue
that the information in the base verb is not sufficient to completely determine
the semantics of action nominals. We exhibit some data from different
languages, especially from Romance language, which show that nominalisations
focus on some aspects of the verb semantics. The selected aspects, however,
seem to be idiosyncratic and do not automatically result from the internal
structure of the verb nor from its interaction with the morphological suffix.
We therefore propose a partially lexicalist approach view of deverbal nouns. It
is made precise and computable by using the Montagovian Generative Lexicon, a
type theoretical framework introduced by Bassac, Mery and Retor\'e in this
journal in 2010. This extension of Montague semantics with a richer type system
easily incorporates lexical phenomena like the semantics of action nominals in
particular deverbals, including their polysemy and (in)felicitous
copredications.Comment: A revised version will appear in the Journal of Logic, Language and
Informatio
Variable types for meaning assembly: a logical syntax for generic noun phrases introduced by most
This paper proposes a way to compute the meanings associated with sentences
with generic noun phrases corresponding to the generalized quantifier most. We
call these generics specimens and they resemble stereotypes or prototypes in
lexical semantics. The meanings are viewed as logical formulae that can
thereafter be interpreted in your favourite models. To do so, we depart
significantly from the dominant Fregean view with a single untyped universe.
Indeed, our proposal adopts type theory with some hints from Hilbert
\epsilon-calculus (Hilbert, 1922; Avigad and Zach, 2008) and from medieval
philosophy, see e.g. de Libera (1993, 1996). Our type theoretic analysis bears
some resemblance with ongoing work in lexical semantics (Asher 2011; Bassac et
al. 2010; Moot, Pr\'evot and Retor\'e 2011). Our model also applies to
classical examples involving a class, or a generic element of this class, which
is not uttered but provided by the context. An outcome of this study is that,
in the minimalism-contextualism debate, see Conrad (2011), if one adopts a type
theoretical view, terms encode the purely semantic meaning component while
their typing is pragmatically determined
Isabelle/PIDE as Platform for Educational Tools
The Isabelle/PIDE platform addresses the question whether proof assistants of
the LCF family are suitable as technological basis for educational tools. The
traditionally strong logical foundations of systems like HOL, Coq, or Isabelle
have so far been counter-balanced by somewhat inaccessible interaction via the
TTY (or minor variations like the well-known Proof General / Emacs interface).
Thus the fundamental question of math education tools with fully-formal
background theories has often been answered negatively due to accidental
weaknesses of existing proof engines.
The idea of "PIDE" (which means "Prover IDE") is to integrate existing
provers like Isabelle into a larger environment, that facilitates access by
end-users and other tools. We use Scala to expose the proof engine in ML to the
JVM world, where many user-interfaces, editor frameworks, and educational tools
already exist. This shall ultimately lead to combined mathematical assistants,
where the logical engine is in the background, without obstructing the view on
applications of formal methods, formalized mathematics, and math education in
particular.Comment: In Proceedings THedu'11, arXiv:1202.453
Functional Big-step Semantics
When doing an interactive proof about a piece of software, it is important that the underlying programming language’s semantics does not make the proof unnecessarily difficult or unwieldy. Both smallstep and big-step semantics are commonly used, and the latter is typically given by an inductively defined relation. In this paper, we consider an alternative: using a recursive function akin to an interpreter for the language. The advantages include a better induction theorem, less duplication, accessibility to ordinary functional programmers, and the ease of doing symbolic simulation in proofs via rewriting. We believe that this style of semantics is well suited for compiler verification, including proofs of divergence preservation. We do not claim the invention of this style of semantics: our contribution here is to clarify its value, and to explain how it supports several language features that might appear to require a relational or small-step approach. We illustrate the technique on a simple imperative language with C-like for-loops and a break statement, and compare it to a variety of other approaches. We also provide ML and lambda-calculus based examples to illustrate its generality
Towards Consistency Management for a Business-Driven Development of SOA
The usage of the Service Oriented Architecture
(SOA) along with the Business Process Management has emerged
as a valuable solution for the complex (business process driven)
system engineering. With a Model Driven Engineering where the
business process models drive the supporting service component
architectures, less effort is gone into the Business/IT alignment
during the initial development activities, and the IT developers
can rapidly proceed with the SOA implementation. However, the
difference between the design principles of the emerging domainspecific
languages imposes serious challenges in the following
re-design phases. Moreover, enabling evolutions on the business
process models while keeping them synchronized with the underlying
software architecture models is of high relevance to the key
elements of any Business Driven Development (BDD). Given a
business process update, this paper introduces an incremental
model transformation approach that propagates this update
to the related service component configurations. It, therefore,
supports the change propagation among heterogenous domainspecific
languages, e.g., the BPMN and the SCA. As a major
contribution, our approach makes model transformation more
tractable to reconfigure system architecture without disrupting its
structural consistency. We propose a synchronizer that provides
the BPMN-to-SCA model synchronization with the help of the
conditional graph rewriting
- …