Cookies
O website necessita de alguns cookies e outros recursos semelhantes para funcionar. Caso o permita, o INESC TEC irá utilizar cookies para recolher dados sobre as suas visitas, contribuindo, assim, para estatísticas agregadas que permitem melhorar o nosso serviço. Ver mais
Aceitar Rejeitar
  • Menu
Publicações

Publicações por Jorge Sousa Pinto

2012

Verification conditions for single-assignment programs

Autores
Da Cruz, D; Frade, MJ; Pinto, JS;

Publicação
Proceedings of the ACM Symposium on Applied Computing

Abstract
A mechanism for generating verification conditions (VCs) for the iteration-free fragment of an imperative language is fundamental in any deductive program verification system. In this paper we revisit symbolic execution, weakest preconditions, and bounded model checking as VC-generation mechanisms, and propose a uniform presentation of the corresponding sets of VCs, in terms of (logical encodings of) paths in the control-flow graph of a single-assignment form of the program under analysis. This allows us to compare the mechanisms, in particular with respect to the size of the generated formulas. © 2012 ACM.

2010

Contract-based slicing helps on safety reuse

Autores
Areias, S; Da Cruz, D; Pinto, JS;

Publicação
IEEE International Conference on Program Comprehension

Abstract
In this poster we describe a work in progress aimed at using a variant of specification-based slicing to improve the reuse of annotated software components, developed under the so called design-by-contract approach. We have named this variant as contract-based because we use the annotations, more precisely the pre and post-conditions, to slice programs intra and inter-procedures. The idea, expressed in the poster, is to take the pre-condition of the reused annotated component as slicing criterion, and slice backward the program where the component is called. In that way, we can isolate the statements that have influence on the variables involved on the pre-condition and check if it is preserved by that invocation, or not. © 2010 IEEE.

2003

Weak reduction and garbage collection in interaction nets

Autores
Pinto, JS;

Publicação
Electronic Notes in Theoretical Computer Science

Abstract
This paper presents an implementation device for the weak reduction of interaction nets to interface normal form. The results produced by running several benchmarks are given, suggesting that weak reduction greatly improves the performance of the interaction combinators-based implementation of the ?-calculus. © 2003 Published by Elsevier Science B.V.

2008

A Tool for Programming with Interaction Nets

Autores
Almeida, JB; Pinto, JS; Vilaca, M;

Publicação
Electronic Notes in Theoretical Computer Science

Abstract
This paper introduces INblobs, a visual tool developed at Minho for integrated development with Interaction Nets. Most of the existing tools take as input interaction nets and interaction rules represented in a textual format. INblobs is first of all a visual editor that allows users to edit interaction systems (both interaction nets and interaction rules) graphically, and to convert them to textual notation. This can then be used as input to other tools that implement reduction of nets. INblobs also allows the user to reduce nets within the tool, and includes a mechanism that automatically selects the next active pair to be reduced, following one of the given reduction strategies. The paper also describes other features of the tool, such as the creation of rules from pre-defined templates.

2007

A Local Graph-rewriting System for Deciding Equality in Sum-product Theories

Autores
Almeida, JB; Pinto, JS; Vilaca, M;

Publicação
Electronic Notes in Theoretical Computer Science

Abstract
In this paper we give a graph-based decision procedure for a calculus with sum and product types. Although our motivation comes from the Bird-Meertens approach to reasoning algebraically about functional programs, the language used here can be seen as the internal language of a category with binary products and coproducts. As such, the decision procedure presented has independent interest. A standard approach based on term rewriting would work modulo a set of equations; the present work proposes a simpler approach, based on graph-rewriting. We show in turn how the system covers reflection equational laws, fusion laws, and cancellation laws.

2011

Verification conditions for source-level imperative programs

Autores
Frade, MJ; Pinto, JS;

Publicação
Computer Science Review

Abstract
This paper is a systematic study of verification conditions and their use in the context of program verification. We take Hoare logic as a starting point and study in detail how a verification conditions generator can be obtained from it. The notion of program annotation is essential in this process. Weakest preconditions and the use of updates are also studied as alternative approaches to verification conditions. Our study is carried on in the context of a While language. Important extensions to this language are considered toward the end of the paper. We also briefly survey modern program verification tools and their approaches to the generation of verification conditions. © 2011 Elsevier Inc.

  • 9
  • 12