30 research outputs found
LIPIcs, Volume 261, ICALP 2023, Complete Volume
LIPIcs, Volume 261, ICALP 2023, Complete Volum
Checking Refinement of Asynchronous Programs against Context-Free Specifications
In the language-theoretic approach to refinement verification, we check that
the language of traces of an implementation all belong to the language of a
specification. We consider the refinement verification problem for asynchronous
programs against specifications given by a Dyck language. We show that this
problem is EXPSPACE-complete -- the same complexity as that of language
emptiness and for refinement verification against a regular specification. Our
algorithm uses several technical ingredients. First, we show that checking if
the coverability language of a succinctly described vector addition system with
states (VASS) is contained in a Dyck language is EXPSPACE-complete. Second, in
the more technical part of the proof, we define an ordering on words and show a
downward closure construction that allows replacing the (context-free) language
of each task in an asynchronous program by a regular language. Unlike downward
closure operations usually considered in infinite-state verification, our
ordering is not a well-quasi-ordering, and we have to construct the regular
language ab initio. Once the tasks can be replaced, we show a reduction to an
appropriate VASS and use our first ingredient. In addition to the inherent
theoretical interest, refinement verification with Dyck specifications captures
common practical resource usage patterns based on reference counting, for which
few algorithmic techniques were known.Comment: Full version of paper accepted for ICALP 202
Foundations of Software Science and Computation Structures
This open access book constitutes the proceedings of the 25th International Conference on Foundations of Software Science and Computational Structures, FOSSACS 2022, which was held during April 4-6, 2022, in Munich, Germany, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022. The 23 regular papers presented in this volume were carefully reviewed and selected from 77 submissions. They deal with research on theories and methods to support the analysis, integration, synthesis, transformation, and verification of programs and software systems
Programming Languages and Systems
This open access book constitutes the proceedings of the 31st European Symposium on Programming, ESOP 2022, which was held during April 5-7, 2022, in Munich, Germany, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022. The 21 regular papers presented in this volume were carefully reviewed and selected from 64 submissions. They deal with fundamental issues in the specification, design, analysis, and implementation of programming languages and systems
Automated Deduction – CADE 28
This open access book constitutes the proceeding of the 28th International Conference on Automated Deduction, CADE 28, held virtually in July 2021. The 29 full papers and 7 system descriptions presented together with 2 invited papers were carefully reviewed and selected from 76 submissions. CADE is the major forum for the presentation of research in all aspects of automated deduction, including foundations, applications, implementations, and practical experience. The papers are organized in the following topics: Logical foundations; theory and principles; implementation and application; ATP and AI; and system descriptions
Formal Specification and Verification for Automated Production Systems
Complex industrial control software often drives safety- and mission-critical
systems, like automated production plants or control units embedded into devices in automotive systems. Such controllers have in common that they are reactive systems, i.e., that they periodically read sensor stimuli and cyclically execute the same program to produce actuator signals.
The correctness of software for automated production is rarely verified using
formal techniques. Although, due to the Industrial Revolution 4.0 (IR4.0), the
impact and importance of software have become an important role in industrial automation.
What is used instead in industrial practice today is testing and simulation,
where individual test cases are used to validate an automated production system.
Three reasons why formal methods are not popular are: (a) It is difficult to
adequately formulate the desired temporal properties. (b) There is a lack of
specification languages for reactive systems that are both sufficiently
expressive and comprehensible for practitioners. (c) Due to the lack of an
environment model the obtained results are imprecise. Nonetheless, formal
methods for automated production systems are well studied academically---mainly on the verification of safety properties via model checking.
In this doctoral thesis we present the concept of (1) generalized test tables
(GTTs), a new specification language for functional properties, and their
extension (2) relational test tables (RTTs) for relational properties. The
concept includes the syntactical notion, designed for the intuition of
engineers, and the semantics, which are based on game theory. We use RTTs for a novel confidential property on reactive systems, the provably forgetting of information. Moreover, for regression verification, an important relational
property, we are able to achieve performance improvements by (3) creating
a decomposing rule which splits large proofs into small sub-task. We implemented the verification procedures and evaluated them against realistic case studies, e.g., the Pick-and-Place-Unit from the Technical University of Munich.
The presented contribution follows the idea of lowering the obstacle of
verifying the dependability of reactive systems in general, and automated
production systems in particular for the engineer either by introducing a new
specification language (GTTs), by exploiting existing programs for the
specification (RTTs, regression verification), or by improving the verification
performance
Games Where You Can Play Optimally with Arena-Independent Finite Memory
For decades, two-player (antagonistic) games on graphs have been a framework
of choice for many important problems in theoretical computer science. A
notorious one is controller synthesis, which can be rephrased through the
game-theoretic metaphor as the quest for a winning strategy of the system in a
game against its antagonistic environment. Depending on the specification,
optimal strategies might be simple or quite complex, for example having to use
(possibly infinite) memory. Hence, research strives to understand which
settings allow for simple strategies.
In 2005, Gimbert and Zielonka provided a complete characterization of
preference relations (a formal framework to model specifications and game
objectives) that admit memoryless optimal strategies for both players. In the
last fifteen years however, practical applications have driven the community
toward games with complex or multiple objectives, where memory -- finite or
infinite -- is almost always required. Despite much effort, the exact frontiers
of the class of preference relations that admit finite-memory optimal
strategies still elude us.
In this work, we establish a complete characterization of preference
relations that admit optimal strategies using arena-independent finite memory,
generalizing the work of Gimbert and Zielonka to the finite-memory case. We
also prove an equivalent to their celebrated corollary of great practical
interest: if both players have optimal (arena-independent-)finite-memory
strategies in all one-player games, then it is also the case in all two-player
games. Finally, we pinpoint the boundaries of our results with regard to the
literature: our work completely covers the case of arena-independent memory
(e.g., multiple parity objectives, lower- and upper-bounded energy objectives),
and paves the way to the arena-dependent case (e.g., multiple lower-bounded
energy objectives).Comment: Updated title, full version of CONCUR 2020 conference pape