VLDB 2026 Research / reviewers in the wild / expert
Roberto Bagnara
dblp:b/RBagnara
· DBLP profile ↗
39ranked-venue papers
31as first author
2since 2021 · last 2024
0000-0002-6163-6278ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 29 · 21 first-author · 2 since 2021Theory of computation · 13 · 12 first-authorArtificial intelligence and machine learning · 2 · 2 first-authorGraphics, computer vision, multimedia, augmented reality and games · 1 · 1 first-author
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2024 | The ACPATH Structural Complexity MetricabstractNPATH is a metric introduced by Brian A. Nejmeh (Communications of the ACM, 31(2):188-200, 1988) that is aimed at overcoming some important limitations of McCabe’s cyclomatic complexity metric. Despite the fact that the declared NPATH objective is to count the number of acyclic execution paths through a function, the definition given for the C language in Nejmeh’s paper fails to do so even for very simple programs. We show that counting the number of acyclic paths in CFG is unfeasible in general. Then we define a new metric for C -like languages, called $A C P A T H$, that allows to quickly compute a very good estimation of the number of acyclic execution paths through the given function. We show that, if the function body does not contain backward gotos and does not contain jumps into a loop from outside the loop (which is the case for all MISRA-compliant programs), then such estimation is actually exact. Roberto Bagnara, Abramo Bagnara, Alessandro Benedetti, Patricia M. Hill |
QRS | 1 |
| 2021 | A Practical Approach to Verification of Floating-Point C/C++ Programs with math.h/cmath FunctionsabstractVerification of C/C++ programs has seen considerable progress in several areas, but not for programs that use these languages’ mathematical libraries. The reason is that all libraries in widespread use come with no guarantees about the computed results. This would seem to prevent any attempt at formal verification of programs that use them: without a specification for the functions, no conclusion can be drawn statically about the behavior of the program. We propose an alternative to surrender. We introduce a pragmatic approach that leverages the fact that most math.h/cmath functions are almost piecewise monotonic: as we discovered through exhaustive testing, they may have glitches , often of very small size and in small numbers. We develop interval refinement techniques for such functions based on a modified dichotomic search, which enable verification via symbolic execution based model checking, abstract interpretation, and test data generation. To the best of our knowledge, our refinement algorithms are the first in the literature to be able to handle non-correctly rounded function implementations, enabling verification in the presence of the most common implementations. We experimentally evaluate our approach on real-world code, showing its ability to detect or rule out anomalous behaviors. Roberto Bagnara, Michele Chiari, Roberta Gori, Abramo Bagnara |
ACM Trans. Softw. Eng. Methodol. | 1 |
| 2018 | The MISRA C Coding Standard and its Role in the Development and Analysis of Safety- and Security-Critical Embedded Software
Roberto Bagnara, Abramo Bagnara, Patricia M. Hill |
SAS | 1 |
| 2016 | Exploiting Binary Floating-Point Representations for Constraint PropagationabstractFloating-point computations are quickly finding their way in the design of safety- and mission-critical systems, despite the fact that designing floating-point algorithms is significantly more difficult than designing integer algorithms. For this reason, verification and validation of floating-point computations are hot research topics. An important verification technique, especially in some industrial sectors, is testing. However, generating test data for floating-point intensive programs proved to be a challenging problem. Existing approaches usually resort to random or search-based test data generation, but without symbolic reasoning it is almost impossible to generate test inputs that execute complex paths controlled by floating-point computations. Moreover, because constraint solvers over the reals or the rationals do not natively support the handling of rounding errors, the need arises for efficient constraint solvers over floating-point domains. In this paper, we present and fully justify improved algorithms for the propagation of arithmetic IEEE 754 binary floating-point constraints. The key point of these algorithms is a generalization of an idea by B. Marre and C. Michel that exploits a property of the representation of floating-point numbers. Roberto Bagnara, Matthieu Carlier, Roberta Gori, Arnaud Gotlieb |
INFORMS J. Comput. | 1 |
| 2013 | Symbolic Path-Oriented Test Data Generation for Floating-Point ProgramsabstractVerifying critical numerical software involves the generation of test data for floating-point intensive programs. As the symbolic execution of floating-point computations presents significant difficulties, existing approaches usually resort to random or search-based test data generation. However, without symbolic reasoning, it is almost impossible to generate test inputs that execute many paths with floating-point computations. Moreover, constraint solvers over the reals or the rationals do not handle the rounding errors. In this paper, we present a new version of FPSE, a symbolic evaluator for C program paths, that specifically addresses this problem. The tool solves path conditions containing floating-point computations by using correct and precise projection functions. This version of the tool exploits an essential filtering property based on the representation of floating-point numbers that makes it suitable to generate path-oriented test inputs for complex paths characterized by floating-point intensive computations. The paper reviews the key implementation choices in FPSE and the labeling search heuristics we selected to maximize the benefits of enhanced filtering. Our experimental results show that FPSE can generate correct test inputs for selected paths containing several hundreds of iterations and thousands of executable floating-point statements on a standard machine: this is currently outside the scope of any other symbolic-execution test data generator tool. Roberto Bagnara, Matthieu Carlier, Roberta Gori, Arnaud Gotlieb |
ICST | 1 |
| 2013 | Eventual linear ranking functionsabstractProgram termination is a hot research topic in program analysis. The last few years have witnessed the development of termination analyzers for programming languages such as C and Java with remarkable precision and performance. These systems are largely based on techniques and tools coming from the field of declarative constraint programming. In this paper, we first recall an algorithm based on Farkas' Lemma for discovering linear ranking functions proving termination of a certain class of loops. Then we propose an extension of this method for showing the existence of eventual linear ranking functions, i.e., linear functions that become ranking functions after a finite unrolling of the loop. We show correctness and completeness of this algorithm. Roberto Bagnara, Frédéric Mesnard |
PPDP | 1 |
| 2012 | A new look at the automatic synthesis of linear ranking functions
Roberto Bagnara, Frédéric Mesnard, Andrea Pescetti, Enea Zaffanella |
Inf. Comput. | 1 |
| 2012 | Coding guidelines for PrologabstractAbstract Coding standards and good practices are fundamental to a disciplined approach to software projects irrespective of programing languages being employed. Prolog programing can benefit from such an approach, perhaps more than programing in other languages. Despite this, no widely accepted standards and practices seem to have emerged till now. The present paper is a first step toward filling this void: It provides immediate guidelines for code layout, naming conventions, documentation, proper use of Prolog features, program development, debugging, and testing. Presented with each guideline is its rationale and, where sensible options exist, illustrations of the relative pros and cons for each alternative. A coding standard should always be selected on a per-project basis, based on a host of issues pertinent to any given programing project; for this reason the paper goes beyond the mere provision of normative guidelines by discussing key factors and important criteria that should be taken into account when deciding on a full-fledged coding standard for the project. Michael A. Covington, Roberto Bagnara, Richard A. O'Keefe, Jan Wielemaker, Simon Price |
Theory Pract. Log. Program. | 2 |
| 2010 | Exact join detection for convex polyhedra and other numerical abstractions
Roberto Bagnara, Patricia M. Hill, Enea Zaffanella |
Comput. Geom. | 1 |
| 2009 | Weakly-relational shapes for numeric abstractions: improved algorithms and proofs of correctness
Roberto Bagnara, Patricia M. Hill, Enea Zaffanella |
Formal Methods Syst. Des. | 1 |
| 2009 | Applications of polyhedral computations to the analysis and verification of hardware and software systems
Roberto Bagnara, Patricia M. Hill, Enea Zaffanella |
Theor. Comput. Sci. | 1 |
| 2008 | An Improved Tight Closure Algorithm for Integer Octagonal Constraints
Roberto Bagnara, Patricia M. Hill, Enea Zaffanella |
VMCAI | 1 |
| 2008 | The Parma Polyhedra Library: Toward a complete set of numerical abstractions for the analysis and verification of hardware and software systems
Roberto Bagnara, Patricia M. Hill, Enea Zaffanella |
Sci. Comput. Program. | 1 |
| 2007 | Widening operators for powerset domains
Roberto Bagnara, Patricia M. Hill, Enea Zaffanella |
Int. J. Softw. Tools Technol. Transf. | 1 |
| 2006 | Grids: A Domain for Analyzing the Distribution of Numerical Values
Roberto Bagnara, Katy Louise Dobson, Patricia M. Hill, Matthew Mundell, Enea Zaffanella |
LOPSTR | 1 |
| 2006 | Widening operators for powerset domains
Roberto Bagnara, Patricia M. Hill, Enea Zaffanella |
Int. J. Softw. Tools Technol. Transf. | 1 |
| 2005 | Widening Operators for Weakly-Relational Numeric Abstractions
Roberto Bagnara, Patricia M. Hill, Elena Mazzi, Enea Zaffanella |
SAS | 1 |
| 2005 | Generation of Basic Semi-algebraic Invariants Using Convex Polyhedra
Roberto Bagnara, Enric Rodríguez-Carbonell, Enea Zaffanella |
SAS | 1 |
| 2005 | Not necessarily closed convex polyhedra and the double description methodabstractAbstract Since the seminal work of Cousot and Halbwachs, the domain of convex polyhedra has been employed in several systems for the analysis and verification of hardware and software components. Although most implementations of the polyhedral operations assume that the polyhedra are topologically closed (i.e., all the constraints defining them are non-strict), several analyzers and verifiers need to compute on a domain of convex polyhedra that are not necessarily closed (NNC). The usual approach to implementing NNC polyhedra is to embed them into closed polyhedra in a higher dimensional vector space and reuse the tools and techniques already available for closed polyhedra. In this work we highlight and discuss the issues underlying such an embedding for those implementations that are based on the double description method, where a polyhedron may be described by a system of linear constraints or by a system of generating rays and points. Two major achievements are the definition of a theoretically clean, high-level user interface and the specification of an efficient procedure for removing redundancies from the descriptions of NNC polyhedra. Roberto Bagnara, Patricia M. Hill, Enea Zaffanella |
Formal Aspects Comput. | 1 |
| 2005 | Precise widening operators for convex polyhedra
Roberto Bagnara, Patricia M. Hill, Elisa Ricci 0002, Enea Zaffanella |
Sci. Comput. Program. | 1 |
| 2005 | Enhanced sharing analysis techniques: a comprehensive evaluationabstract$\textup{\textsf{Sharing}}$ , an abstract domain developed by D. Jacobs and A. Langen for the analysis of logic programs, derives useful aliasing information. It is well-known that a commonly used core of techniques, such as the integration of $\textup{\textsf{Sharing}}$ with freeness and linearity information, can significantly improve the precision of the analysis. However, a number of other proposals for refined domain combinations have been circulating for years. One feature that is common to these proposals is that they do not seem to have undergone a thorough experimental evaluation even with respect to the expected precision gains. In this paper we experimentally evaluate: helping $\textup{\textsf{Sharing}}$ with the definitely ground variables found using $\textit{Pos}$ , the domain of positive Boolean formulas; the incorporation of explicit structural information; a full implementation of the reduced product of $\textup{\textsf{Sharing}}$ and $\textit{Pos}$ ; the issue of reordering the bindings in the computation of the abstract $\mgu$ ; an original proposal for the addition of a new mode recording the set of variables that are deemed to be ground or free; a refined way of using linearity to improve the analysis; the recovery of hidden information in the combination of $\textup{\textsf{Sharing}}$ with freeness information. Finally, we discuss the issue of whether tracking compoundness allows the computation of more sharing information. Roberto Bagnara, Enea Zaffanella, Patricia M. Hill |
Theory Pract. Log. Program. | 1 |
| 2005 | cTI: A constraint-based termination inference tool for ISO-PrologabstractWe present cTI, the first system for universal left-termination inference of logic programs. Termination inference generalizes termination analysis and checking. Traditionally, a termination analyzer tries to prove that a given class of queries terminates. This class must be provided to the system, for instance by means of user annotations. Moreover, the analysis must be redone every time the class of queries of interest is updated. Termination inference, in contrast, requires neither user annotations nor recomputation. In this approach, terminating classes for all predicates are inferred at once. We describe the architecture of cTI and report an extensive experimental evaluation of the system covering many classical examples from the logic programming termination literature and several Prolog programs of respectable size and complexity. Frédéric Mesnard, Roberto Bagnara |
Theory Pract. Log. Program. | 2 |
| 2004 | Widening Operators for Powerset Domains
Roberto Bagnara, Patricia M. Hill, Enea Zaffanella |
VMCAI | 1 |
| 2004 | Finite-tree analysis for constraint logic-based languages
Roberto Bagnara, Roberta Gori, Patricia M. Hill, Enea Zaffanella |
Inf. Comput. | 1 |
| 2004 | A correct, precise and efficient integration of set-sharing, freeness and linearity for the analysis of finite and rational tree languagesabstractIt is well known that freeness and linearity information positively interact with aliasing information, allowing both the precision and the efficiency of the sharing analysis of logic programs to be improved. In this paper, we present a novel combination of set-sharing with freeness and linearity information, which is characterized by an improved abstract unification operator. We provide a new abstraction function and prove the correctness of the analysis for both the finite tree and the rational tree cases. Moreover, we show that the same notion of redundant information as identified in Bagnara et al. (2000) and Zaffanella et al. (2002) also applies to this abstract domain combination: this allows for the implementation of an abstract unification operator running in polynomial time and achieving the same precision on all the considered observable properties. Patricia M. Hill, Enea Zaffanella, Roberto Bagnara |
Theory Pract. Log. Program. | 3 |
| 2003 | Precise Widening Operators for Convex Polyhedra
Roberto Bagnara, Patricia M. Hill, Elisa Ricci 0002, Enea Zaffanella |
SAS | 1 |
| 2002 | Possibly Not Closed Convex Polyhedra and the Parma Polyhedra Library
Roberto Bagnara, Elisa Ricci 0002, Enea Zaffanella, Patricia M. Hill |
SAS | 1 |
| 2002 | Set-sharing is redundant for pair-sharing
Roberto Bagnara, Patricia M. Hill, Enea Zaffanella |
Theor. Comput. Sci. | 1 |
| 2002 | Soundness, idempotence and commutativity of set-sharingabstractIt is important that practical data-flow analyzers are backed by reliably proven theoretical results. Abstract interpretation provides a sound mathematical framework and necessary generic properties for an abstract domain to be well-defined and sound with respect to the concrete semantics. In logic programming, the abstract domain Sharing is a standard choice for sharing analysis for both practical work and further theoretical study. In spite of this, we found that there were no satisfactory proofs for the key properties of commutativity and idempotence that are essential for Sharing to be well-defined and that published statements of the soundness of Sharing assume the occurs-check. This paper provides a generalization of the abstraction function for Sharing that can be applied to any language, with or without the occurs-check. Results for soundness, idempotence and commutativity for abstract unification using this abstraction function are proven. Patricia M. Hill, Roberto Bagnara, Enea Zaffanella |
Theory Pract. Log. Program. | 2 |
| 2002 | Decomposing non-redundant sharing by complementationabstractComplementation, the inverse of the reduced product operation, is a technique for systematically finding minimal decompositions of abstract domains. Filé and Ranzato advanced the state of the art by introducing a simple method for computing a complement. As an application, they considered the extraction by complementation of the pair-sharing domain PS from the Jacobs and Langen's set-sharing domain SH. However, since the result of this operation was still SH, they concluded that PS was too abstract for this. Here, we show that the source of this result lies not with PS but with SH and, more precisely, with the redundant information contained in SH with respect to ground-dependencies and pair-sharing. In fact, a proper decomposition is obtained if the non-redundant version of SH, PSD, is substituted for SH. To establish the results for PSD, we define a general schema for subdomains of SH that includes PSD and Def as special cases. This sheds new light on the structure of PSD and exposes a natural though unexpected connection between Def and PSD. Moreover, we substantiate the claim that complementation alone is not sufficient to obtain truly minimal decompositions of domains. The right solution to this problem is to first remove redundancies by computing the quotient of the domain with respect to the observable behavior, and only then decompose it by complementation. Enea Zaffanella, Patricia M. Hill, Roberto Bagnara |
Theory Pract. Log. Program. | 3 |
| 2001 | Boolean Functions for Finite-Tree Dependencies
Roberto Bagnara, Enea Zaffanella, Roberta Gori, Patricia M. Hill |
LPAR | 1 |
| 2001 | Finite-Tree Analysis for Constraint Logic-Based Languages
Roberto Bagnara, Roberta Gori, Patricia M. Hill, Enea Zaffanella |
SAS | 1 |
| 2000 | Efficient Structural Information Analysis for Real CLP Languages
Roberto Bagnara, Patricia M. Hill, Enea Zaffanella |
LPAR | 1 |
| 2000 | Enhanced sharing analysis techniques: a comprehensive evaluationabstractSharing, a domain due to D. Jacobs and A. Langen for the analysis of logic programs, derives useful aliasing information.It is well-known that a commonly used core of techniques, such as the standard integration of Sharing with freeness and linearity information, can signi cantly improve the precision of Sharing.However, a numb e rof other proposals for re ned domain combinations have been circulating for years.One feature that is common to these proposals is that they do not seem to have undergone a thorough experimental evaluation even with respect to the expected precision gains.In this paper, we discuss and/or experimentally evaluate: helping Sharing with de nitely ground variables computed with Pos; the incorporation of explicit structural information into the domain of analysis; more sophisticated ways of integrating Sharing and Pos; the issue of reordering the bindings in the computation of the abstract mgu; an original proposal concerning the addition of a domain recording the set of variables that are deemed to b eground or free; a more re ned way of using linearity to improve the analysis; the issue of whether tracking compoundness allows to compute more precise sharing information; and, nally, the recovery of hidden information in the combination of Sharing with the usual domain for freeness. Roberto Bagnara, Enea Zaffanella, Patricia M. Hill |
PPDP | 1 |
| 1999 | Widening Sharing
Enea Zaffanella, Roberto Bagnara, Patricia M. Hill |
PPDP | 2 |
| 1999 | Decomposing Non-redundant Sharing by Complementation
Enea Zaffanella, Patricia M. Hill, Roberto Bagnara |
SAS | 3 |
| 1998 | The Correctness of Set-Sharing
Patricia M. Hill, Roberto Bagnara, Enea Zaffanella |
SAS | 2 |
| 1998 | A Hierarchy of Constraint Systems for Data-Flow Analysis of Constraint Logic-Based Languages
Roberto Bagnara |
Sci. Comput. Program. | 1 |
| 1997 | Set-Sharing is Redundant for Pair-Sharing
Roberto Bagnara, Patricia M. Hill, Enea Zaffanella |
SAS | 1 |