Caterina Urban

dblp:130/9842 · DBLP profile ↗
← Back
37ranked-venue papers
12as first author
19since 2021 · last 2026
0000-0002-8127-9642ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 29 · 12 first-author · 14 since 2021Theory of computation · 8 · 4 since 2021Artificial intelligence and machine learning · 6 · 3 since 2021Databases, data management, data science and information retrieval · 1 · 1 since 2021Graphics, computer vision, multimedia, augmented reality and games · 1
YearPublicationVenuePosition
2026 Faster Verified Explanations for Neural Networks
abstract
Verified explanations are a principled way to explain the decisions taken by neural networks, which are otherwise black-box in nature. However, these techniques face significant scalability challenges, as they require multiple calls to neural network verifiers, each of them with an exponential worst-case complexity. We present FaVeX, a novel algorithm to compute verified explanations. FaVeX accelerates the computation by dynamically combining batch and sequential processing of input features, and by reusing information from previous queries, both when proving invariances with respect to certain input features, and when searching for feature assignments altering the prediction. Furthermore, we present a novel and hierarchical definition of verified explanations, termed verifier-optimal robust explanations, that explicitly factors the incompleteness of network verifiers within the explanation. Our comprehensive experimental evaluation demonstrates the superior scalability of both FaVeX, and of verifier-optimal robust explanations, which together can produce meaningful formal explanation on networks with hundreds of thousands of non-linear activations.
Alessandro De Palma, Greta Dolcetti, Caterina Urban
ECOOP3
2026 Abstract Lipschitz Continuity - Combining Semantic and Quantitative Approximations
Marco Campion, Isabella Mastroeni, Michele Pasqua, Caterina Urban
FoSSaCS4
2026 ReFuncTion: Conditional Termination by Abstract Interpretation of Numerical C Programs - (Competition Contribution)
Naïm Moussaoui Remil, Caterina Urban
TACAS (2)2
2026 Termination Resilience Static Analysis
Naïm Moussaoui Remil, Caterina Urban
VMCAI2
2026 PYRA : A high-level linter for data science software
abstract
Due to its interdisciplinary nature, the development of data science software is particularly prone to a wide range of potential mistakes that can easily and silently compromise the final results. Several tools have been proposed that can help the data scientist in identifying the most common, low-level programming issues. However, these tools often fall short in detecting higher-level, domain-specific issues typical of data science pipelines, where subtle errors may not trigger exceptions but can still lead to incorrect or misleading outcomes, or unexpected behaviors. In this paper, we present PYRA , a static analysis tool that aims at detecting code smells in data science workflows. PYRA builds upon the Abstract Interpretation framework to infer abstract datatypes, and exploits such information to flag 16 categories of potential code smells concerning misleading visualizations, challenges for reproducibility, as well as misleading, unreliable or unexpected results. Unlike traditional linters, which focus on syntactic or stylistic issues, PYRA reasons over a domain-specific type system to identify data science-specific problems – such as improper data preprocessing steps and procedures’ misapplications – that could silently propagate through a data-manipulation pipeline. Beyond static checking, we envision tools like PYRA becoming integral components of the development loop, with analysis reports guiding correction and helping assess the reliability of machine learning pipelines. We evaluate PYRA on a benchmark suite of real-world Jupyter notebooks, showing its effectiveness in detecting practical data science issues, thereby enhancing transparency, correctness, and reproducibility in data science software.
Greta Dolcetti, Vincenzo Arceri, Antonella Mensi, Enea Zaffanella, Caterina Urban, Agostino Cortesi
Knowl. Based Syst.5
2026 A Logic for the Imprecision of Abstract Interpretations
abstract
In numerical analysis, error propagation refers to how small inaccuracies in input data or intermediate computations accumulate and affect the final result, typically governed by the stability and sensitivity of the algorithm with respect to some perturbations. The definition of a similar concept in approximated program analysis is still a challenge. In abstract interpretation, inaccuracy arises from the abstraction itself, and the propagation of this error is dictated by the abstract interpreter. In most cases, such imprecision is inevitable. In this paper we introduce a logic for deriving (upper) bounds on the inaccuracy of an abstract interpretation. We are able to derive a function that bounds the imprecision of the result of an abstract interpreter from the imprecision of its input data. When this holds we have what we call partial local completeness of the abstract interpreter, a weaker form of completeness known in the literature. To this end, we introduce the notion of a generator for a property represented in the abstract domain. Generators allow us to restrict the search space when verifying whether the bounding function holds for a given program and input. We then introduce a program logic, called Error Propagation Logic (EPL), for propagating the error bounds produced by an abstract interpretation. This logic is a combination of correctness and incorrectness logics and a logic for program ω - continuity that is also introduced in this paper.
Marco Campion, Mila Dalla Preda, Roberto Giacobazzi, Caterina Urban
Proc. ACM Program. Lang.4
2025 Relating Distances and Abstractions - An Abstract Interpretation Perspective
Marco Campion, Isabella Mastroeni, Caterina Urban
SAS3
2025 Preface of the special issue on the static analysis symposium 2020 and 2022
David Pichardie, Mihaela Sighireanu, Gagandeep Singh 0001, Caterina Urban
Formal Methods Syst. Des.4
2025 Static analysis by abstract interpretation against data leakage in machine learning
Caterina Urban, Pavle Subotic, Filip Drobnjakovic
Sci. Comput. Program.1
2024 Automatic Detection of Vulnerable Variables for CTL Properties of Programs
abstract
We present our tool FuncTion-V for the automatic identification of the minimal sets of program variables that an attacker can control to ensure an undesirable program property. FuncTion-V supports program properties expressed in Computation Tree Logic (CTL), and builds upon an abstract interpretation-based static analysis for CTL properties that we extend with an abstraction refinement process. We showcase our tool on benchmarks collected from the literature and SV-COMP 2023.
Naïm Moussaoui Remil, Caterina Urban, Antoine Miné
LPAR2
2024 Quantitative Static Timing Analysis
Denis Mazzucato, Marco Campion, Caterina Urban
SAS3
2024 An Abstract Interpretation-Based Data Leakage Static Analysis
Filip Drobnjakovic, Pavle Subotic, Caterina Urban
TASE3
2024 Abstract Interpretation-Based Feature Importance for Support Vector Machines
Abhinandan Pal, Francesco Ranzato, Caterina Urban, Marco Zanella
VMCAI (1)3
2024 Preface of the special issue on the conference on Computer-Aided Verification 2020 and 2021
Aws Albarghouthi, K. Rustan M. Leino, Alexandra Silva 0001, Caterina Urban
Formal Methods Syst. Des.4
2024 Monotonicity and the Precision of Program Analysis
abstract
It is widely known that the precision of a program analyzer is closely related to intensional program properties, namely, properties concerning how the program is written. This explains, for instance, the interest in code obfuscation techniques, namely, tools explicitly designed to degrade the results of program analysis by operating syntactic program transformations. Less is known about a possible relation between what the program extensionally computes, namely, its input-output relation, and the precision of a program analyzer. In this paper we explore this potential connection in an effort to isolate program fragments that can be precisely analyzed by abstract interpretation, namely, programs for which there exists a complete abstract interpretation. In the field of static inference of numeric invariants, this happens for programs, or parts of programs, that manifest a monotone (either non-decreasing or non-increasing) behavior. We first formalize the notion of program monotonicity with respect to a given input and a set of numerical variables of interest. A sound proof system is then introduced with judgments specifying whether a program is monotone relatively to a set of variables and a set of inputs. The interest in monotonicity is justified because we prove that the family of monotone programs admits a complete abstract interpretation over a specific class of non-trivial numerical abstractions and inputs. This class includes all non-relational abstract domains that refine interval analysis (i.e., at least as precise as the intervals abstraction) and that satisfy a topological convexity hypothesis.
Marco Campion, Mila Dalla Preda, Roberto Giacobazzi, Caterina Urban
Proc. ACM Program. Lang.4
2023 A Formal Framework to Measure the Incompleteness of Abstract Interpretations
Marco Campion, Caterina Urban, Mila Dalla Preda, Roberto Giacobazzi
SAS2
2022 Verifying Attention Robustness of Deep Neural Networks against Semantic Perturbations
abstract
In this paper, we propose the first verification method for attention robustness, i.e., the local robustness of the changes in the saliency-map against combinations of semantic perturbations. Specmcally, our method determines the range of the perturbation parameters (e.g., the amount of brightness change) that maintains the difference between the actual saliencymap change and the expected saliency-map change below a given threshold value. Our method is based on linear activation region traversals, focusing on the outermost boundary of attention robustness for scalability on larger deep neural networks.
Satoshi Munakata, Caterina Urban, Haruki Yokoyama, Koji Yamamoto 0002, Kazuki Munakata
APSEC2
2021 Fairness-Aware Training of Decision Trees by Abstract Interpretation
abstract
We study the problem of formally verifying individual fairness of decision tree ensembles, as well as training tree models which maximize both accuracy and individual fairness. In our approach, fairness verification and fairness-aware training both rely on a notion of stability of a classifier, which is a generalization of the standard notion of robustness to input perturbations used in adversarial machine learning. Our verification and training methods leverage abstract interpretation, a well-established mathematical framework for designing computable, correct, and precise approximations of potentially infinite behaviors. We implemented our fairness-aware learning method by building on a tool for adversarial training of decision trees. We evaluated it in practice on the reference datasets in the literature on fairness in machine learning. The experimental results show that our approach is able to train tree models exhibiting a high degree of individual fairness with respect to the natural state-of-the-art CART trees and random forests. Moreover, as a by-product, these fairness-aware decision trees turn out to be significantly compact, which naturally enhances their interpretability.
Francesco Ranzato, Caterina Urban, Marco Zanella
CIKM2
2021 Reduced Products of Abstract Domains for Fairness Certification of Neural Networks
Denis Mazzucato, Caterina Urban
SAS2
2020 Perfectly parallel fairness certification of neural networks
abstract
Recently, there is growing concern that machine-learned software, which currently assists or even automates decision making, reproduces, and in the worst case reinforces, bias present in the training data. The development of tools and techniques for certifying fairness of this software or describing its biases is, therefore, critical. In this paper, we propose a perfectly parallel static analysis for certifying fairness of feed-forward neural networks used for classification of tabular data. When certification succeeds, our approach provides definite guarantees, otherwise, it describes and quantifies the biased input space regions. We design the analysis to be sound, in practice also exact, and configurable in terms of scalability and precision, thereby enabling pay-as-you-go certification. We implement our approach in an open-source tool called Libra and demonstrate its effectiveness on neural networks trained on popular datasets.
Caterina Urban, Maria Christakis, Valentin Wüstholz, Fuyuan Zhang
Proc. ACM Program. Lang.1
2019 Static Analysis of Data Science Software
Caterina Urban
SAS1
2018 Permission Inference for Array Programs
abstract
Information about the memory locations accessed by a program is, for instance, required for program parallelisation and program verification. Existing inference techniques for this information provide only partial solutions for the important class of array-manipulating programs. In this paper, we present a static analysis that infers the memory footprint of an array program in terms of permission pre- and postconditions as used, for example, in separation logic. This formulation allows our analysis to handle concurrent programs and produces specifications that can be used by verification tools. Our analysis expresses the permissions required by a loop via maximum expressions over the individual loop iterations. These maximum expressions are then solved by a novel maximum elimination algorithm, in the spirit of quantifier elimination. Our approach is sound and is implemented; an evaluation on existing benchmarks for memory safety of array programs demonstrates accurate results, even for programs with complex access patterns and nested loops.
Jérôme Dohrau, Alexander J. Summers, Caterina Urban, Severin Münger, Peter Müller 0001
CAV (2)3
2018 MaxSMT-Based Type Inference for Python 3
abstract
We present Typpete , a sound type inferencer that automatically infers Python 3 type annotations. Typpete encodes type constraints as a MaxSMT problem and uses optional constraints and specific quantifier instantiation patterns to make the constraint solving process efficient. Our experimental evaluation shows that Typpete scales to real world Python programs and outperforms state-of-the-art tools.
Mostafa Hassan, Caterina Urban, Marco Eilers, Peter Müller 0001
CAV (2)2
2018 An Abstract Interpretation Framework for Input Data Usage
abstract
Data science software plays an increasingly important role in critical decision making in fields ranging from economy and finance to biology and medicine. As a result, errors in data science applications can have severe consequences, especially when they lead to results that look plausible, but are incorrect. A common cause of such errors is when applications erroneously ignore some of their input data, for instance due to bugs in the code that reads, filters, or clusters it. In this paper, we propose an abstract interpretation framework to automatically detect unused input data. We derive a program semantics that precisely captures data usage by abstraction of the program’s operational trace semantics and express it in a constructive fixpoint form. Based on this semantics, we systematically derive static analyses that automatically detect unused input data by fixpoint approximation. This clear design principle provides a framework that subsumes existing analyses; we show that secure information flow analyses and a form of live variables analysis can be used for data usage, with varying degrees of precision. Additionally, we derive a static analysis to detect single unused data inputs, which is similar to dependency analyses used in the context of backward program slicing. Finally, we demonstrate the value of expressing such analyses as abstract interpretation by combining them with an existing abstraction of compound data structures such as arrays and lists to detect unused chunks of the data. These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Caterina Urban, Peter Müller 0001
ESOP1
2018 Abstract Interpretation of CTL Properties
Caterina Urban, Samuel Ueltschi, Peter Müller 0001
SAS1
2017 Precise Widening Operators for Proving Termination by Abstract Interpretation
Nathanaël Courant, Caterina Urban
TACAS (1)2
2017 Inference of ranking functions for proving temporal properties by abstract interpretation
Caterina Urban, Antoine Miné
Comput. Lang. Syst. Struct.1
2017 Abstract Interpretation as Automated Deduction
Vijay D'Silva, Caterina Urban
J. Autom. Reason.2
2016 Büchi, Lindenbaum, Tarski: A Program Analysis Appetizer
Vijay D'Silva, Caterina Urban
IJCAI2
2016 Synthesizing Ranking Functions from Bits and Pieces
Caterina Urban, Arie Gurfinkel, Temesghen Kahsai
TACAS1
2015 Abstract Interpretation as Automated Deduction
Vijay D'Silva, Caterina Urban
CADE2
2015 Conflict-Driven Conditional Termination
Vijay D'Silva, Caterina Urban
CAV (2)2
2015 FuncTion: An Abstract Domain Functor for Termination - (Competition Contribution)
Caterina Urban
TACAS1
2015 Proving Guarantee and Recurrence Temporal Properties by Abstract Interpretation
Caterina Urban, Antoine Miné
VMCAI1
2014 An Abstract Domain to Infer Ordinal-Valued Ranking Functions
Caterina Urban, Antoine Miné
ESOP1
2014 A Decision Tree Abstract Domain for Proving Conditional Termination
Caterina Urban, Antoine Miné
SAS1
2013 The Abstract Domain of Segmented Ranking Functions
Caterina Urban
SAS1