307 research outputs found
Prototyping Formal System Models with Active Objects
We propose active object languages as a development tool for formal system
models of distributed systems. Additionally to a formalization based on a term
rewriting system, we use established Software Engineering concepts, including
software product lines and object orientation that come with extensive tool
support. We illustrate our modeling approach by prototyping a weak memory
model. The resulting executable model is modular and has clear interfaces
between communicating participants through object-oriented modeling.
Relaxations of the basic memory model are expressed as self-contained variants
of a software product line. As a modeling language we use the formal active
object language ABS which comes with an extensive tool set. This permits rapid
formalization of core ideas, early validity checks in terms of formal invariant
proofs, and debugging support by executing test runs. Hence, our approach
supports the prototyping of formal system models with early feedback.Comment: In Proceedings ICE 2018, arXiv:1810.0205
October 4, 1962
https://scholarlycommons.obu.edu/arbaptnews/1243/thumbnail.jp
Series of Events on Tap to Celebrate Fitz\u27s Presidency
News release announces that the presidency of Brother Raymond L. Fitz, S.M., will be celebrated with several events
Context-aware Trace Contracts
The behavior of concurrent, asynchronous procedures depends in general on the
call context, because of the global protocol that governs scheduling. This
context cannot be specified with the state-based Hoare-style contracts common
in deductive verification. Recent work generalized state-based to trace
contracts, which permit to specify the internal behavior of a procedure, such
as calls or state changes, but not its call context. In this article we propose
a program logic of context-aware trace contracts for specifying global behavior
of asynchronous programs. We also provide a sound proof system that addresses
two challenges: To observe the program state not merely at the end points of a
procedure, we introduce the novel concept of an observation quantifier. And to
combat combinatorial explosion of possible call sequences of procedures, we
transfer Liskov's principle of behavioral subtyping to the analysis of
asynchronous procedures
Principles of Contract Languages:Dagstuhl Seminar 22451
This report documents the program and the outcomes of Dagstuhl Seminar 22451 "Principles of Contract Languages". At the seminar, participants discussed the fundamental aspects of software contracts. Topics included the format and expressiveness of contracts, their use cases in software development and analysis, and contract composition and decomposition
Abstract interpretation of symbolic execution with explicit state updates
Systems for deductive software verification model the semantics of their target programming language with full precision. On the other hand, abstraction based approaches work with approximations of the semantics in order to be fully automatic. In this paper we aim at providing a uniform framework for both fully precise and approximate reasoning about programs. We present a sound dynamic logic calculus that integrates abstraction in the sense of abstract interpretation theory. In the second part of the paper, we apply the approach to the analysis of secure information flow
The many-valued theorem prover 3TAP. 3rd. edition
This is the 3TAP handbook. 3TAP is a many-valued tableau-based
theorem prover developed at the University of Karlsruhe.
The handbook serves a triple purpose: first, it documents the
history and development of the prover 3TAP; second, it provides a
user\u27s manual, and third it is intended as a reference manual for
future developers, including porting hints.
This version of the handbook describes 3TAP Version 3.0 as of
September 30,1994
- …