40 research outputs found
Recommended from our members
Mathematical Logic: Proof Theory, Constructive Mathematics
The workshop âMathematical Logic: Proof Theory, Constructive Mathematicsâ was centered around proof-theoretic aspects of core mathematics and theoretical computer science as well as homotopy type theory and logical aspects of computational complexity
Encoding logical theories of programs
Nowadays, in many critical situations (such as on-board software), it is manda-tory to certify programs and systems, that is, to prove formally that they meet their specifications. To this end, many logics and formal systems have been proposed for rea-soning rigorously on properties of programs and systems. Their usage on non-trivial cases, however, is often cumbersome and error-prone; hence, a computerized proof assistant is required. This thesis is a contribution to the field of computer-aided formal reasoning. In recent years, Logical Frameworks (LF's) have been proposed as general metalan-guages for the description (encoding) of formal systems. LF's streamline the implementa-tion of proof systems on a machine; moreover, they allow for conceptual clarification of the object logics. The encoding methodology of LF's (based on the judgement as types, proofs as \u3bb-terms paradigm) has been successfully applied to many logics; however, the encoding of the many peculiarities presented by formal systems for program logics is problematic. In this thesis we propose a general methodology for adequately encoding formal systems for reasoning on programs. We consider Structured and Natural Operational Semantics, Modal Logics, Dynamic Logics, and the \ub5-calculus. Each of these systems presents distinc-tive problematic features; in each case, we propose, discuss and prove correct, alternative solutions. In many cases, we introduce new presentations of these systems, in Natural Deduction style, which are suggested by the metalogical analysis induced by the method-ology. At the metalogical level, we generalize and combine the concept of consequence relation by Avron and Aczel, in order to handle schematic and multiple consequences. We focus on a particular Logical Framework, namely the Calculus of Inductive Con-structions, originated by Coquand and Huet, and its implementation, Coq. Our inves-tigation shows that this framework is particularly flexible and suited for reasoning on properties of programs and systems. Our work could serve as a guide and reference to future users of Logical Frameworks
Programming Languages and Systems
This open access book constitutes the proceedings of the 29th European Symposium on Programming, ESOP 2020, which was planned to take place in Dublin, Ireland, in April 2020, as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2020. The actual ETAPS 2020 meeting was postponed due to the Corona pandemic. The papers deal with fundamental issues in the specification, design, analysis, and implementation of programming languages and systems
Programming Languages and Systems
This open access book constitutes the proceedings of the 28th European Symposium on Programming, ESOP 2019, which took place in Prague, Czech Republic, in April 2019, held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2019
Foundations of Software Science and Computation Structures
This open access book constitutes the proceedings of the 22nd International Conference on Foundations of Software Science and Computational Structures, FOSSACS 2019, which took place in Prague, Czech Republic, in April 2019, held as part of the European Joint Conference on Theory and Practice of Software, ETAPS 2019. The 29 papers presented in this volume were carefully reviewed and selected from 85 submissions. They deal with foundational research with a clear significance for software science
Deductive Verification of Concurrent Programs and its Application to Secure Information Flow for Java
Formal verification of concurrent programs still poses a major challenge in computer science. Our approach is an adaptation of the modular rely/guarantee methodology in dynamic logic. Besides functional properties, we investigate language-based security. Our verification approach extends naturally to multi-threaded Java and we present an implementation in the KeY verification system. We propose natural extensions to JML regarding both confidentiality properties and multi-threaded programs
Recommended from our members
Formalizing graphical notations
The thesis describes research into graphical notations for software engineering, with a principal interest in ways of formalizing them. The research seeks to provide a theoretical basis that will help in designing both notations and the software tools that process them.
The work starts from a survey of literature on notation, followed by a review of techniques for formal description and for computational handling of notations. The survey concentrates on collecting views of the benefits and the problems attending notation use in software development; the review covers picture description languages, grammars and tools such as generic editors and visual programming environments. The main problem of notation is found to be a lack of any coherent, rigorous description methods. The current approaches to this problem are analysed as lacking in consensus on syntax specification and also lacking a clear focus on a defined concept of notated expression.
To address these deficiencies, the thesis embarks upon an exploration of serniotic, linguistic and logical theory; this culminates in a proposed formalization of serniosis in notations, using categorial model theory as a mathematical foundation. An argument about the structure of sign systems leads to an analysis of notation into a layered system of tractable theories, spanning the gap between expressive pictorial medium and subject domain. This notion of 'tectonic' theory aims to treat both diagrams and formulae together.
The research gives details of how syntactic structure can be sketched in a mathematical sense, with examples applying to software development diagrams, offering a new solution to the problem of notation specification. Based on these methods, the thesis discusses directions for resolving the harder problems of supporting notation design, processing and computer-aided generic editing. A number of future research areas are thereby opened up. For practical trial of the ideas, the work proceeds to the development and partial implementation of a system to aid the design of notations and editors. Finally the thesis is evaluated as a contribution to theory in an area which has not attracted a standard approach
Generalized labelled Markov processes, coalgebraically
Coalgebras of measurable spaces are of interest in probability theory as a formalization of Labelled Markov Processes (LMPs). We discuss some general facts related to the notions of bisimulation and cocongruence on these systems, providing a faithful characterization of bisimulation on LMPs on generic measurable
spaces. This has been used to prove that bisimilarity on single LMPs is an equivalence, without assuming the state space to be analytic. As the second main contribution, we introduce the first specification rule format to define well-behaved composition operators for LMPs. This allows one to define process description languages on LMPs which are always guaranteed to have a fully-abstract semantics