Enrico Ghiorzi

dblp:283/5297 · DBLP profile ↗
← Back
7ranked-venue papers
0as first author
7since 2021 · last 2026
0000-0001-5983-6230ORCID · corroborated

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

Theory of computation · 4 · 4 since 2021Software engineering, systems software and programming languages · 3 · 3 since 2021Artificial intelligence and machine learning · 2 · 2 since 2021Systems, architecture and hardware · 1 · 1 since 2021
YearPublicationVenuePosition
2026 Integrating Simulation and Verification to Assess Safety of Robot Control Software
abstract
One of the cornerstones in formal system verification is Model Checking (MC), a technique to verify systems against properties expressed in some temporal logic by exhaustive exploration of the state space. While MC can succesfully cope with many cases of practical interests, its ability to scale to systems of substantial size remains an open challenge. Statistical MC (SMC) has been proposed to improve the scalability of MC by confining the exploration to sample traces obtained by executing the system model, and thus yielding estimates of the probability of satisfying given properties instead of Boolean results. Most SMC tools still rely on formal and abstract system models, but such models often miss important details which may hinder the effectiveness of verification. In this paper, we introduce a framework to combine SMC with simulation or even actual execution of some system components. We do this using SMC plugins, i.e., executable components that can be referenced in an extended version of the JANI format, a widely adopted language to specify models for SMC. The plugins can be loaded by a SMC tool during verification and provide feedback about the actual execution of the system which is more accurate than abstract models. We illustrate the feasibility of this technique through two robotics use cases, showing how SMC plugins can be used to effectively model and verify systems
Marco Lampacrescia, Matteo Palmas, Enrico Ghiorzi, Christian Henkel, Michaela Klauck, Armando Tacchella
ECMS3
2025 Code Generation and Monitoring for Deliberation Components in Autonomous Robots
abstract
Hand-coded deliberation components are prone to flaws that may not be discovered before deployment and that can be harmful to the robot and its execution environment, including the people within it. To reduce development effort and at the same time increase confidence in robot’s safety, we propose to model deliberation components at a conceptual level, to automatically generate code from such models and also to monitor their execution during robot operation. We present two tools, one which compiles models of deliberation components into executable code, and one which generates runtime monitors from the models. We have tested them in simulation, to demonstrate the usefulness of combining together model-based development, code generation, and monitoring.
Stefano Bernagozzi, Sofia Faraci, Enrico Ghiorzi, K. Pedemonte, Lorenzo Natale, Armando Tacchella
IROS3
2025 Translating Behavior Trees to Petri Nets for Model Checking
Matteo Palmas, Michaela Klauck, Ralph Lange, Enrico Ghiorzi, Armando Tacchella
MODELS4
2024 GADTs are not (Even partial) functors
abstract
Abstract Generalized Algebraic Data Types (GADTs) are a syntactic generalization of the usual algebraic data types (ADTs), such as lists, trees, etc. ADTs’ standard initial algebra semantics (IAS) in the category $\mathit{Set}$ of sets justify critical syntactic constructs – such as recursion, pattern matching, and fold – for programming with them. In this paper, we show that semantics for GADTs that specialize to the IAS for ADTs are necessarily unsatisfactory. First, we show that the functorial nature of such semantics for GADTs in $\mathit{Set}$ introduces ghost elements, i.e., elements not writable in syntax. Next, we show how such ghost elements break parametricity. We observe that the situation for GADTs contrasts dramatically with that for ADTs, whose IAS coincides with the parametric model constructed via their Church encodings in System F. Our analysis reveals that the fundamental obstacle to giving a functorial IAS for GADTs is the inherently partial nature of their map functions. We show that this obstacle cannot be overcome by replacing $\mathit{Set}$ with other categories that account for this partiality.
Pierre Cagne, Enrico Ghiorzi, Patricia Johann
Math. Struct. Comput. Sci.2
2022 (Deep) induction rules for GADTs
abstract
Deep data types are those that are constructed from other data types, including, possibly, themselves. In this case, they are said to be truly nested. Deep induction is an extension of structural induction that traverses all of the structure in a deep data type, propagating predicates on its primitive data throughout the entire structure. Deep induction can be used to prove properties of nested types, including truly nested types, that cannot be proved via structural induction. In this paper we show how to extend deep induction to GADTs that are not truly nested GADTs. This opens the way to incorporating automatic generation of (deep) induction rules for them into proof assistants. We also show that the techniques developed in this paper do not suffice for extending deep induction to truly nested GADTs, so more sophisticated techniques are needed to derive deep induction rules for them.
Patricia Johann, Enrico Ghiorzi
CPP2
2021 Parametricity for Primitive Nested Types
abstract
Abstract This paper considers parametricity and its resulting free theorems for nested data types. Rather than representing nested types via their Church encodings in a higher-kinded or dependently typed extension of System F, we adopt a functional programming perspective and design a Hindley-Milner-style calculus with primitives for constructing nested types directly as fixpoints. Our calculus can express all nested types appearing in the literature, including truly nested types. At the term level, it supports primitive pattern matching, map functions, and fold combinators for nested types. Our main contribution is the construction of a parametric model for our calculus. This is both delicate and challenging: to ensure the existence of semantic fixpoints interpreting nested types, and thus to establish a suitable Identity Extension Lemma for our calculus, our type system must explicitly track functoriality of types, and cocontinuity conditions on the functors interpreting them must be appropriately threaded throughout the model construction. We prove that our model satisfies an appropriate Abstraction Theorem and verifies all standard consequences of parametricity for primitive nested types.
Patricia Johann, Enrico Ghiorzi, Daniel Jeffries
FoSSaCS2
2021 Parametricity for Nested Types and GADTs
abstract
This paper considers parametricity and its consequent free theorems for nested data types. Rather than representing nested types via their Church encodings in a higher-kinded or dependently typed extension of System F, we adopt a functional programming perspective and design a Hindley-Milner-style calculus with primitives for constructing nested types directly as fixpoints. Our calculus can express all nested types appearing in the literature, including truly nested types. At the level of terms, it supports primitive pattern matching, map functions, and fold combinators for nested types. Our main contribution is the construction of a parametric model for our calculus. This is both delicate and challenging. In particular, to ensure the existence of semantic fixpoints interpreting nested types, and thus to establish a suitable Identity Extension Lemma for our calculus, our type system must explicitly track functoriality of types, and cocontinuity conditions on the functors interpreting them must be appropriately threaded throughout the model construction. We also prove that our model satisfies an appropriate Abstraction Theorem, as well as that it verifies all standard consequences of parametricity in the presence of primitive nested types. We give several concrete examples illustrating how our model can be used to derive useful free theorems, including a short cut fusion transformation, for programs over nested types. Finally, we consider generalizing our results to GADTs, and argue that no extension of our parametric model for nested types can give a functorial interpretation of GADTs in terms of left Kan extensions and still be parametric.
Patricia Johann, Enrico Ghiorzi
Log. Methods Comput. Sci.2