Adrian Francalanza

dblp:91/2771 · DBLP profile ↗
← Back
70ranked-venue papers
19as first author
30since 2021 · last 2026
0000-0003-3829-7391ORCID · verified

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

Software engineering, systems software and programming languages · 42 · 10 first-author · 16 since 2021Theory of computation · 24 · 8 first-author · 9 since 2021Computer networks · 5 · 1 first-author · 4 since 2021
YearPublicationVenuePosition
2026 Soundness of Typed Transitions in the Linear π-Calculus
Adrian Francalanza, Marco Giunti, António Ravara
FORTE1
2026 Grits: A message-passing programming language based on the semi-axiomatic sequent calculus
Adrian Francalanza, Gerard Tabone, Frank Pfenning
Sci. Comput. Program.1
2026 Centralized vs. Decentralized Monitors for Hyperproperties
abstract
This article focuses on the runtime verification of hyperproperties expressed in Hyper- \(\mathsf{rec}\) HML, an expressive yet simple logic for describing properties of sets of traces. To this end, we consider a simple language of monitors that observe sets of system executions and report verdicts w.r.t. a given Hyper- \(\mathsf{rec}\) HML formula. We first employ a unique omniscient monitor that centrally observes all system traces. Since centralized monitors are not ideal for distributed settings, we also provide a language for decentralized monitors, where each trace has a dedicated monitor; these monitors yield a unique verdict by communicating their observations to one another. For both the centralized and the decentralized settings, we provide a synthesis procedure that, given a formula, yields a monitor that is correct (i.e., sound and violation complete). A key step in proving the correctness of the synthesis for decentralized monitors is a result showing that, for each formula, the synthesized centralized monitor and its corresponding decentralized one are weakly bisimilar for a suitable notion of weak bisimulation.
Luca Aceto, Antonis Achilleos, Elli Anastasiadi, Adrian Francalanza, Daniele Gorla, Jana Wagemaker
ACM Trans. Comput. Log.4
2025 Monitorability for the Modal Mu-Calculus over Systems with Data: From Practice to Theory
abstract
Runtime verification consists in checking whether a system satisfies a given specification by observing the execution trace it produces. In the regular setting, the modal μ-calculus provides a versatile formalism for expressing specifications of the control flow of the system. This paper focuses on the data flow and studies an extension of that logic that allows it to express data-dependent properties, identifying fragments that can be verified at runtime and with what correctness guarantees. The logic studied here is closely related with register automata with guessing. That correspondence yields a monitor synthesis algorithm, and a strict hierarchy among the various fragments of the logic, in contrast to the regular setting. We then exhibit a fragment of the logic that can express all monitorable formulae in the logic without greatest fixed-points but not in the full logic, and show this is the best we can get.
Luca Aceto, Antonis Achilleos, Duncan Paul Attard, Léo Exibard, Adrian Francalanza, Anna Ingólfsdóttir, Karoliina Lehtinen
CONCUR5
2025 A Theory of (Linear-Time) Timed Monitors
abstract
Runtime Verification (RV) is gaining popularity due to its scalability and ability to analyse block-box systems. Monitoring is at the heart of RV; a logical formula ϕ, formalising some property of interest, is typically translated into a monitor that checks whether the system under scrutiny satisfies ϕ during its execution. A logical formula ϕ is violation (resp. satisfaction) monitorable iff there exists a monitor for ϕ that is both sound and complete w.r.t. its violation (resp. satisfaction). The monitorability problem is thus concerned with determining the largest subset of a logic L that is monitorable. Although this problem has been solved for expressive untimed logics, it remains open for timed logics, where formulae can express both the order of events and the quantity of time separating them. This paper solves the monitorability problem for T^lin, a new expressive (linear-time) timed μ-calculus that we propose. First, we show that T^lin is strictly more expressive than MTL, the de facto timed extension of LTL. Second, we identify MT^lin, the largest monitorable fragment of T^lin: we characterise its largest subsets of formulae that are violation monitorable, satisfaction monitorable, and complete monitorable (both satisfaction and violation monitorable). To wit, this is the first work that answers the monitorability question for such an expressive timed logic.
Mouloud Amara, Giovanni Tito Bernardi, Mohammed Foughali, Adrian Francalanza
ECOOP4
2025 If At First You Don't Succeed: Extended Monitorability through Multiple Executions
abstract
This paper studies the extent to which branching-time properties can be adequately verified using runtime monitors. We depart from the classical setup where monitoring is limited to a single system execution and investigate the enhanced observational capabilities when monitoring a system over multiple runs. To ensure generality, we focus on branching-time properties expressed in the modal µ-calculus, a well-studied foundational logic. Our results show that the proposed setup can systematically extend established monitorability limits for branching-time properties. We validate our results by instantiating them to verify actor-based systems. We also prove bounds that capture the correspondence between the syntactic structure of a property and the number of required system runs.
Antonis Achilleos, Adrian Francalanza, Jasmine Xuereb
LICS2
2025 Correct Black-Box Monitors for Distributed Deadlock Detection: Formalisation and Implementation
abstract
Many software applications rely on concurrent and distributed (micro)services that interact via message passing and various forms of remote procedure calls (RPC). As these systems organically evolve and grow in scale and complexity, the risk of introducing deadlocks increases and their impact may worsen: even if only a few services deadlock, many other services may block while awaiting responses from the deadlocked ones. As a result, the “core” of the deadlock can be obfuscated by its consequences on the rest of the system, and diagnosing and fixing the problem can be challenging. In this work we tackle the challenge by proposing distributed black-box monitors that are deployed alongside each service and detect deadlocks by only observing the incoming and outgoing messages, and exchanging probes with other monitors. We present a formal model that captures popular RPC-based application styles (e.g., gen_servers in Erlang/OTP), and a distributed black-box monitoring algorithm that we prove sound and complete (i.e., identifies deadlocked services with neither false positives nor false negatives). We implement our results in a tool called DDMon for the monitoring of Erlang/OTP applications, and we evaluate its performance. This is the first work that formalises, proves the correctness, and implements distributed black-box monitors for deadlock detection. Our results are mechanised in Coq. DDMon is the companion artifact of this paper.
Radoslaw Jan Rowicki, Adrian Francalanza, Alceste Scalas
Proc. ACM Program. Lang.2
2024 Centralized vs Decentralized Monitors for Hyperproperties
abstract
This paper focuses on the runtime verification of hyperproperties expressed in Hyper-recHML, an expressive yet simple logic for describing properties of sets of traces. To this end, we consider a simple language of monitors that observe sets of system executions and report verdicts w.r.t. a given Hyper-recHML formula. We first employ a unique omniscient monitor that centrally observes all system traces. Since centralised monitors are not ideal for distributed settings, we also provide a language for decentralized monitors, where each trace has a dedicated monitor; these monitors yield a unique verdict by communicating their observations to one another. For both the centralized and the decentralized settings, we provide a synthesis procedure that, given a formula, yields a monitor that is correct (i.e., sound and violation complete). A key step in proving the correctness of the synthesis for decentralized monitors is a result showing that, for each formula, the synthesized centralized monitor and its corresponding decentralized one are weakly bisimilar for a suitable notion of weak bisimulation.
Luca Aceto, Antonis Achilleos, Elli Anastasiadi, Adrian Francalanza, Daniele Gorla, Jana Wagemaker
CONCUR4
2024 COTS: Connected OpenAPI Test Synthesis for RESTful Applications
Christian Bartolo Burlò, Adrian Francalanza, Alceste Scalas, Emilio Tuosto
COORDINATION2
2024 Implementing a Message-Passing Interpretation of the Semi-Axiomatic Sequent Calculus (Sax)
Adrian Francalanza, Gerard Tabone, Frank Pfenning
COORDINATION1
2024 Runtime Instrumentation for Reactive Components
Luca Aceto, Duncan Paul Attard, Adrian Francalanza, Anna Ingólfsdóttir
ECOOP3
2024 Complexity results for modal logic with recursion via translations and tableaux
abstract
This paper studies the complexity of classical modal logics and of their extension with fixed-point operators, using translations to transfer results across logics. In particular, we show several complexity results for multi-agent logics via translations to and from the $\mu$-calculus and modal logic, which allow us to transfer known upper and lower bounds. We also use these translations to introduce terminating and non-terminating tableau systems for the logics we study, based on Kozen's tableau for the $\mu$-calculus and the one of Fitting and Massacci for modal logic. Finally, we describe these tableaux with $\mu$-calculus formulas, thus reducing the satisfiability of each of these logics to the satisfiability of the $\mu$-calculus, resulting in a general 2EXP upper bound for satisfiability testing.
Luca Aceto, Antonis Achilleos, Elli Anastasiadi, Adrian Francalanza, Anna Ingólfsdóttir
Log. Methods Comput. Sci.4
2024 A monitoring tool for linear-time μHML
Luca Aceto, Antonis Achilleos, Duncan Paul Attard, Léo Exibard, Adrian Francalanza, Anna Ingólfsdóttir
Sci. Comput. Program.5
2023 On first-order runtime enforcement of branching-time properties
Luca Aceto, Ian Cassar, Adrian Francalanza, Anna Ingólfsdóttir
Acta Informatica3
2023 ElixirST: A session-based type system for Elixir modules
Adrian Francalanza, Gerard Tabone
J. Log. Algebraic Methods Program.1
2023 Bidirectional Runtime Enforcement of First-Order Branching-Time Properties
abstract
Runtime enforcement is a dynamic analysis technique that instruments a monitor with a system in order to ensure its correctness as specified by some property. This paper explores bidirectional enforcement strategies for properties describing the input and output behaviour of a system. We develop an operational framework for bidirectional enforcement and use it to study the enforceability of the safety fragment of Hennessy-Milner logic with recursion (sHML). We provide an automated synthesis function that generates correct monitors from sHML formulas, and show that this logic is enforceable via a specific type of bidirectional enforcement monitors called action disabling monitors.
Luca Aceto, Ian Cassar, Adrian Francalanza, Anna Ingólfsdóttir
Log. Methods Comput. Sci.3
2022 A Monitoring Tool for Linear-Time μHML
Luca Aceto, Antonis Achilleos, Duncan Paul Attard, Léo Exibard, Adrian Francalanza, Anna Ingólfsdóttir
COORDINATION5
2022 A Synthesis Tool for Optimal Monitors in a Branching-Time Setting
Antonis Achilleos, Léo Exibard, Adrian Francalanza, Karoliina Lehtinen, Jasmine Xuereb
COORDINATION3
2022 Monitoring Hyperproperties with Circuits
Luca Aceto, Antonis Achilleos, Elli Anastasiadi, Adrian Francalanza
FORTE4
2022 PSTMonitor: Monitor synthesis from probabilistic session types
Christian Bartolo Burlò, Adrian Francalanza, Alceste Scalas, Catia Trubiani, Emilio Tuosto
Sci. Comput. Program.2
2021 Towards Probabilistic Session-Type Monitoring
Christian Bartolo Burlò, Adrian Francalanza, Alceste Scalas, Catia Trubiani, Emilio Tuosto
COORDINATION2
2021 The Best a Monitor Can Do
abstract
Existing notions of monitorability for branching-time properties are fairly restrictive. This, in turn, impacts the ability to incorporate prior knowledge about the system under scrutiny - which corresponds to a branching-time property - into the runtime analysis. We propose a definition of optimal monitors that verify the best monitorable under- or over-approximation of a specification, regardless of its monitorability status. Optimal monitors can be obtained for arbitrary branching-time properties by synthesising a sound and complete monitor for their strongest monitorable consequence. We show that the strongest monitorable consequence of specifications expressed in Hennessy-Milner logic with recursion is itself expressible in this logic, and present a procedure to find it. Our procedure enables prior knowledge to be optimally incorporated into runtime monitors.
Luca Aceto, Antonis Achilleos, Adrian Francalanza, Anna Ingólfsdóttir, Karoliina Lehtinen
CSL3
2021 On the Monitorability of Session Types, in Theory and Practice
abstract
Software components are expected to communicate according to predetermined protocols and APIs. Numerous methods have been proposed to check the correctness of communicating systems against such protocols/APIs. Session types are one such method, used both for static type-checking as well as for run-time monitoring. This work takes a fresh look at the run-time verification of communicating systems using session types, in theory and in practice. On the theoretical side, we develop a formal model of session-monitored processes. We then use this model to formulate and prove new results on the monitorability of session types, defined in terms of soundness (i.e., whether monitors only flag ill-typed processes) and completeness (i.e., whether all ill-typed processes can be flagged by a monitor). On the practical side, we show that our monitoring theory is indeed realisable: we instantiate our formal model as a Scala toolkit (called STMonitor) for the automatic generation of session monitors. These executable monitors can be used as proxies to instrument communication across black-box processes written in any programming language. Finally, we evaluate the viability of our approach through a series of benchmarks.
Christian Bartolo Burlò, Adrian Francalanza, Alceste Scalas
ECOOP2
2021 On Benchmarking for Concurrent Runtime Verification
abstract
Abstract We present a synthetic benchmarking framework that targets the systematic evaluation of RV tools for message-based concurrent systems. Our tool can emulate various load profiles via configuration. It provides a multi-faceted view of measurements that is conducive to a comprehensive assessment of the overhead induced by runtime monitoring. The tool is able to generate significant loads to reveal edge case behaviour that may only emerge when the monitoring system is pushed to its limit. We evaluate our framework in two ways. First, we conduct sanity checks to assess the precision of the measurement mechanisms used, the repeatability of the results obtained, and the veracity of the behaviour emulated by our synthetic benchmark. We then showcase the utility of the features offered by our tool in a two-part RV case study.
Luca Aceto, Duncan Paul Attard, Adrian Francalanza, Anna Ingólfsdóttir
FASE3
2021 On Bidirectional Runtime Enforcement
Luca Aceto, Ian Cassar, Adrian Francalanza, Anna Ingólfsdóttir
FORTE3
2021 Better Late Than Never or: Verifying Asynchronous Components at Runtime
Duncan Paul Attard, Luca Aceto, Antonis Achilleos, Adrian Francalanza, Anna Ingólfsdóttir, Karoliina Lehtinen
FORTE4
2021 A theory of monitors
Adrian Francalanza
Inf. Comput.1
2021 Computer says no: Verdict explainability for runtime monitors using a local proof system
Adrian Francalanza, Clare Cini
J. Log. Algebraic Methods Program.1
2021 An operational guide to monitorability with applications to regular properties
Luca Aceto, Antonis Achilleos, Adrian Francalanza, Anna Ingólfsdóttir, Karoliina Lehtinen
Softw. Syst. Model.3
2021 Comparing controlled system synthesis and suppression enforcement
Luca Aceto, Ian Cassar, Adrian Francalanza, Anna Ingólfsdóttir
Int. J. Softw. Tools Technol. Transf.3
2020 Behavioural Types for Memory and Method Safety in a Core Object-Oriented Language
Mario Bravetti, Adrian Francalanza, Iaroslav Golovanov, Hans Hüttel, Mathias Jakobsen, Mikkel Kettunen, António Ravara
APLAS2
2020 On Implementing Symbolic Controllability
Adrian Francalanza, Jasmine Xuereb
COORDINATION1
2020 Towards a Hybrid Verification Methodology for Communication Protocols (Short Paper)
Christian Bartolo Burlò, Adrian Francalanza, Alceste Scalas
FORTE2
2020 The complexity of identifying characteristic formulae
Luca Aceto, Antonis Achilleos, Adrian Francalanza, Anna Ingólfsdóttir
J. Log. Algebraic Methods Program.3
2020 Determinizing monitors for HML with recursion
Luca Aceto, Antonis Achilleos, Adrian Francalanza, Anna Ingólfsdóttir, Sævar Örn Kjartansson
J. Log. Algebraic Methods Program.3
2019 Comparing Controlled System Synthesis and Suppression Enforcement
Luca Aceto, Ian Cassar, Adrian Francalanza, Anna Ingólfsdóttir
RV3
2019 An Operational Guide to Monitorability
Luca Aceto, Antonis Achilleos, Adrian Francalanza, Anna Ingólfsdóttir, Karoliina Lehtinen
SEFM3
2019 A survey of challenges for runtime verification from advanced application domains (beyond software)
abstract
Abstract Runtime verification is an area of formal methods that studies the dynamic analysis of execution traces against formal specifications. Typically, the two main activities in runtime verification efforts are the process of creating monitors from specifications, and the algorithms for the evaluation of traces against the generated monitors. Other activities involve the instrumentation of the system to generate the trace and the communication between the system under analysis and the monitor. Most of the applications in runtime verification have been focused on the dynamic analysis of software, even though there are many more potential applications to other computational devices and target systems. In this paper we present a collection of challenges for runtime verification extracted from concrete application domains, focusing on the difficulties that must be overcome to tackle these specific challenges. The computational models that characterize these domains require to devise new techniques beyond the current state of the art in runtime verification.
César Sánchez 0001, Gerardo Schneider, Wolfgang Ahrendt, Ezio Bartocci, Domenico Bianculli, Christian Colombo 0001, Yliès Falcone, Adrian Francalanza, Srdan Krstic, João Lourenço, Dejan Nickovic, Gordon J. Pace, José Rufino, Julien Signoles, Dmitriy Traytel, Alexander Weiss
Formal Methods Syst. Des.8
2019 Correction to: A survey of challenges for runtime verification from advanced application domains (beyond software)
César Sánchez 0001, Gerardo Schneider, Wolfgang Ahrendt, Ezio Bartocci, Domenico Bianculli, Christian Colombo 0001, Yliès Falcone, Adrian Francalanza, Srdan Krstic, João Lourenço, Dejan Nickovic, Gordon J. Pace, José Rufino, Julien Signoles, Dmitriy Traytel, Alexander Weiss
Formal Methods Syst. Des.8
2019 Adventures in monitorability: from branching to linear time and back again
abstract
This paper establishes a comprehensive theory of runtime monitorability for Hennessy-Milner logic with recursion, a very expressive variant of the modal µ-calculus. It investigates the monitorability of that logic with a linear-time semantics and then compares the obtained results with ones that were previously presented in the literature for a branching-time setting. Our work establishes an expressiveness hierarchy of monitorable fragments of Hennessy-Milner logic with recursion in a linear-time setting and exactly identifies what kinds of guarantees can be given using runtime monitors for each fragment in the hierarchy. Each fragment is shown to be complete, in the sense that it can express all properties that can be monitored under the corresponding guarantees. The study is carried out using a principled approach to monitoring that connects the semantics of the logic and the operational semantics of monitors. The proposed framework supports the automatic, compositional synthesis of correct monitors from monitorable properties.
Luca Aceto, Antonis Achilleos, Adrian Francalanza, Anna Ingólfsdóttir, Karoliina Lehtinen
Proc. ACM Program. Lang.3
2018 On Runtime Enforcement via Suppressions
abstract
Runtime enforcement is a dynamic analysis technique that uses monitors to enforce the behaviour specified by some correctness property on an executing system. The enforceability of a logic captures the extent to which the properties expressible via the logic can be enforced at runtime. We study the enforceability of Hennessy-Milner Logic with Recursion (muHML) with respect to suppression enforcement. We develop an operational framework for enforcement which we then use to formalise when a monitor enforces a muHML property. We also show that the safety syntactic fragment of the logic, sHML, is enforceable by providing an automated synthesis function that generates correct suppression monitors from sHML formulas.
Luca Aceto, Ian Cassar, Adrian Francalanza, Anna Ingólfsdóttir
CONCUR3
2018 Reversible Choreographies via Monitoring in Erlang
Adrian Francalanza, Claudio Antares Mezzina, Emilio Tuosto
DAIS1
2018 A Framework for Parameterized Monitorability
abstract
We introduce a general framework for Runtime Verification, parameterized with respect to a set of conditions. These conditions are encoded in the trace generated by a monitored process, which a monitor can observe. We present this parameterized framework in its general form and prove that it corresponds to a fragment of HML with recursion, extended with these conditions. We then show how this framework can be applied to a number of instantiations of the set of conditions. 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.
Luca Aceto, Antonis Achilleos, Adrian Francalanza, Anna Ingólfsdóttir
FoSSaCS3
2018 Shooting from the heap: ultra-scalable static analysis with heap snapshots
abstract
Traditional whole-program static analysis (e.g., a points-to analysis that models the heap) encounters scalability problems for realistic applications. We propose a ``featherweight'' analysis that combines a dynamic snapshot of the heap with otherwise full static analysis of program behavior.
Neville Grech, Georgios Fourtounis 0001, Adrian Francalanza, Yannis Smaragdakis
ISSTA3
2018 Full-abstraction for client testing preorders
Giovanni Tito Bernardi, Adrian Francalanza
Sci. Comput. Program.2
2017 Consistently-Detecting Monitors
abstract
We study a contextual definition for deterministic monitoring based on consistent detections. It is defined in terms of the observed behaviour of the monitor when instrumented over arbitrary systems. We give an alternative, coinductive definition based on controllability which does not rely on system quantifications, and show that it is fully-abstract with respect to the former definition. We then develop a symbolic counterpart to the controllability definition to facilitate an automated analysis for controllable monitors involving data.
Adrian Francalanza
CONCUR1
2017 Full-Abstraction for Must Testing Preorders - (Extended Abstract)
Giovanni Tito Bernardi, Adrian Francalanza
COORDINATION2
2017 Monitoring for Silent Actions
abstract
Silent actions are an essential mechanism for system modelling and specification. They are used to abstractly report the occurrence of computation steps without divulging their precise details, thereby enabling the description of important aspects such as the branching structure of a system. Yet, their use rarely features in specification logics used in runtime verification. We study monitorability aspects of a branching-time logic that employs silent actions, identifying which formulas are monitorable for a number of instrumentation setups. We also consider defective instrumentation setups that imprecisely report silent events, and establish monitorability results for tolerating these imperfections.
Luca Aceto, Antonis Achilleos, Adrian Francalanza, Anna Ingólfsdóttir
FSTTCS3
2017 A Foundation for Runtime Monitoring
Adrian Francalanza, Luca Aceto, Antonis Achilleos, Duncan Paul Attard, Ian Cassar, Dario Della Monica, Anna Ingólfsdóttir
RV1
2017 Trace Partitioning and Local Monitoring for Asynchronous Components
Duncan Paul Attard, Adrian Francalanza
SEFM2
2017 On the Complexity of Determinizing Monitors
Luca Aceto, Antonis Achilleos, Adrian Francalanza, Anna Ingólfsdóttir, Sævar Örn Kjartansson
CIAA3
2017 Monitorability for the Hennessy-Milner logic with recursion
Adrian Francalanza, Luca Aceto, Anna Ingólfsdóttir
Formal Methods Syst. Des.1
2017 Heaps don't lie: countering unsoundness with heap snapshots
abstract
Static analyses aspire to explore all possible executions in order to achieve soundness. Yet, in practice, they fail to capture common dynamic behavior. Enhancing static analyses with dynamic information is a common pattern, with tools such as Tamiflex. Past approaches, however, miss significant portions of dynamic behavior, due to native code, unsupported features (e.g., invokedynamic or lambdas in Java), and more. We present techniques that substantially counteract the unsoundness of a static analysis, with virtually no intrusion to the analysis logic. Our approach is reified in the HeapDL toolchain and consists in taking whole-heap snapshots during program execution, that are further enriched to capture significant aspects of dynamic behavior, regardless of the causes of such behavior. The snapshots are then used as extra inputs to the static analysis. The approach exhibits both portability and significantly increased coverage. Heap information under one set of dynamic inputs allows a static analysis to cover many more behaviors under other inputs. A HeapDL-enhanced static analysis of the DaCapo benchmarks computes 99.5% (median) of the call-graph edges of unseen dynamic executions (vs. 76.9% for the Tamiflex tool).
Neville Grech, Georgios Fourtounis 0001, Adrian Francalanza, Yannis Smaragdakis
Proc. ACM Program. Lang.3
2016 A Theory of Monitors - (Extended Abstract)
Adrian Francalanza
FoSSaCS1
2016 On Implementing a Monitor-Oriented Programming Framework for Actor Systems
Ian Cassar, Adrian Francalanza
IFM2
2016 A Monitoring Tool for a Branching-Time Logic
Duncan Paul Attard, Adrian Francalanza
RV2
2015 Runtime Adaptation for Actor Systems
Ian Cassar, Adrian Francalanza
RV2
2015 On Verifying Hennessy-Milner Logic with Recursion at Runtime
Adrian Francalanza, Luca Aceto, Anna Ingólfsdóttir
RV1
2015 Investigating Instrumentation Techniques for ESB Runtime Verification
Christian Colombo 0001, Gabriel Dimech, Adrian Francalanza
SEFM3
2015 An LTL Proof System for Runtime Verification
Clare Cini, Adrian Francalanza
TACAS2
2015 Synthesising correct concurrent runtime monitors
Adrian Francalanza, Aldrin Seychell
Formal Methods Syst. Des.1
2014 Uniqueness typing for resource management in message-passing concurrency
abstract
We view channels as the main form of resources in a message-passing programming paradigm. These channels need to be carefully managed in settings where resources are scarce. To study this problem, we extend the pi-calculus with primitives for channel allocation and deallocation and allow channels to be reused to communicate values of different types. Inevitably, the added expressiveness increases the possibilities for runtime errors. We define a substructural type system, which combines uniqueness typing and affine typing to reject these ill-behaved programs.
Edsko de Vries, Adrian Francalanza, Matthew Hennessy
J. Log. Comput.2
2013 Synthesising Correct Concurrent Runtime Monitors - (Extended Abstract)
Adrian Francalanza, Aldrin Seychell
RV1
2012 polyLarva: Runtime Verification with Configurable Resource-Aware Monitoring Boundaries
Christian Colombo 0001, Adrian Francalanza, Ruth Mizzi, Gordon J. Pace
SEFM2
2011 Elarva: A Monitoring Tool for Erlang
Christian Colombo 0001, Adrian Francalanza, Rudolph Gatt
RV2
2008 A Unified Framework for Verification Techniques for Object Invariants
Sophia Drossopoulou, Adrian Francalanza, Peter Müller 0001, Alexander J. Summers
ECOOP2
2008 A theory of system behaviour in the presence of node and link failure
Adrian Francalanza, Matthew Hennessy
Inf. Comput.1
2007 A Fault Tolerance Bisimulation Proof for Consensus (Extended Abstract)
Adrian Francalanza, Matthew Hennessy
ESOP1
2006 A Theory for Observational Fault Tolerance
Adrian Francalanza, Matthew Hennessy
FoSSaCS1
2005 A Theory of System Behaviour in the Presence of Node and Link Failures
Adrian Francalanza, Matthew Hennessy
CONCUR1