VLDB 2026 Research / reviewers in the wild / expert
Francesco Ranzato
dblp:r/FRanzato
· DBLP profile ↗
71ranked-venue papers
28as first author
18since 2021 · last 2026
0000-0003-0159-0068ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Theory of computation · 35 · 12 first-author · 8 since 2021Software engineering, systems software and programming languages · 29 · 12 first-author · 5 since 2021Artificial intelligence and machine learning · 4 · 3 first-author · 3 since 2021Databases, data management, data science and information retrieval · 4 · 1 first-author · 3 since 2021Applied, interdisciplinary, general and emerging computing · 2 · 1 since 2021Security and privacy · 1 · 1 first-author · 1 since 2021Graphics, computer vision, multimedia, augmented reality and games · 1 · 1 first-author
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Reachability-Guided Abstraction RefinementabstractAbstract To mitigate the state explosion problem in model checking, abstraction techniques provide sound but typically incomplete approximations of a system’s behaviour. While complete abstractions eliminate false alarms, they are often impractical—or even uncomputable—due to their high computational cost. We introduce semi-completeness, a relaxed notion of completeness that retains sufficient precision to capture a system’s behaviour over relevant regions of the domain. Building on this, we develop abstraction refinement algorithms that compute semi-complete abstractions without incurring the cost of full completeness. Furthermore, we present an algorithm that interleaves abstraction refinement with fixed-point computations—specifically reachability analysis. This achieves semi-completeness on-the-fly, without requiring prior knowledge of the region of interest, such as the reachable states. We demonstrate the effectiveness of our approach on fragments of the $$\mu $$ μ -calculus, showing that our abstractions preserve the validity of formulae over all reachable states. Pierre Ganty, Nicolas Manini, Francesco Ranzato |
FM (1) | 3 |
| 2025 | Exact Robustness Certification of k-Nearest NeighborsabstractRobustness guarantees are essential for deploying machine learning models in security-critical environments where adversarial attacks pose a serious threat. While extensive progress has been made in certifying (deep) neural networks, nonparametric models such as k-Nearest Neighbors (k-NN) have been less investigated, despite their interpretability and usage in high-assurance settings. Prior certification methods for k-NN provide sound but incomplete guarantees, leaving many genuinely robust inputs uncertified. This work introduces a sound and complete certification framework for k-NN classifiers, offering exact robustness guarantees against adversarial perturbations. Our approach combines hypercube space decomposition with a novel graph-theoretic analysis based on an adversarial proximity precedence graph, enabling full coverage of adversarial regions. Extensive evaluation on widely used datasets demonstrates that our exact methodology significantly improves certification rates over existing techniques while maintaining scalability. By closing the gap between soundness and completeness, our framework advances the security guarantees of k-NN models and contributes to the broader goal of provably robust machine learning in adversarial settings. Francesco Ranzato, Ahmad Shakeel, Marco Zanella |
CCS | 1 |
| 2025 | Model Checking as Program Verification by Abstract Interpretation
Paolo Baldan, Roberto Bruni 0001, Francesco Ranzato, Diletta Rigo |
CONCUR | 3 |
| 2025 | The Best of Abstract InterpretationsabstractWe study “ the best of abstract interpretations ”, that is, the best possible abstract interpretations of programs. Abstract interpretations are inductively defined by composing abstract transfer functions for the basic commands, such as assignments and Boolean guards. However, abstract interpretation is not compositional: even if the abstract transfer functions of the basic commands are the best possible ones on a given abstract domain A this does not imply that the whole inductive abstract interpretation of a program p is still the best in A . When this happens we are in the optimal scenario where the abstract interpretation of p coincides with the abstraction of the concrete interpretation of p . Our main contributions are threefold. Firstly, we investigate the computability properties of the class of programs having the best possible abstract interpretation on a fixed abstract domain A . We show that this class is, in general, not straightforward and not recursive. Secondly, we prove the impossibility of achieving the best possible abstract interpretation of any program p either by an effective compilation of p or by minimally refining or simplifying the abstract domain A . These results show that the program property of having the best possible abstract interpretation is not trivial and, in general, hard to achieve. We then show how to prove that the abstract interpretation of a program is indeed the best possible one. To this aim, we put forward a program logic parameterized on an abstract domain A which infers triples p r e ] A p p o s t ] A . These triples encode that the inductive abstract interpretation of p on A with abstract input p r e ∈ A gives p o s t ∈ A as abstract output and this is the best possible in A . Roberto Giacobazzi, Francesco Ranzato |
Proc. ACM Program. Lang. | 2 |
| 2025 | The Reachable Simulation ProblemabstractWe investigate the problem of computing the reachable blocks of the simulation equivalence and its natural counterpart for the simulation preorder, referred to as the reachable simulation problem . Through a theoretical investigation of this problem, we unveil a sharp contrast with the already settled case of bisimulation equivalence. Then, we design algorithms to solve the reachable simulation problem by leveraging the idea of interleaving reachability and simulation computation while possibly avoiding the computation of all the reachable states or the whole simulation preorder. Specifically, we propose algorithms achieving different guarantees on the precision of the output, and a symbolic algorithm that operates on state partitions and relations between their blocks, which is particularly well-suited for processing infinite-state systems. Pierre Ganty, Nicolas Manini, Francesco Ranzato |
ACM Trans. Comput. Log. | 3 |
| 2024 | Abstract Interpretation-Based Feature Importance for Support Vector Machines
Abhinandan Pal, Francesco Ranzato, Caterina Urban, Marco Zanella |
VMCAI (1) | 2 |
| 2024 | Robustness verification of k-nearest neighbors by abstract interpretationabstractAbstract We study the certification of stability properties, such as robustness and individual fairness, of the k-nearest neighbor algorithm (kNN). Our approach leverages abstract interpretation, a well-established program analysis technique that has been proven successful in verifying several machine learning algorithms, notably, neural networks, decision trees, and support vector machines. In this work, we put forward an abstract interpretation-based framework for designing a sound approximate version of the kNN algorithm, which is instantiated to the interval and zonotope abstractions for approximating the range of numerical features. We show how this abstraction-based method can be used for stability, robustness, and individual fairness certification of kNN. Our certification technique has been implemented and experimentally evaluated on several benchmark datasets. These experimental results show that our tool can formally prove the stability of kNN classifiers in a precise and efficient way, thus expanding the range of machine learning models amenable to robustness certification. Nicolò Fassina, Francesco Ranzato, Marco Zanella |
Knowl. Inf. Syst. | 2 |
| 2023 | Robustness Certification of k-Nearest NeighborsabstractWe study the certification of stability properties, such as robustness and individual fairness, of the k-Nearest Neighbor algorithm (kNN). Our approach leverages abstract interpretation, a well-established program analysis technique that has been proven successful in verifying several machine learning algorithms, notably, neural networks, decision trees, and support vector machines. In this work, we put forward an abstract interpretation-based framework for designing a sound approximate version of the kNN algorithm, which is instantiated to the interval and zonotope abstractions for approximating the range of numerical features. We show how this abstraction-based method can be used for stability, robustness, and individual fairness certification of kNN. Our certification technique has been implemented and experimentally evaluated on several benchmark datasets. These experimental results show that our tool can formally prove the stability of kNN classifiers in a precise and efficient way, thus expanding the range of machine learning models amenable to robustness certification. Nicolò Fassina, Francesco Ranzato, Marco Zanella |
ICDM | 2 |
| 2023 | A Correctness and Incorrectness Program LogicabstractAbstract interpretation is a well-known and extensively used method to extract over-approximate program invariants by a sound program analysis algorithm. Soundness means that no program errors are lost and it is, in principle, guaranteed by construction. Completeness means that the abstract interpreter reports no false alarms for all possible inputs, but this is extremely rare because it needs a very precise analysis. We introduce a weaker notion of completeness, called local completeness , which requires that no false alarms are produced only relatively to some fixed program inputs. Based on this idea, we introduce a program logic, called Local Completeness Logic for an abstract domain A , for proving both the correctness and incorrectness of program specifications. Our proof system, which is parameterized by an abstract domain A , combines over- and under-approximating reasoning. In a provable triple ⊦ A [ p ] 𝖼 [ q ], 𝖼 is a program, q is an under-approximation of the strongest post-condition of 𝖼 on input p such that their abstractions in A coincide. This means that q is never too coarse, namely, under some mild assumptions, the abstract interpretation of 𝖼 does not yield false alarms for the input p iff q has no alarm . Therefore, proving ⊦ A [ p ] 𝖼 [ q ] not only ensures that all the alarms raised in q are true ones, but also that if q does not raise alarms, then 𝖼 is correct. We also prove that if A is the straightforward abstraction making all program properties equivalent, then our program logic coincides with O’Hearn’s incorrectness logic, while for any other abstraction, contrary to the case of incorrectness logic, our logic can also establish program correctness. Roberto Bruni 0001, Roberto Giacobazzi, Roberta Gori, Francesco Ranzato |
J. ACM | 4 |
| 2022 | Abstract interpretation repairabstractAbstract interpretation is a sound-by-construction method for program verification: any erroneous program will raise some alarm. However, the verification of correct programs may yield false-alarms, namely it may be incomplete. Ideally, one would like to perform the analysis on the most abstract domain that is precise enough to avoid false-alarms. We show how to exploit a weaker notion of completeness, called local completeness, to optimally refine abstract domains and thus enhance the precision of program verification. Our main result establishes necessary and sufficient conditions for the existence of an optimal, locally complete refinement, called pointed shell. On top of this, we define two repair strategies to remove all false-alarms along a given abstract computation: the first proceeds forward, along with the concrete computation, while the second moves backward within the abstract computation. Our results pave the way for a novel modus operandi for automating program verification that we call Abstract Interpretation Repair (AIR): instead of choosing beforehand the right abstract domain, we can start in any abstract domain and progressively repair its local incompleteness as needed. In this regard, AIR is for abstract interpretation what CEGAR is for abstract model checking. Roberto Bruni 0001, Roberto Giacobazzi, Roberta Gori, Francesco Ranzato |
PLDI | 4 |
| 2022 | Local Completeness Logic on Kleene Algebra with Tests
Marco Milanese 0001, Francesco Ranzato |
SAS | 2 |
| 2022 | Intensional Kleene and Rice theorems for abstract program semantics
Paolo Baldan, Francesco Ranzato, Linpeng Zhang |
Inf. Comput. | 2 |
| 2021 | Fairness-Aware Training of Decision Trees by Abstract InterpretationabstractWe 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 |
CIKM | 1 |
| 2021 | Inclusion Testing of Büchi Automata Based on Well-QuasiordersabstractWe introduce an algorithmic framework to decide whether inclusion holds between languages of infinite words over a finite alphabet. Our approach falls within the class of Ramsey-based methods and relies on a least fixpoint characterization of ω-languages leveraging ultimately periodic infinite words of type uv^ω, with u a finite prefix and v a finite period of an infinite word. We put forward an inclusion checking algorithm between Büchi automata, called BAInc, designed as a complete abstract interpretation using a pair of well-quasiorders on finite words. BAInc is quite simple: it consists of two least fixpoint computations (one for prefixes and the other for periods) manipulating finite sets (of pairs) of states compared by set inclusion, so that language inclusion holds when the sets (of pairs) of states of the fixpoints satisfy some basic conditions. We implemented BAInc in a tool called BAIT that we experimentally evaluated against the state-of-the-art. We gathered, in addition to existing benchmarks, a large number of new case studies stemming from program verification and word combinatorics, thereby significantly expanding both the scope and size of the available benchmark set. Our experimental results show that BAIT advances the state-of-the-art on an overwhelming majority of these benchmarks. Finally, we demonstrate the generality of our algorithmic framework by instantiating it to the inclusion problem of Büchi pushdown automata into Büchi automata. Kyveli Doveri, Pierre Ganty, Francesco Parolini, Francesco Ranzato |
CONCUR | 4 |
| 2021 | Genetic adversarial training of decision treesabstractWe put forward a novel learning methodology for ensembles of decision trees based on a genetic algorithm that is able to train a decision tree for maximizing both its accuracy and its robustness to adversarial perturbations. This learning algorithm internally leverages a complete formal verification technique for robustness properties of decision trees based on abstract interpretation, a well-known static program analysis technique. We implemented this genetic adversarial training algorithm in a tool called MetaSilvae and we experimentally evaluated it on some standard reference datasets used in adversarial training. The experimental results show that MetaSilvae is able to train robust models that compete with and often improve on the current state-of-the-art of adversarial training of decision trees while being much more compact and therefore interpretable and efficient tree models. Francesco Ranzato, Marco Zanella |
GECCO | 1 |
| 2021 | A Rice's Theorem for Abstract SemanticsabstractClassical results in computability theory, notably Rice’s theorem, focus on the extensional content of programs, namely, on the partial recursive functions that programs compute. Later and more recent work investigated intensional generalisations of such results that take into account the way in which functions are computed, thus affected by the specific programs computing them. In this paper, we single out a novel class of program semantics based on abstract domains of program properties that are able to capture nonextensional aspects of program computations, such as their asymptotic complexity or logical invariants, and allow us to generalise some foundational computability results such as Rice’s Theorem and Kleene’s Second Recursion Theorem to these semantics. In particular, it turns out that for this class of abstract program semantics, any nontrivial abstract property is undecidable and every decidable overapproximation necessarily includes an infinite set of false positives which covers all values of the semantic abstract domain. Paolo Baldan, Francesco Ranzato, Linpeng Zhang |
ICALP | 2 |
| 2021 | A Logic for Locally Complete Abstract InterpretationsabstractWe introduce the notion of local completeness in abstract interpretation and define a logic for proving both the correctness and incorrectness of some program specification. Abstract interpretation is extensively used to design sound-by-construction program analyses that over-approximate program behaviours. Completeness of an abstract interpretation A for all possible programs and inputs would be an ideal situation for verifying correctness specifications, because the analysis can be done compositionally and no false alert will arise. Our first result shows that the class of programs whose abstract analysis on A is complete for all inputs has a severely limited expressiveness. A novel notion of local completeness weakens the above requirements by considering only some specific, rather than all, program inputs and thus finds wider applicability. In fact, our main contribution is the design of a proof system, parameterized by an abstraction A, that, for the first time, combines over- and under-approximations of program behaviours. Thanks to local completeness, in a provable triple ⊢A [P ] c [Q], the assertion Q is an under-approximation of the strongest post-condition post[c](P ) such that the abstractions in A of Q and post[c](P ) coincide. This means that Q is never too coarse, namely, under mild assumptions, the abstract interpretation of c does not yield false alerts for the input P iff Q has no alert. Thus, ⊢ A [P ] c [Q] not only ensures that all the alerts raised in Q are true ones, but also that if Q does not raise alerts then c is correct. Roberto Bruni 0001, Roberto Giacobazzi, Roberta Gori, Francesco Ranzato |
LICS | 4 |
| 2021 | Complete Abstractions for Checking Language InclusionabstractWe study the language inclusion problem L 1 ⊆ L 2 , where L 1 is regular or context-free. Our approach relies on abstract interpretation and checks whether an overapproximating abstraction of L 1 , obtained by approximating the Kleene iterates of its least fixpoint characterization, is included in L 2 . We show that a language inclusion problem is decidable whenever this overapproximating abstraction satisfies a completeness condition (i.e., its loss of precision causes no false alarm) and prevents infinite ascending chains (i.e., it guarantees termination of least fixpoint computations). This overapproximating abstraction of languages can be defined using quasiorder relations on words, where the abstraction gives the language of all the words “greater than or equal to” a given input word for that quasiorder. We put forward a range of such quasiorders that allow us to systematically design decision procedures for different language inclusion problems, such as regular languages into regular languages or into trace sets of one-counter nets, and context-free languages into regular languages. In the case of inclusion between regular languages, some of the induced inclusion checking procedures correspond to well-known state-of-the-art algorithms, like the so-called antichain algorithms. Finally, we provide an equivalent language inclusion checking algorithm based on a greatest fixpoint computation that relies on quotients of languages and, to the best of our knowledge, was not previously known. Pierre Ganty, Francesco Ranzato, Pedro Valero 0001 |
ACM Trans. Comput. Log. | 2 |
| 2020 | Abstract Interpretation of Decision Tree Ensemble Classifiers
Francesco Ranzato, Marco Zanella |
AAAI | 1 |
| 2020 | Decidability and Synthesis of Abstract Inductive InvariantsabstractDecidability and synthesis of inductive invariants ranging in a given domain play an important role in software verification. We consider here inductive invariants belonging to an abstract domain A as defined in abstract interpretation, namely, ensuring the existence of the best approximation in A of any system property. In this setting, we study the decidability of the existence of abstract inductive invariants in A of transition systems and their corresponding algorithmic synthesis. Our model relies on some general results which relate the existence of abstract inductive invariants with least fixed points of best correct approximations in A of the transfer functions of transition systems and their completeness properties. This approach allows us to derive decidability and synthesis results for abstract inductive invariants which are applied to the well-known Karr’s numerical abstract domain of affine equalities. Moreover, we show that a recent general algorithm for synthesizing inductive invariants in domains of logical formulae can be systematically derived from our results and generalized to a range of algorithms for computing abstract inductive invariants. Francesco Ranzato |
CONCUR | 1 |
| 2019 | Language Inclusion Algorithms as Complete Abstract Interpretations
Pierre Ganty, Francesco Ranzato, Pedro Valero 0001 |
SAS | 2 |
| 2019 | Robustness Verification of Support Vector Machines
Francesco Ranzato, Marco Zanella |
SAS | 1 |
| 2019 | Foreword to the special issue on the 2017 Static Analysis Symposium
Francesco Ranzato |
Formal Methods Syst. Des. | 1 |
| 2019 | A²I: abstract² interpretationabstractThe fundamental idea of Abstract 2 Interpretation (A 2 I), also called meta-abstract interpretation, is to apply abstract interpretation to abstract interpretation-based static program analyses. A 2 I is generally meant to use abstract interpretation to analyse properties of program analysers. A 2 I can be either offline or online. Offline A 2 I is performed either before the program analysis, such as variable packing used by the Astrée program analyser, or after the program analysis, such as in alarm diagnosis. Online A 2 I is performed during the program analysis, such as Venet’s cofibred domains or Halbwachs et al.’s and Singh et al.’s variable partitioning techniques for fast polyhedra/numerical abstract domains. We formalize offline and online meta-abstract interpretation and illustrate this notion with the design of widenings and the decomposition of relational abstract domains to speed-up program analyses. This shows how novel static analyses can be extracted as meta-abstract interpretations to design efficient and precise program analysis algorithms. Patrick Cousot, Roberto Giacobazzi, Francesco Ranzato |
Proc. ACM Program. Lang. | 3 |
| 2018 | Program Analysis Is Harder Than Verification: A Computability PerspectiveabstractWe study from a computability perspective static program analysis, namely detecting sound program assertions, and verification, namely sound checking of program assertions. We first design a general computability model for domains of program assertions and corresponding program analysers and verifiers. Next, we formalize and prove an instantiation of Rice’s theorem for static program analysis and verification. Then, within this general model, we provide and show a precise statement of the popular belief that program analysis is a harder problem than program verification: we prove that for finite domains of program assertions, program analysis and verification are equivalent problems, while for infinite domains, program analysis is strictly harder than verification. Patrick Cousot, Roberto Giacobazzi, Francesco Ranzato |
CAV (2) | 3 |
| 2018 | Invertible Linear Transforms of Numerical Abstract Domains
Francesco Ranzato, Marco Zanella |
SAS | 1 |
| 2018 | On Constructivity of Galois Connections
Francesco Ranzato |
VMCAI | 1 |
| 2018 | Abstracting Nash equilibria of supermodular games
Francesco Ranzato |
Formal Methods Syst. Des. | 1 |
| 2017 | A new characterization of complete Heyting and co-Heyting algebrasabstractWe give a new order-theoretic characterization of a complete Heyting and co-Heyting algebra $C$. This result provides an unexpected relationship with the field of Nash equilibria, being based on the so-called Veinott ordering relation on subcomplete sublattices of $C$, which is crucially used in Topkis' theorem for studying the order-theoretic stucture of Nash equilibria of supermodular games. Comment: To appear in Logical Methods in Computer Science Francesco Ranzato |
Log. Methods Comput. Sci. | 1 |
| 2016 | Abstract Interpretation of Supermodular Games
Francesco Ranzato |
SAS | 1 |
| 2016 | An Abstract Interpretation-Based Model of Tracing Just-in-Time CompilationabstractTracing just-in-time compilation is a popular compilation technique for the efficient implementation of dynamic languages, which is commonly used for JavaScript, Python, and PHP. It relies on two key ideas. First, it monitors program execution in order to detect so-called hot paths, that is, the most frequently executed program paths. Then, hot paths are optimized by exploiting some information on program stores that is available and therefore gathered at runtime. The result is a residual program where the optimized hot paths are guarded by sufficient conditions ensuring some form of equivalence with the original program. The residual program is persistently mutated during its execution, for example, to add new optimized hot paths or to merge existing paths. Tracing compilation is thus fundamentally different from traditional static compilation. Nevertheless, despite the practical success of tracing compilation, very little is known about its theoretical foundations. We provide a formal model of tracing compilation of programs using abstract interpretation. The monitoring phase (viz., hot path detection) corresponds to an abstraction of the trace semantics of the program that captures the most frequent occurrences of sequences of program points together with an abstraction of their corresponding stores, for example, a type environment. The optimization phase (viz., residual program generation) corresponds to a transform of the original program that preserves its trace semantics up to a given observation as modeled by some abstraction. We provide a generic framework to express dynamic optimizations along hot paths and to prove them correct. We instantiate it to prove the correctness of dynamic type specialization and constant variable folding. We show that our framework is more general than the model of tracing compilation introduced by Guo and Palsberg [2011], which is based on operational bisimulations. In our model, we can naturally express hot path reentrance and common optimizations like dead-store elimination, which are either excluded or unsound in Guo and Palsberg’s framework. Stefano Dissegna, Francesco Logozzo, Francesco Ranzato |
ACM Trans. Program. Lang. Syst. | 3 |
| 2015 | Analyzing Program AnalysesabstractWe want to prove that a static analysis of a given program is complete, namely, no imprecision arises when asking some query on the program behavior in the concrete (ie, for its concrete semantics) or in the abstract (ie, for its abstract interpretation). Completeness proofs are therefore useful to assign confidence to alarms raised by static analyses. We introduce the completeness class of an abstraction as the set of all programs for which the abstraction is complete. Our first result shows that for any nontrivial abstraction, its completeness class is not recursively enumerable. We then introduce a stratified deductive system to prove the completeness of program analyses over an abstract domain A. We prove the soundness of the deductive system. We observe that the only sources of incompleteness are assignments and Boolean tests --- unlikely a common belief in static analysis, joins do not induce incompleteness. The first layer of this proof system is generic, abstraction-agnostic, and it deals with the standard constructs for program composition, that is, sequential composition, branching and guarded iteration. The second layer is instead abstraction-specific: the designer of an abstract domain A provides conditions for completeness in A of assignments and Boolean tests which have to be checked by a suitable static analysis or assumed in the completeness proof as hypotheses. We instantiate the second layer of this proof system first with a generic nonrelational abstraction in order to provide a sound rule for the completeness of assignments. Orthogonally, we instantiate it to the numerical abstract domains of Intervals and Octagons, providing necessary and sufficient conditions for the completeness of their Boolean tests and of assignments for Octagons. Roberto Giacobazzi, Francesco Logozzo, Francesco Ranzato |
POPL | 3 |
| 2014 | Tracing compilation by abstract interpretationabstractTracing just-in-time compilation is a popular compilation schema for the efficient implementation of dynamic languages, which is commonly used for JavaScript, Python, and PHP. It relies on two key ideas. First, it monitors the execution of the program to detect so-called hot paths, i.e., the most frequently executed paths. Then, it uses some store information available at runtime to optimize hot paths. The result is a residual program where the optimized hot paths are guarded by sufficient conditions ensuring the equivalence of the optimized path and the original program. The residual program is persistently mutated during its execution, e.g., to add new optimized paths or to merge existing paths. Tracing compilation is thus fundamentally different than traditional static compilation. Nevertheless, despite the remarkable practical success of tracing compilation, very little is known about its theoretical foundations. Stefano Dissegna, Francesco Logozzo, Francesco Ranzato |
POPL | 3 |
| 2014 | An efficient simulation algorithm on Kripke structures
Francesco Ranzato |
Acta Informatica | 1 |
| 2014 | Correctness kernels of abstract interpretations
Roberto Giacobazzi, Francesco Ranzato |
Inf. Comput. | 2 |
| 2014 | Logical Characterizations of Behavioral Relations on Transition Systems of Probability DistributionsabstractProbabilistic nondeterministic processes are commonly modeled as probabilistic LTSs (PLTSs). A number of logical characterizations of the main behavioral relations on PLTSs have been studied. In particular, Parma and Segala [2007] and Hermanns et al. [2011] define a probabilistic Hennessy-Milner logic interpreted over probability distributions, whose corresponding logical equivalence/preorder when restricted to Dirac distributions coincides with standard bisimulation/simulation between the states of a PLTS. This result is here extended by studying the full logical equivalence/preorder between (possibly non-Dirac) distributions in terms of a notion of bisimulation/simulation defined on an LTS whose states are distributions (dLTS). We show that the well-known spectrum of behavioral relations on nonprobabilistic LTSs as well as their corresponding logical characterizations in terms of Hennessy-Milner logic scales to the probabilistic setting when considering dLTSs. Silvia Crafa, Francesco Ranzato |
ACM Trans. Comput. Log. | 2 |
| 2013 | A More Efficient Simulation Algorithm on Kripke Structures
Francesco Ranzato |
MFCS | 1 |
| 2013 | Complete Abstractions Everywhere
Francesco Ranzato |
VMCAI | 1 |
| 2012 | Bisimulation and simulation algorithms on probabilistic transition systems by abstract interpretation
Silvia Crafa, Francesco Ranzato |
Formal Methods Syst. Des. | 2 |
| 2011 | A Spectrum of Behavioral Relations over LTSs on Probability Distributions
Silvia Crafa, Francesco Ranzato |
CONCUR | 2 |
| 2011 | Probabilistic Bisimulation and Simulation Algorithms by Abstract Interpretation
Silvia Crafa, Francesco Ranzato |
ICALP (2) | 2 |
| 2011 | Saving Space in a Time Efficient Simulation AlgorithmabstractA number of algorithms for computing the simulation preorder on Kripke structures and on labelled transition systems are available. Among them, the algorithm by Ranzato and Tapparo [2007] has the best time complexity,while the algorithm by Gentilini Silvia Crafa, Francesco Ranzato, Francesco Tapparo |
Fundam. Informaticae | 2 |
| 2010 | Example-Guided Abstraction Simplification
Roberto Giacobazzi, Francesco Ranzato |
ICALP (2) | 2 |
| 2010 | An efficient simulation algorithm based on abstract interpretation
Francesco Ranzato, Francesco Tapparo |
Inf. Comput. | 1 |
| 2009 | Computing Stuttering Simulations
Francesco Ranzato, Francesco Tapparo |
CONCUR | 1 |
| 2009 | The Subgraph Similarity ProblemabstractSimilarity is a well known weakening of bisimilarity where one system is required to simulate the other and vice versa. It has been shown that the subgraph bisimilarity problem, a variation of the subgraph isomorphism problem where isomorphism is weakened to bisimilarity, is NP-complete. We show that the subgraph similarity problem and some related variations thereof still remain NP-complete. Lorenzo De Nardo, Francesco Ranzato, Francesco Tapparo |
IEEE Trans. Knowl. Data Eng. | 2 |
| 2008 | A Forward-Backward Abstraction Refinement Algorithm
Francesco Ranzato, Olivia Rossi-Doria, Francesco Tapparo |
VMCAI | 1 |
| 2008 | Generalizing the Paige-Tarjan algorithm by abstract interpretation
Francesco Ranzato, Francesco Tapparo |
Inf. Comput. | 1 |
| 2007 | A New Efficient Simulation Equivalence AlgorithmabstractIt is well known that simulation equivalence is an appropriate abstraction to be used in model checking because it strongly preserves ACTL* and provides a better space reduction than bisimulation equivalence. However, computing simulation equivalence is harder than computing bisimulation equivalence. A number of algorithms for computing simulation equivalence exist. Let Sigma denote the state space, rarr the transition relation and Psimthe partition of Sigma induced by simulation equivalence. The algorithms by Henzinger, Henzinger, Kopke and by Bloom and Paige run in O(|Sigma||rarr|)-time and, as far as time-complexity is concerned, they are the best available algorithms. However, these algorithms have the drawback of a quadratic space complexity that is bounded from below by Omega(|Sigma|2). The algorithm by Gentilini, Piazza, Policriti appears to be the best algorithm when both time and space complexities are taken into account. Gentilini et al.'s algorithm runs in O(|Psim|2|rarr|)-time while the space complexity is in O(|Psim|2+ |Sigma| log(|Psim|)). We present here a new efficient simulation equivalence algorithm that is obtained as a modification of Henzinger et al.'s algorithm and whose correctness is based on some techniques used in recent applications of abstract interpretation to model checking. Our algorithm runs in O(|Psim||rarr|)-time and O(|Psim||Sigma|)-space. Thus, while retaining a space complexity which is lower than quadratic, our algorithm improves the best known time bound. Francesco Ranzato, Francesco Tapparo |
LICS | 1 |
| 2007 | Generalized Strong Preservation by Abstract InterpretationabstractAbstract Many algorithms have been proposed to minimally refine abstract transition systems in order to get strong preservation relatively to a given temporal specification language. These algorithms compute a state equivalence, namely they work on abstractions which are partitions of system states. This is restrictive because, in a generic abstract interpretation-based view, state partitions are just one particular type of abstraction, and therefore it could well happen that the refined partition constructed by the algorithm is not the optimal generic abstraction. On the other hand, it has been already noted that the well-known concept of complete abstract interpretation is related to strong preservation of abstract model checking. This paper establishes a precise correspondence between complete abstract interpretation and strongly preserving abstract model checking, by showing that the problem of minimally refining an abstract model checking in order to get strong preservation can be formulated as a complete domain refinement in abstract interpretation, which always admits a fixpoint solution. As a consequence of these results, we show that some well-known behavioural equivalences used in process algebra like bisimulation and stuttering and their corresponding partition refinement algorithms can be elegantly characterized in pure abstract interpretation as completeness properties. Francesco Ranzato, Francesco Tapparo |
J. Log. Comput. | 1 |
| 2006 | Strong Preservation of Temporal Fixpoint-Based Operators by Abstract Interpretation
Francesco Ranzato, Francesco Tapparo |
VMCAI | 1 |
| 2006 | Incompleteness of states w.r.t. traces in model checking
Roberto Giacobazzi, Francesco Ranzato |
Inf. Comput. | 2 |
| 2005 | An Abstract Interpretation Perspective on Linear vs. Branching Time
Francesco Ranzato, Francesco Tapparo |
APLAS | 1 |
| 2005 | An Abstract Interpretation-Based Refinement Algorithm for Strong Preservation
Francesco Ranzato, Francesco Tapparo |
TACAS | 1 |
| 2005 | Making abstract domains condensingabstractIn this article, we show that reversible analyses of logic languages by abstract interpretation can be performed without loss of precision by systematically refining abstract domains. This is obtained by adding to the abstract domain the minimal amount of concrete semantic information so that this refined abstract domain becomes rich enough to allow goal-driven and goal-independent analyses agree. These domains are known as condensing abstract domains. Essentially, an abstract domain A is condensing when the goal-driven analysis performed on A for a program P and a given query can be retrieved with no loss of precision from the goal-independent analysis on A of P . We show that condensation is an abstract domain property and that the problem of making an abstract domain condensing boils down to the problem of making the corresponding abstract interpretation complete, in a weakened form, with respect to unification. In the case of abstract domains for logic program analysis approximating computed answer substitutions, we provide a clean logical characterization of condensing domains as fragments of propositional linear logic. We apply our methodology to the systematic design of condensing domains for freeness and independence analysis. Roberto Giacobazzi, Francesco Ranzato, Francesca Scozzari |
ACM Trans. Comput. Log. | 2 |
| 2004 | Strong Preservation as Completeness in Abstract Interpretation
Francesco Ranzato, Francesco Tapparo |
ESOP | 1 |
| 2002 | States vs. Traces in Model Checking by Abstract Interpretation
Roberto Giacobazzi, Francesco Ranzato |
SAS | 2 |
| 2002 | Making Abstract Model Checking Strongly Preserving
Francesco Ranzato, Francesco Tapparo |
SAS | 1 |
| 2001 | On the Completeness of Model Checking
Francesco Ranzato |
ESOP | 1 |
| 2000 | Making abstract interpretations completeabstractCompleteness is an ideal, although uncommon, feature of abstract interpretations, formalizing the intuition that, relatively to the properties encoded by the underlying abstract domains, there is no loss of information accumulated in abstract computations. Thus, complete abstract interpretations can be rightly understood as optimal. We deal with both pointwise completeness, involving generic semantic operations, and (least) fixpoint completeness. Completeness and fixpoint completeness are shown to be properties that depend on the underlying abstract domains only. Our primary goal is then to solve the problem of making abstract interpretations complete by minimally extending or restricting the underlying abstract domains. Under the weak and reasonable hypothesis of dealing with continuous semantic operations, we provide constructive characterizations for the least complete extensions and the greatest complete restrictions of abstract domains. As far as fixpoint completeness is concerned, for merely monotone semantic operators, the greatest restrictions of abstract domains are constructively characterized, while it is shown that the existence of least extensions of abstract domains cannot be, in general, guaranteed, even under strong hypotheses. These methodologies, which in finite settings give rise to effective algorithms, provide advanced formal tools for manipulating and comparing abstract interpretations, useful both in static program analysis and in semantics design. A number of examples illustrating these techniques are given. Roberto Giacobazzi, Francesco Ranzato, Francesca Scozzari |
J. ACM | 2 |
| 1999 | Closures on CPOs Form Complete Lattices
Francesco Ranzato |
Inf. Comput. | 1 |
| 1999 | The Powerset Operator on Abstract Interpretations
Gilberto Filé, Francesco Ranzato |
Theor. Comput. Sci. | 2 |
| 1999 | The Reduced Relative Power Operation on Abstract Domains
Roberto Giacobazzi, Francesco Ranzato |
Theor. Comput. Sci. | 2 |
| 1998 | Complete Abstract Interpretations Made Constructive
Roberto Giacobazzi, Francesco Ranzato, Francesca Scozzari |
MFCS | 2 |
| 1998 | Building Complete Abstract Interpretations in a Linear Logic-based Setting
Roberto Giacobazzi, Francesco Ranzato, Francesca Scozzari |
SAS | 2 |
| 1998 | Uniform Closures: Order-Theoretically Reconstructing Logic Program Semantics and Abstract Domain Refinements
Roberto Giacobazzi, Francesco Ranzato |
Inf. Comput. | 2 |
| 1998 | Optimal Domains for Disjunctive Abstract Intepretation
Roberto Giacobazzi, Francesco Ranzato |
Sci. Comput. Program. | 2 |
| 1997 | Refining and Compressing Abstract Domains
Roberto Giacobazzi, Francesco Ranzato |
ICALP | 2 |
| 1997 | Complementation in Abstract InterpretationabstractReduced product of abstract domains is a rather well-known operation for domain composition in abstract interpretation. In this article, we study its inverse operation, introducing a notion of domain complementation in abstract interpretation. Complementation provides as systematic way to design new abstract domains, and it allows to systematically decompose domains. Also, such an operation allows to simplify domain verification problems, and it yields space-saving representations for complex domains. We show that the complement exists in most coses, and we apply complementation to three well-know abstract domains, notably to Cousot and Cousot's interval domain for integer variable analysis, to Cousot and Cousot's domain for comportment analysis of functional languages, and to the domain Sharing for aliasing analysis of logic languages. Agostino Cortesi, Gilberto Filé, Roberto Giacobazzi, Catuscia Palamidessi, Francesco Ranzato |
ACM Trans. Program. Lang. Syst. | 5 |
| 1996 | Compositional Optimization of Disjunctive Abstract Interpretations
Roberto Giacobazzi, Francesco Ranzato |
ESOP | 2 |
| 1995 | Complementation in Abstract Interpretation
Agostino Cortesi, Gilberto Filé, Roberto Giacobazzi, Catuscia Palamidessi, Francesco Ranzato |
SAS | 5 |