2015
Autores
Lourenço, CB; Lamraoui, SM; Nakajima, S; Pinto, JS;
Publicação
ECEASST
Abstract
Program verification tools use verification condition generators to produce logical formulas whose validity implies that the program is correct with respect to its specification. Different tools produce different conditions, and the underlying algorithms have not been properly exposed or explored so far. In this paper we consider a simple imperative programming language, extended with assume and assert statements, to present different ways of generating verification conditions. We study the approaches with experimental results originated by verification conditions generated from the intermediate representation of LLVM. © Proceedings of the 15th International Workshop on Automated Verification of Critical Systems (AVoCS 2015).
2013
Autores
Abal, I; Pinto, JS;
Publicação
ACM International Conference Proceeding Series
Abstract
We present work in progress on the development of EasyBV, a specialized theorem prover for fixed-size bit-vector arithmetic. © 2013 Authors.
2014
Autores
Pedro, AD; Pereira, D; Pinho, LM; Pinto, JS;
Publicação
NASA FORMAL METHODS, NFM 2014
Abstract
Runtime Monitoring of hard real-time embedded systems is a promising technique for ensuring that a running system respects timing constraints, possibly combined with faults originated by the software and/or hardware. This is particularly important when we have real-time embedded systems made of several components that must combine different levels of criticality, and different levels of correctness requirements. This paper introduces a compositional monitoring framework coupled with guarantees that include time isolation and the response time of a monitor for a predicted violation. The kind of monitors that we propose are automatically generated by synthesizing logic formulas of a timed temporal logic, and their correctness is ensured by construction.
2016
Autores
Busquim e Silva, RABE; Arai, NN; Burgareli, LA; Parente de Oliveira, JMP; Pinto, JS;
Publicação
IEEE TRANSACTIONS ON RELIABILITY
Abstract
With the increasing importance of software in the aerospace field, as evidenced by its growing size and complexity, a rigorous and reliable software verification and validation process must be applied to ensure conformance with the strict requirements of this software. Although important, traditional validation activities such as testing and simulation can only provide a partial verification of behavior in critical real-time software systems, and thus, formal verification is an alternative to complement these activities. Two useful formal software verification approaches are deductive verification and abstract interpretation, which analyze programs statically to identify defects. This paper explores abstract interpretation and deductive verification by employing Frama-C's value analysis and Jessie plug-ins to verify embedded aerospace control software. The results indicate that both approaches can be employed in a software verification process to make software more reliable.
2017
Autores
Matos Pedro, Ad; Pereira, D; Pinho, LM; Pinto, JS;
Publicação
SIGBED Review
Abstract
Several methods have been proposed for performing schedulability analysis for both uni-processor and multi-processor real-time systems. Very few of these works use the power of formal logic to write unambiguous specifications and to allow the usage of theorem provers for building the proofs of interest with greater correctness guarantees. In this paper we address this challenge by: 1) defining a formal language that allows to specify periodic resource models; 2) describe a transformational approach to reasoning about timing properties of resource models by transforming the latter specifications into a satisfiability modulo theories problem.
2015
Autores
Pedro, AdM; Pereira, D; Pinho, LM; Pinto, JS;
Publicação
SIGBED Review
Abstract
The access to the final selection minute is only available to applicants.
Please check the confirmation e-mail of your application to obtain the access code.