VLDB 2026 Research / reviewers in the wild / expert
César Sánchez 0001
dblp:38/1858
· DBLP profile ↗
101ranked-venue papers
17as first author
48since 2021 · last 2026
0000-0003-3927-4773ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 57 · 6 first-author · 30 since 2021Theory of computation · 36 · 5 first-author · 19 since 2021Artificial intelligence and machine learning · 13 · 1 first-author · 7 since 2021Systems, architecture and hardware · 4 · 2 first-author · 1 since 2021Security and privacy · 4 · 4 since 2021Applied, interdisciplinary, general and emerging computing · 4 · 2 first-author · 1 since 2021Computer networks · 2 · 2 first-authorGraphics, computer vision, multimedia, augmented reality and games · 2 · 2 since 2021Databases, data management, data science and information retrieval · 1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Maximum Realizability for LTL Modulo TheoriesabstractAbstract The synthesis of systems from formal specifications is a fundamental problem in symbolic AI and formal methods where the goal is to automatically construct implementations that meet desired requirements. In practice, specifications often include both hard constraints (critical requirements) and soft constraints (desirable properties). However, when specifications are unrealizable (due to conflicts between requirements) traditional synthesis methods fail to provide meaningful implementations or guidance. This problem has been addressed with maximum realizability , a framework for synthesizing systems that satisfy hard constraints while maximizing the satisfaction of soft constraints. However, the literature only solves this technique for classic discrete Linear Temporal Logic (LTL), whereas its extension to richer LTL modulo theories ( $$LTL _{\mathcal {T}} $$ L T L T ) remains unexplored. In this paper, we bridge this gap and we propose two approaches: (1) a method based on exhaustively traversing a set of abstractions and (2) an alternative method that incrementally refines abstractions during synthesis. Additionally, (3) we introduce lattice-based optimization techniques to further improve scalability by pruning uninteresting combinations of soft constraints. Our methods are evaluated on benchmarks from synthesis competitions and practical case studies, demonstrating their scalability and effectiveness. Andoni Rodríguez, César Sánchez 0001 |
FM (2) | 2 |
| 2026 | A Decentralized Sequencer and Data Availability Committee for Rollups Using Set Consensus
Margarita Capretto, Martín Ceresa, Antonio Fernández 0001, Pedro Moreno-Sanchez, César Sánchez 0001 |
ICBC | 5 |
| 2026 | Equilibrium: Preventing Arbitrage Attacks in Optimistic Rollups
Margarita Capretto, Martín Ceresa, Hannes Kallwies, César Sánchez 0001 |
ICBC | 4 |
| 2026 | AIGLE: A Tool for Compact, Legible AIGER Circuits from Safety SpecificationsabstractAutomated logic circuit design enhances chip performance, energy efficiency, and reliability, with applications in model-checking, reactive synthesis, and hyperproperty verification. AIGER circuits are a standard format for these domains, used in hardware model-checking, synthesis competitions such as Syntcomp, symbolic synthesis algorithms, and the verification of security properties in neural networks and safety-critical systems. Traditionally, AIGER circuits are generated from Linear Temporal Logic (LTL) specifications through complex pipelines, such as translating LTL to SMV or to automata and then to AIGER. These pipelines guarantee functional equivalence but produce large circuits with auto-generated labels that obscure the specification’s meaning. In applications like symbolic reactive synthesis, model-checking, and neural network verification, understanding latches and outputs is critical for debugging and tool improvement. In this tool paper, we introduce AIGLE, a novel tool that generates compact AIGER circuits directly from LTL[X] or Past-LTL specifications. Our approach uses linear-size translation from LTL[X] to Past-LTL, which produces highly legible circuits. Compared to tools like py-aiger, our tool reduces gate counts-—often by thousands-— improving readability and synthesis speed. Our empirical evaluation demonstrates smaller, more understandable circuits and faster synthesis, offering a scalable, engineer-friendly solution for formal methods applications. Matías Brizzio, Andoni Rodríguez, César Sánchez 0001, Renzo Degiovanni |
KR | 3 |
| 2026 | SafeTap: Trustworthy Neurosymbolic Language to Quadrupedal Locomotion via Shield Synthesis Modulo BitvectorsabstractLarge language models (LLMs) are increasingly used to control embodied agents by mapping natural-language commands to high-level actions. While this paradigm enables flexible human-robot interaction, it also introduces significant safety risks, as LLM-generated commands are not guaranteed to respect physical, environmental, or mission-critical constraints. In this paper, we present an application of reactive synthesis modulo theories to the real-time guardrailing of an LLM-controlled quadruped robot, using the first-order theory of bitvectors as a symbolic abstraction of the robot's action space and environment. Our system translates natural-language commands into discrete bitvector-encoded actions, which are then filtered by a formally synthesized guardrail (also called shield) that enforces safety and liveness properties expressed in Linear Temporal Logic modulo bitvector constraints. The shield operates online and corrects unsafe commands while preserving the intent of the human operator. We instantiate our framework in a realistic locomotion setting, inspired by recent work on language-driven robot control, and demonstrate that the robot maintains safety under adversarial and dynamic environmental conditions. This work illustrates how theory-aware synthesis can serve as a practical foundation for trustworthy human--robot interaction, enabling the deployment of learning-based controllers in safety-critical settings with formal guarantees. Andoni Rodríguez, César Sánchez 0001 |
KR | 2 |
| 2026 | Symbolic runtime verification for monitoring under uncertainties and assumptionsabstractRuntime verification (RV) examines whether a system’s run satisfies its specification. This typically requires full knowledge of the run, but many applications face imprecise or missing inputs, e.g., from noisy sensors. We aim to develop a symbolic RV procedure that can handle noisy inputs and is able to exploit assumptions that encode background knowledge about the system in order to produce reliable monitoring verdicts. As the symbolic setting in general induces increasingly large monitoring states, we aim to identify fragments of specifications where monitoring requires constant memory. After providing a formalization of the problem at hand, we propose an RV procedure and give formal correctness statements and proofs. We empirically validate our approach in two realistic case studies. The developed RV procedure is the first to effectively handle both uncertainties and assumptions in the expressive setting of Lola, and we identify relevant and expressive fragments where our procedure requires constant memory. Our evaluation witnesses the practical applicability of the approach. RV with uncertainties and assumptions is feasible in the Lola setting, and needs only constant memory in some relevant fragments. Future work will explore further theories and adapt the approach to specific applications. Raik Hipler, Hannes Kallwies, Martin Leucker, Marco Montali, César Sánchez 0001, Sarah Winkler |
Inf. Softw. Technol. | 5 |
| 2026 | Setchain algorithms for blockchain scalability
Arivarasan Karmegam, Gabina Luz Bianchi, Margarita Capretto, Martín Ceresa, Antonio Fernández 0001, César Sánchez 0001 |
Theor. Comput. Sci. | 6 |
| 2026 | Extensions of HyperLTL for Asynchronous HyperpropertiesabstractHyperproperties are a modern specification paradigm that extends properties of a single trace to express properties of a set of traces. Temporal logics for hyperproperties studied in the literature, including HyperLTL, assume a synchronous semantics and enjoy a decidable model checking problem. In this article, we introduce two asynchronous and orthogonal extensions of HyperLTL, Stuttering HyperLTL (HyperLTL \({}_{S}\) ) and Context HyperLTL (HyperLTL \({}_{C}\) ). Both of these extensions are useful, for instance, to formulate asynchronous variants of information-flow security properties. We show that for these logics, model checking is in general undecidable. On the positive side, for each of them, we identify a fragment with a decidable model checking problem that subsumes HyperLTL and that can express meaningful asynchronous requirements. Moreover, we provide the exact computational complexity of model checking for these two fragments which, for the HyperLTL \({}_{S}\) fragment, coincides with that of the strictly less expressive logic HyperLTL. Laura Bozzelli, Adriano Peron, César Sánchez 0001 |
ACM Trans. Comput. Log. | 3 |
| 2025 | Shield Synthesis for LTL Modulo TheoriesabstractIn recent years, Machine Learning (ML) models have achieved remarkable success in various domains. However, these models also tend to demonstrate unsafe behaviors, precluding their deployment in safety-critical systems. To cope with this issue, ample research focuses on developing methods that guarantee the safe behaviour of a given ML model. A prominent example is shielding which incorporates an ex- ternal component (a “shield”) that blocks unwanted behavior. Despite significant progress, shielding suffers from a main setback: it is currently geared towards properties encoded solely in propositional logics (e.g., LTL) and is unsuitable for richer logics. This, in turn, limits the widespread applicability of shielding in many real-world systems. In this work, we address this gap, and extend shielding to LTL modulo theories, by building upon recent advances in reactive synthesis modulo theories. This allowed us to develop a novel approach for generating shields conforming to complex safety specifications in these more expressive, logics. We evaluated our shields and demonstrate their ability to handle rich data with temporal dynamics. To the best of our knowledge, this is the first approach for synthesizing shields for such expressivity. Andoni Rodríguez, Guy Amir, Davide Corsi, César Sánchez 0001, Guy Katz |
AAAI | 4 |
| 2025 | Efficient Dynamic Shielding for Parametric Safety Specifications
Davide Corsi, Kaushik Mallik, Andoni Rodríguez, César Sánchez 0001 |
ATVA | 4 |
| 2025 | Counter Example Guided Reactive Synthesis for LTL Modulo Theories*abstractAbstract Reactive synthesis is the process of automatically generating a correct system from a given temporal specification. In this paper, we address the problem of reactive synthesis for LTL modulo theories ( $$\textrm{LTL}^{\mathcal {T}}$$ LTL T ), which extends LTL with literals from a first-order theory and allows relating the values of data across time . This logic allows describing complex dynamics both for the system and for the environment—such as a numeric variable increasing monotonically over time. The logic also allows defining relations (and not only assignment) between variables, enabling permissive shielding. We propose a sound algorithm called Counter-Example Guided Reactive Synthesis modulo theories (CEGRES), whose core is the novel concept of reactive tautology , which are valid temporal formulas that preserve the semantics of the specification but make the algorithm conclusive. Although realizability for full $$\textrm{LTL}^{\mathcal {T}} $$ LTL T is undecidable in general, we prove that CEGRES is terminating for some important theories and for arbitrary theories when specifications do not fetch data across time. We include an empirical evaluation that shows that CEGRES can solve many reactive synthesis problems of practical interest. Andoni Rodríguez, Felipe Gorostiaga, César Sánchez 0001 |
CAV (4) | 3 |
| 2025 | A Secure Sequencer and Data Availability Committee for Rollups
Margarita Capretto, Martín Ceresa, Antonio Fernández 0001, Pedro Moreno-Sanchez, César Sánchez 0001 |
CCS | 5 |
| 2025 | Temporal Hyperproperties for Population ProtocolsabstractAbstract Hyperproperties are properties over sets of traces (or runs) of a system, as opposed to properties of just one trace. They were introduced in 2010 and have been much studied since, in particular via an extension of the temporal logic LTL called HyperLTL. Most verification efforts for HyperLTL are restricted to finite-state systems, usually defined as Kripke structures. In this paper we study hyperproperties for an important class of infinite-state systems. We consider population protocols, a popular distributed computing model in which arbitrarily many identical finite-state agents interact in pairs. Population protocols are a good candidate for studying hyperproperties because the main decidable verification problem, well-specification, is a hyperproperty. We first show that even for simple (monadic) formulas, HyperLTL verification for population protocols is undecidable. We then turn our attention to immediate observation population protocols, a simpler and well-studied subclass of population protocols. We show that verification of monadic HyperLTL formulas without the next operator is decidable in 2-EXPSPACE, but that all extensions make the problem undecidable. Nicolas Waldburger, Chana Weil-Kennedy, Pierre Ganty, César Sánchez 0001 |
FoSSaCS | 4 |
| 2025 | Explanations for Unrealizability of Infinite-State Safety ShieldsabstractSafe Reinforcement Learning focuses on developing optimal policies while ensuring safety. A popular method to address such task is shielding, in which a correct-by-construction safety component is synthetised from logical specifications. Recently, shield synthesis has been extended to infinite-state domains, such as continuous environments. This makes shielding more applicable to realistic scenarios. However, often shields might be unrealizable because the specification is inconsistent. In order to address this gap, we present a method to obtain simple unconditional and conditional explanations that witness unrealizability, which goes by temporal formula unrolling: bounded strategy search. In this paper, we show different variants of the technique as well as its applicability Andoni Rodríguez, Irfansha Shaik, Davide Corsi, Roy Fox, César Sánchez 0001 |
KR | 5 |
| 2025 | Modal Abstractions for Smart Contract ValidationabstractSmart contracts manage valuable assets, and their immutability hinders bug fixing. Therefore, pre-deployment verification and validation are critical. In fact, auditing has become mandatory in the pipeline of smart contract development. Auditors usually combine manual inspection with automated tools in their auditing work, looking for issues that may be domain dependent (i.e., pertaining to the correct implementation of requirements-which are often informal, partial, and implicit) or independent (e.g., reentrancy, overflow, etc.), To identify domain dependent issues, it is important to understand the non-trivial behavior of the implementation over sequences of calls made by callees playing different roles in the contract. In this paper, we propose a novel approach that combines predicate abstraction with modal transition systems to build abstractions that can help auditors in the smart contract validation process. The required inputs are a set of predicates provided as code and, optionally, constraints over smart contract function parameters. The output is a modal transition system that captures the contract's behavior. We report on a prototype that builds modal abstractions and an evaluation on two established benchmarks where we identified four previously unreported issues. Javier Godoy, Margarita Capretto, Martín Ceresa, Juan P. Galeotti, Diego Garbervetsky, César Sánchez 0001, Sebastián Uchitel |
MODELS | 6 |
| 2025 | MOLA: A Runtime Verification Engine Factory by (Meta-)interpreting Embedded DSLs
Felipe Gorostiaga, Martín Ceresa, César Sánchez 0001 |
PADL | 3 |
| 2025 | (Asynchronous) Temporal Logics for Hyperproperties on Finite Traces
Alberto Bombardelli, Laura Bozzelli, César Sánchez 0001, Stefano Tonetta |
SPIN | 3 |
| 2025 | Invited Paper: Setchain Algorithms for Blockchain Scalability
Arivarasan Karmegam, Gabina Luz Bianchi, Margarita Capretto, Martín Ceresa, Antonio Fernández 0001, César Sánchez 0001 |
SSS | 6 |
| 2024 | Adaptive Reactive Synthesis for LTL and LTLf Modulo TheoriesabstractReactive synthesis is the process of generate correct con- trollers from temporal logic specifications. Typically, synthesis is restricted to Boolean specifications in LTL. Recently, a Boolean abstraction technique allows to translate LTLT specifications that contain literals in theories into equi-realizable LTL specifications, but no full synthesis procedure exists yet. In synthesis modulo theories, the system receives valuations of environment variables (from a first-order theory T ) and outputs valuations of system variables from T . In this paper, we address how to syntheize a full controller using a combination of the static Boolean controller obtained from the Booleanized LTL specification together with on-the-fly queries to a solver that produces models of satisfiable existential T formulae. This is the first synthesis method for LTL modulo theories. Additionally, our method can produce adaptive responses which increases explainability and can improve runtime properties like performance. Our approach is applicable to both LTL modulo theories and LTLf modulo theories. Andoni Rodríguez, César Sánchez 0001 |
AAAI | 2 |
| 2024 | Predictable and Performant Reactive Synthesis Modulo Theories via Functional Synthesis
Andoni Rodríguez, Felipe Gorostiaga, César Sánchez 0001 |
ATVA (2) | 3 |
| 2024 | General Anticipatory Runtime VerificationabstractAbstract Runtime verification is a technique for monitoring a system’s behavior against a formal specification. Monitors must produce verdicts that are sound with respect to the specification. Anticipation is the ability to immediately produce verdicts when the monitor can confidently predict the inevitability of the verdict. Stream runtime verification is a specialized form of runtime verification tailored to the monitoring and verification of data streams. In this paper we study anticipatory monitoring for stream runtime verification. More specifically, we present an algorithm with anticipation for monitoring of Lola specifications, which we then extend to exploit assumptions and tolerate uncertainties. As perfect anticipation is in general not computable, we use techniques from abstract interpretation, especially widening, to approximate anticipatory monitoring verdicts. Finally, we report on three empirical cases studies using a prototype implementation of a symbolic instantiation of our approach. Raik Hipler, Hannes Kallwies, Martin Leucker, César Sánchez 0001 |
CAV (2) | 4 |
| 2024 | Monitoring the Future of Smart ContractsabstractAbstract Blockchains are decentralized systems that provide trustable execution guarantees through the use of programs called smart contracts. Smart contracts are programs written in domain-specific programming languages running on blockchains that govern how tokens and cryptocurrency are sent and received. Smart contracts can invoke other smart contracts during the execution of transactions initiated by external users. Once deployed, smart contracts running code cannot be modified, so techniques like runtime verification are very appealing for improving their reliability. Moreover, the conventional model of computation of smart contracts is transactional: once operations commit, their effects are permanent and cannot be undone. Therefore, errors in smart contracts may lead to millionaire losses of money. In this paper, we present the concept of future monitors which allows monitors to remain waiting for future transactions to occur before committing or aborting. This is inspired by optimistic rollups, which are modern blockchain implementations that increase efficiency (and reduce cost) by delaying transaction effects. We exploit this delay to propose a model of computation that allows bounded future monitors. We show our monitors correct respect with legacy transactions, how they implement bounded future monitors and how they guarantee progress. We illustrate the use of bounded future monitors by implementing correctly multi-transaction flash loans. Margarita Capretto, Martín Ceresa, César Sánchez 0001 |
FASE | 3 |
| 2024 | Unifying Asynchronous Logics for HyperpropertiesabstractWe introduce and investigate a powerful hyper logical framework in the linear-time setting, we call generalized HyperLTL with stuttering and contexts (GHyperLTL_SC for short). GHyperLTL_SC unifies known asynchronous extensions of HyperLTL and the well-known extension KLTL of LTL with knowledge modalities under both the synchronous and asynchronous perfect recall semantics. As a main contribution, we individuate a meaningful fragment of GHyperLTL_SC, we call simple GHyperLTL_SC, with a decidable model-checking problem, which is more expressive than HyperLTL and known fragments of asynchronous extensions of HyperLTL with a decidable model-checking problem. Simple GHyperLTL_SC subsumes KLTL under the synchronous semantics and the one-agent fragment of KLTL under the asynchronous semantics, and to the best of our knowledge, it represents the unique hyper logic with a decidable model-checking problem which can express powerful non-regular trace properties when interpreted on singleton sets of traces. We justify the relevance of simple GHyperLTL_SC by showing that it can express diagnosability properties, interesting classes of information-flow security policies, both in the synchronous and asynchronous settings, and bounded termination (more in general, global promptness in the style of Prompt LTL). Alberto Bombardelli, Laura Bozzelli, César Sánchez 0001, Stefano Tonetta |
FSTTCS | 3 |
| 2024 | Improving Blockchain Scalability with the Setchain Data-TypeabstractBlockchain technologies are facing a scalability challenge, which must be overcome to guarantee a wider adoption of the technology. This scalability issue is due to the use of consensus algorithms to guarantee the total order of the chain of blocks (and of the transactions within each block). However, total order is often not fully necessary, since important advanced applications of smart-contracts do not require a total order among all operations. A much higher scalability can potentially be achieved if a more relaxed order (instead of a total order) can be exploited. In this article, we propose a novel distributed concurrent data type, Setchain , which significantly improves scalability. A Setchain implements a grow-only set whose elements are not ordered, unlike conventional blockchain operations. When convenient, the Setchain allows forcing a synchronization barrier that assigns permanently an epoch number to a subset of the latest elements added, agreed by consensus. Therefore, two operations in the same epoch are not ordered, while two operations in different epochs are ordered by their respective epoch number. We present different Byzantine-tolerant implementations of Setchain, prove their correctness, and report on an empirical evaluation of a prototype implementation. Our results show that Setchain is orders of magnitude faster than consensus-based ledgers, since it implements grow-only sets with epoch synchronization instead of total order. Since the Setchain barriers can be synchronized with the underlying blockchain, Setchain objects can be used as a sidechain to implement many decentralized solutions with much faster operations than direct implementations on top of blockchains. Finally, we also present an algorithm that encompasses into a single process the combined behavior of the Byzantine servers, which simplifies correctness proofs by encoding the general attacker in a concrete implementation. Margarita Capretto, Martín Ceresa, Antonio Fernández 0001, Antonio Russo 0004, César Sánchez 0001 |
Distributed Ledger Technol. Res. Pract. | 5 |
| 2024 | Realizability modulo theories
Andoni Rodríguez, César Sánchez 0001 |
J. Log. Algebraic Methods Program. | 2 |
| 2023 | Boolean Abstractions for Realizability Modulo TheoriesabstractAbstract In this paper, we address the problem of the (reactive) realizability of specifications of theories richer than Booleans, including arithmetic theories. Our approach transforms theory specifications into purely Boolean specifications by (1) substituting theory literals by Boolean variables, and (2) computing an additional Boolean requirement that captures the dependencies between the new variables imposed by the literals. The resulting specification can be passed to existing Boolean off-the-shelf realizability tools, and is realizable if and only if the original specification is realizable. The first contribution is a brute-force version of our method, which requires a number of SMT queries that is doubly exponential in the number of input literals. Then, we present a faster method that exploits a nested encoding of the search for the extra requirement and uses SAT solving for faster traversing the search space and uses SMT queries internally. Another contribution is a prototype in Z3-Python. Finally, we report an empirical evaluation using specifications inspired in real industrial cases. To the best of our knowledge, this is the first method that succeeds in non-Boolean LTL realizability. Andoni Rodríguez, César Sánchez 0001 |
CAV (3) | 2 |
| 2023 | Tableaux for Realizability of Safety Specifications
Montserrat Hermo, Paqui Lucio, César Sánchez 0001 |
FM | 3 |
| 2023 | Automated Repair of Unrealisable LTL Specifications Guided by Model CountingabstractThe reactive synthesis problem consists of automatically producing correct-by-construction operational models of systems from high-level formal specifications of their behaviours. However, specifications are often unrealisable, meaning that no system can be synthesised from the specification. To deal with this problem, we present AuRUS, a search-based approach to repair unrealisable Linear-Time Temporal Logic (LTL) specifications. AuRUS aims at generating solutions that are similar to the original specifications by using the notions of syntactic and semantic similarities. Intuitively, the syntactic similarity measures the text similarity between the specifications, while the semantic similarity measures the number of behaviours preserved/removed by the candidate repair. We propose a new heuristic based on model counting to approximate semantic similarity. We empirically assess AuRUS on many unrealisable specifications taken from different benchmarks and show that it can successfully repair all of them. Also, compared to related techniques, AuRUS can produce many unique solutions while showing more scalability. Matías Brizzio, Maxime Cordy, Mike Papadakis, César Sánchez 0001, Nazareno Aguirre, Renzo Degiovanni |
GECCO | 4 |
| 2023 | Efficient Reactive Synthesis Using Mode Decomposition
Matías Brizzio, César Sánchez 0001 |
ICTAC | 2 |
| 2023 | General Anticipatory Monitoring for Temporal Logics on Finite Traces
Hannes Kallwies, Martin Leucker, César Sánchez 0001 |
RV | 3 |
| 2023 | A Stream Runtime Verification Tool with Nested and Retroactive Parametrization
Paloma Pedregal, Felipe Gorostiaga, César Sánchez 0001 |
RV | 3 |
| 2023 | Bounded Model Checking for Asynchronous HyperpropertiesabstractAbstract Many types of attacks on confidentiality stem from the nondeterministic nature of the environment that computer programs operate in. We focus on verification of confidentiality in nondeterministic environments by reasoning about asynchronous hyperproperties . We generalize the temporal logic to allow nested trajectory quantification, where a trajectory determines how different execution traces may advance and stutter. We propose a bounded model checking algorithm for based on QBF-solving for a fragment of and evaluate it by various case studies on concurrent programs, scheduling attacks, compiler optimization, speculative execution, and cache timing attacks. We also rigorously analyze the complexity of model checking . Tzu-Han Hsu, Borzoo Bonakdarpour, Bernd Finkbeiner, César Sánchez 0001 |
TACAS (1) | 4 |
| 2023 | Efficient Loop Conditions for Bounded Model Checking HyperpropertiesabstractAbstract Bounded model checking (BMC) is an effective technique for hunting bugs by incrementally exploring the state space of a system. To reason about infinite traces through a finite structure and to ultimately obtain completeness, BMC incorporates loop conditions that revisit previously observed states. This paper focuses on developing loop conditions for BMC of – a temporal logic for hyperproperties that allows expressing important policies for security and consistency in concurrent systems, etc. Loop conditions for are more complicated than for , as different traces may loop inconsistently in unrelated moments. Existing BMC approaches for only considered linear unrollings without any looping capability, which precludes both finding small infinite traces and obtaining a complete technique. We investigate loop conditions for BMC, for formulas that contain up to one quantifier alternation. We first present a general complete automata-based technique which is based on bounds of maximum unrollings. Then, we introduce alternative simulation-based algorithms that allow exploiting short loops effectively, generating SAT queries whose satisfiability guarantees the outcome of the original model checking problem. We also report empirical evaluation of the prototype implementation of our BMC techniques using . Tzu-Han Hsu, César Sánchez 0001, Sarai Sheinvald, Borzoo Bonakdarpour |
TACAS (1) | 2 |
| 2022 | Symbolic Runtime Verification for Monitoring Under Uncertainties and Assumptions
Hannes Kallwies, Martin Leucker, César Sánchez 0001 |
ATVA | 3 |
| 2022 | Expressiveness and Decidability of Temporal Logics for Asynchronous HyperpropertiesabstractHyperproperties are properties of systems that relate different executions traces, with many applications from security to symmetry, consistency models of concurrency, etc. In recent years, different linear-time logics for specifying asynchronous hyperproperties have been investigated. Though model checking of these logics is undecidable, useful decidable fragments have been identified with applications e.g. for asynchronous security analysis. In this paper, we address expressiveness and decidability issues of temporal logics for asynchronous hyperproperties. We compare the expressiveness of these logics together with the extension S1S[E] of S1S with the equal-level predicate by obtaining an almost complete expressiveness picture. We also study the expressive power of these logics when interpreted on singleton sets of traces. We show that for two asynchronous extensions of HyperLTL, checking the existence of a singleton model is already undecidable, and for one of them, namely Context HyperLTL (HyperLTL_C), we establish a characterization of the singleton models in terms of the extension of standard FO[<] over traces with addition. This last result generalizes the well-known equivalence between FO[<] and LTL. Finally, we identify new boundaries on the decidability of model checking HyperLTL_C. Laura Bozzelli, Adriano Peron, César Sánchez 0001 |
CONCUR | 3 |
| 2022 | Assumption Monitoring of Temporal Task Planning Using Stream Runtime Verification
Felipe Gorostiaga, Sebastián Zudaire, César Sánchez 0001, Gerardo Schneider, Sebastián Uchitel |
ISoLA (1) | 3 |
| 2022 | Transaction Monitoring of Smart Contracts
Margarita Capretto, Martín Ceresa, César Sánchez 0001 |
RV | 3 |
| 2022 | Anticipatory Recurrent Monitoring with Uncertainty and AssumptionsabstractAbstract Runtime Verification is a lightweight verification approach that aims at checking that a run of a system under observation adheres to a formal specification. A classical approach is to synthesize a monitor from an LTL property. Usually, such a monitor receives the trace of the system under observation incrementally and checks the property with respect to the first position of any trace that extends the received prefix. This comes with the disadvantage that once the monitor detects a violation or satisfaction of the verdict it cannot recover and the erroneous position in the trace is not explicitly disclosed. An alternative monitoring problem, proposed for example for Past LTL evaluation, is to evaluate the LTL property repeatedly at each position in the received trace, which enables recovering and gives more information when the property is breached. In this paper we study this concept of recurrent monitoring in detail, particularly we investigate how the notion of anticipation (yielding future verdicts when they are inevitable) can be extended to recurrent monitoring. Furthermore, we show how two fundamental approaches in Runtime Verification can be applied to recurrent monitoring, namely Uncertainty—which deals with the handling of inaccurate or unavailable information in the input trace—and Assumptions, i.e. the inclusion of additional knowledge about system invariants in the monitoring process. Hannes Kallwies, Martin Leucker, César Sánchez 0001, Torben Scheffel |
RV | 3 |
| 2022 | Runtime verification of real-time event streams using the tool HStriver
Felipe Gorostiaga, César Sánchez 0001 |
Formal Methods Syst. Des. | 2 |
| 2021 | A Temporal Logic for Asynchronous HyperpropertiesabstractAbstract Hyperpropertiesare properties of computational systems that require more than one trace to evaluate, e.g., many information-flow security and concurrency requirements. Where a trace property defines a set of traces, a hyperproperty defines a set of sets of traces. The temporal logics HyperLTL and HyperCTL* have been proposed to express hyperproperties. However, their semantics aresynchronousin the sense that all traces proceed at the same speed and are evaluated at the same position. This precludes the use of these logics to analyze systems whose traces can proceed at different speeds and allow that different traces take stuttering steps independently. To solve this problem in this paper, we propose anasynchronousvariant of HyperLTL. On the negative side, we show that the model-checking problem for this variant is undecidable. On the positive side, we identify a decidable fragment which covers a rich set of formulas with practical applications. We also propose two model-checking algorithms that reduce our problem to the HyperLTL model-checking problem in the synchronous semantics. Jan Baumeister, Norine Coenen, Borzoo Bonakdarpour, Bernd Finkbeiner, César Sánchez 0001 |
CAV (1) | 5 |
| 2021 | HStriver: A Very Functional Extensible Tool for the Runtime Verification of Real-Time Event Streams
Felipe Gorostiaga, César Sánchez 0001 |
FM | 2 |
| 2021 | Assumption Monitoring Using Runtime Verification for UAV Temporal Task Plan ExecutionsabstractTemporal task planning guarantees a robot will succeed in its task as long as certain explicit and implicit assumptions about the robot’s operating environment, sensors, and capabilities hold. A robot executing a plan can silently fail to fulfill the task if the assumptions are violated at runtime. Monitoring assumption violations at runtime can flag silent failures and also provide mitigation and remediation opportunities. However, this requires means for describing assumptions combining temporal and quantitative data, automatic construction of correct monitors and ensuring a correct interplay between the planning execution and monitors. In this paper we propose combining temporal planning with stream runtime verification, which offers a high-level language to describe monitors together with guarantees on execution time and memory usage. We demonstrate our approach both in real and simulated flights for some typical mission scenarios. Sebastián Zudaire, Felipe Gorostiaga, César Sánchez 0001, Gerardo Schneider, Sebastián Uchitel |
ICRA | 3 |
| 2021 | Asynchronous Extensions of HyperLTLabstractHyperproperties are a modern specification paradigm that extends trace properties to express properties of sets of traces. Temporal logics for hyperproperties studied in the literature, including HyperLTL, assume a synchronous semantics and enjoy a decidable model checking problem. In this paper, we introduce two asynchronous and orthogonal extensions of HyperLTL, namely Stuttering HyperLTL (HyperLTLS) and Context HyperLTL (HyperLTLC). Both of these extensions are useful, for instance, to formulate asynchronous variants of information-flow security properties. We show that for these logics, model checking is in general undecidable. On the positive side, for each of them, we identify a fragment with a decidable model checking that subsumes HyperLTL and that can express meaningful asynchronous requirements. Moreover, we provide the exact computational complexity of model checking for these two fragments which, for the HyperLTLS fragment, coincides with that of the strictly less expressive logic HyperLTL. Laura Bozzelli, Adriano Peron, César Sánchez 0001 |
LICS | 3 |
| 2021 | Nested Monitors: Monitors as Expressions to Build Monitors
Felipe Gorostiaga, César Sánchez 0001 |
RV | 2 |
| 2021 | HLola: a Very Functional Tool for Extensible Stream Runtime VerificationabstractAbstract We present , an extensible Stream Runtime Verification (SRV) tool, that borrows from the functional language Haskell (1) rich types for data in events and verdicts; and (2) functional features for parametrization, libraries, high-order specification transformations, etc. SRV is a formal dynamic analysis technique that generalizes Runtime Verification (RV) algorithms from temporal logics like LTL to stream monitoring, allowing the computation of verdicts richer than Booleans (quantitative values and beyond). The keystone of SRV is the clean separation between temporal dependencies and data computations. However, in spite of this theoretical separation previous engines include hardwired implementations of just a few datatypes, requiring complex changes in the tool chain to incorporate new data types. Additionally, when previous tools implement features like parametrization these are implemented in an ad-hoc way. In contrast, is implemented as a Haskell embedded DSL, borrowing datatypes and functional aspects from Haskell, resulting in an extensible engine (The tool is available open-source at http://github.com/imdea-software/hlola ). We illustrate through several examples, including a UAV monitoring infrastructure with predictive characteristics that has been validated in online runtime verification in real mission planning. Felipe Gorostiaga, César Sánchez 0001 |
TACAS (2) | 2 |
| 2021 | Bounded Model Checking for HyperpropertiesabstractAbstract This paper introduces a bounded model checking (BMC) algorithm for hyperproperties expressed in HyperLTL, which — to the best of our knowledge — is the first such algorithm. Just as the classic BMC technique for LTL primarily aims at finding bugs, our approach also targets identifying counterexamples. BMC for LTL is reduced to SAT solving, because LTL describes a property via inspecting individual traces. Our BMC approach naturally reduces to QBF solving, as HyperLTL allows explicit and simultaneous quantification over multiple traces. We report on successful and efficient model checking, implemented in our tool called , of a rich set of experiments on a variety of case studies, including security, concurrent data structures, path planning for robots, and mutation testing. Tzu-Han Hsu, César Sánchez 0001, Borzoo Bonakdarpour |
TACAS (1) | 2 |
| 2021 | Gray-box monitoring of hyperproperties with an application to privacyabstractAbstract Runtime verification is a complementary approach to testing, model checking and other static verification techniques to verify software properties. Monitorability characterizes what can be verified (monitored) at run time. Different definitions of monitorability have been given both for trace properties and for hyperproperties (properties defined over sets of traces), but these definitions usually cover only some aspects of what is important when characterizing the notion of monitorability. The first contribution of this paper is a refinement of classic notions of monitorability both for trace properties and hyperproperties, taking into account, among other things, the computability of the monitor. A second contribution of our work is to show that black-box monitoring of HyperLTL (a logic for hyperproperties) is in general unfeasible, and to suggest a gray-box approach in which we combine static and runtime verification. The main idea is to call a static verifier as an oracle at run time allowing, in some cases, to give a final verdict for properties that are considered to be non-monitorable under a black-box approach. Our third contribution is the instantiation of this solution to a privacy property called distributed data minimization which cannot be verified using black-box runtime verification. We use an SMT-based static verifier as an oracle at run time. We have implemented our gray-box approach for monitoring data minimization into the proof-of-concept tool Minion. We describe the tool and apply it to a few case studies to show its feasibility. Sandro Stucki, César Sánchez 0001, Gerardo Schneider, Borzoo Bonakdarpour |
Formal Methods Syst. Des. | 2 |
| 2021 | Stream runtime verification of real-time event streams with the Striver language
Felipe Gorostiaga, César Sánchez 0001 |
Int. J. Softw. Tools Technol. Transf. | 2 |
| 2020 | Declarative Stream Runtime Verification (hLola)
Martín Ceresa, Felipe Gorostiaga, César Sánchez 0001 |
APLAS | 3 |
| 2020 | Reliable Smart Contracts
Gordon J. Pace, César Sánchez 0001, Gerardo Schneider |
ISoLA (3) | 2 |
| 2020 | Unifying the Time-Event Spectrum for Stream Runtime Verification
Felipe Gorostiaga, Luis Miguel Danielsson, César Sánchez 0001 |
RV | 3 |
| 2020 | Runtime verification of real-time event streams under non-synchronized arrivalabstractAbstract We study the problem of online runtime verification of real-time event streams. Our monitors can observe concurrent systems with a shared clock, but where each component reports observations as signals that arrive to the monitor at different speeds and with different and varying latencies. We start from specifications in a fragment of the TeSSLa specification language, where streams (including inputs and final verdicts) are not restricted to be Booleans but can be data from richer domains, including integers and reals with arithmetic operations and aggregations. Specifications can be used both for checking logical properties and for computing statistics and general numeric temporal metrics (and properties on these richer metrics). We present an online evaluation algorithm for the specification language and a concurrent implementation of the evaluation algorithm. The algorithm can tolerate and exploit the asynchronous arrival of events without synchronizing the inputs. Then, we introduce a theory of asynchronous transducers and show a formal proof of the correctness such that every possible run of the monitor implements the semantics. Finally, we report an empirical evaluation of a highly concurrent Erlang implementation of the monitoring algorithm. Martin Leucker, César Sánchez 0001, Torben Scheffel, Malte Schmitz 0001, Alexander Schramm |
Softw. Qual. J. | 2 |
| 2019 | Verifying HyperlivenessabstractHyperLTL is an extension of linear-time temporal logic for the specification of hyperproperties, i.e., temporal properties that relate multiple computation traces. HyperLTL can express information flow policies as well as properties like symmetry in mutual exclusion algorithms or Hamming distances in error-resistant transmission protocols. Previous work on HyperLTL model checking has focussed on the alternation-free fragment of HyperLTL, where verification reduces to checking a standard trace property over an appropriate self-composition of the system. The alternation-free fragment does, however, not cover general hyperliveness properties. Universal formulas, for example, cannot express the secrecy requirement that for every possible value of a secret variable there exists a computation where the value is different while the observations made by the external observer are the same. In this paper, we study the more difficult case of hyperliveness properties expressed as HyperLTL formulas with quantifier alternation. We reduce existential quantification to strategic choice and show that synthesis algorithms can be used to eliminate the existential quantifiers automatically. We furthermore show that this approach can be extended to reactive system synthesis, i.e., to automatically construct a reactive system that is guaranteed to satisfy a given HyperLTL formula. Norine Coenen, Bernd Finkbeiner, César Sánchez 0001, Leander Tentrup |
CAV (1) | 3 |
| 2019 | Gray-Box Monitoring of Hyperproperties
Sandro Stucki, César Sánchez 0001, Gerardo Schneider, Borzoo Bonakdarpour |
FM | 2 |
| 2019 | Decentralized Stream Runtime Verification
Luis Miguel Danielsson, César Sánchez 0001 |
RV | 2 |
| 2019 | Runtime Verification for Timed Event Streams with Partial InformationabstractRuntime Verification (RV) studies how to analyze execution traces of a system under observation. Stream Runtime Verification (SRV) applies stream transformations to obtain information from observed traces. Incomplete traces with information missing in gaps pose a common challenge when applying RV and SRV techniques to real-world systems as RV approaches typically require the complete trace without missing parts. This paper presents a solution to perform SRV on incomplete traces based on abstraction. We use TeSSLa as specification language for non-synchronized timed event streams and define abstract event streams representing the set of all possible traces that could have occurred during gaps in the input trace. We show how to translate a TeSSLa specification to its abstract counterpart that can propagate gaps through the transformation of the input streams and thus generate sound outputs even if the input streams contain gaps and events with imprecise values. The solution has been implemented as a set of macros for the original TeSSLa and an empirical evaluation shows the feasibility of the approach. Martin Leucker, César Sánchez 0001, Torben Scheffel, Malte Schmitz 0001, Daniel Thoma |
RV | 2 |
| 2019 | A survey of challenges for runtime verification from advanced application domains (beyond software)abstractAbstract 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. | 1 |
| 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. | 1 |
| 2018 | Timed Epistemic Knowledge Bases for Social Networks
Raúl Pardo, César Sánchez 0001, Gerardo Schneider |
FM | 2 |
| 2018 | Pipekit: A Deployment Tool with Advanced Scheduling and Inter-Service Communication for Multi-Tier ApplicationsabstractModern cloud applications are based on microservice architectures. The deployment of these microservice based applications often requires that every constituent service starts after all its dependencies are configured and running properly. It is also common that these dependencies generate dynamic data that needs to be supplied to other services too at starting time. More complex scenarios require additionally interchanging data in other phases of the microservices lifecycle. One alternative to solve these dependencies is to describe the deployment of microservice applications manually—using scripts—which allows IT operators to precisely define when a service is ready to start serving other components. However, synchronization by scripting is tedious, error prone and hard to maintain. Other solutions offer specific languages to describe service dependencies, along with tool support that interpret scripts in these languages to take care of starting services in the proper order. These tools are either very rich but complex to use, or fail in providing sophisticated ways to describe what it means for a service to be ready. Moreover, the communication layer between services, if supplied, is based on intermediate entities and non-trivial network protocols. This paper proposes pipekit as a solution, by offering a container orchestration language which focuses on simplicity (pipekit is similar to Docker Compose) and is equipped with directives to define when a service is ready. The pipekit tool provides a communication layer for moving data between services, implemented using shared storage. This shared storage provides a very simple interface to move artifacts between services, and greatly simplifies the synchronization logic of pipekit by using semaphores at the file system level. Pablo Chico de Guzmán, Felipe Gorostiaga, César Sánchez 0001 |
ICWS | 3 |
| 2018 | Monitoring Hyperproperties by Combining Static Analysis and Runtime Verification
Borzoo Bonakdarpour, César Sánchez 0001, Gerardo Schneider |
ISoLA (2) | 2 |
| 2018 | Reliable Smart Contracts: State-of-the-Art, Applications, Challenges and Future Directions
César Sánchez 0001, Gerardo Schneider, Martin Leucker |
ISoLA (4) | 1 |
| 2018 | COST Action IC1402 Runtime Verification Beyond Monitoring
Christian Colombo 0001, Yliès Falcone, Martin Leucker, Giles Reger, César Sánchez 0001, Gerardo Schneider, Volker Stolz |
RV | 5 |
| 2018 | Striver: Stream Runtime Verification for Real-Time Event-Streams
Felipe Gorostiaga, César Sánchez 0001 |
RV | 2 |
| 2018 | Online and Offline Stream Runtime Verification of Synchronous Systems
César Sánchez 0001 |
RV | 1 |
| 2018 | i2kit: A Deployment Tool with the Simplicity of Containers and the Security of Virtual Machines
Pablo Chico de Guzmán, Felipe Gorostiaga, César Sánchez 0001 |
WISE (1) | 3 |
| 2018 | Introduction to the special issue on runtime verification
Yliès Falcone, César Sánchez 0001 |
Formal Methods Syst. Des. | 2 |
| 2018 | Visibly Linear Temporal Logic
Laura Bozzelli, César Sánchez 0001 |
J. Autom. Reason. | 2 |
| 2016 | Specification of Evolving Privacy Policies for Online Social NetworksabstractOnline Social Networks are ubiquitous, bringing not only numerous new possibilities but also big threats and challenges. Privacy is one of them. Most social networks today offer a limited set of (static) privacy settings, not being able to express dynamic policies. For instance, users might decide to protect their location during the night, or share information with difference audiences depending on their current position. In this paper we introduce TFPPF, a formal framework to express, and reason about, dynamic (and recurrent) privacy policies that are activated or deactivated by context (events) or time. Besides a formal policy language (TPPL), the framework includes a knowledge-based logic extended with (linear) temporal operators and a learning modality (TKBL). Policies, and formulae in the logic, are interpreted over (timed) traces representing the evolution of the social network. We prove that checking privacy policy conformance, and the model-checking problem for TKBL, are both decidable. Raúl Pardo, Ivana Kellyerova, César Sánchez 0001, Gerardo Schneider |
TIME | 3 |
| 2016 | Special issue on Rich Models, EU-COST Action IC0901 Rich-Model Toolkit
Bernd Finkbeiner, César Sánchez 0001 |
Acta Informatica | 2 |
| 2016 | Special issue on temporal representation and reasoning (TIME'13)
César Sánchez 0001, K. Brent Venable, Esteban Zimányi |
Acta Informatica | 1 |
| 2016 | Foundations of Boolean stream runtime verification
Laura Bozzelli, César Sánchez 0001 |
Theor. Comput. Sci. | 2 |
| 2015 | Algorithms for Model Checking HyperLTL and HyperCTL ^*
Bernd Finkbeiner, Markus N. Rabe, César Sánchez 0001 |
CAV (1) | 3 |
| 2015 | Parametrized invariance for infinite state processes
Alejandro Sánchez, César Sánchez 0001 |
Acta Informatica | 2 |
| 2014 | Formal Verification of Skiplists with Arbitrary Many Levels
Alejandro Sánchez, César Sánchez 0001 |
ATVA | 2 |
| 2014 | LEAP: A Tool for the Parametrized Verification of Concurrent Datatypes
Alejandro Sánchez, César Sánchez 0001 |
CAV | 2 |
| 2014 | Foundations of Boolean Stream Runtime Verification
Laura Bozzelli, César Sánchez 0001 |
RV | 2 |
| 2014 | Parametrized Verification DiagramsabstractThis paper introduces parametrized verification diagrams (PVDs), a formalism that allows to prove temporal properties of parametrized concurrent systems, in which a given program is executed by an unbounded number of processes. PVDs extend general verification diagrams (GVDs). GVDs encode succinctly a proof that a non-parametrized reactive system satisfies a given temporal property. Even though GVDs are known to be sound and complete for non-parametrized systems, proving temporal properties of parametrized systems potentially requires to find a different diagram for each instantiation of the parameter (number of processes). In turn, each diagram requires to discharge and prove a different collection of verification conditions. PVDs allow a single diagram to represent the proof that all instances of the parametrized system for an arbitrary number of threads running concurrently satisfy the temporal specification. Checking the proof represented by a PVD requires proving only a finite collection of quantifier-free verification conditions. The PVDs we present here exploit the symmetry assumption, under which process identifiers are interchangeable. This assumption covers a large class of concurrent systems, including concurrent datatypes. We illustrate the use of PVDs in the verification of an infinite state mutual exclusion protocol. Alejandro Sánchez, César Sánchez 0001 |
TIME | 2 |
| 2014 | Visibly rational expressions
Laura Bozzelli, César Sánchez 0001 |
Acta Informatica | 2 |
| 2013 | Fusing statecharts and javaabstractThis article presents FUSE, an approach for modeling and implementing embedded software components which starts from a main-stream programming language and brings some of the key concepts of Statecharts as first-class elements within this language. Our approach provides a unified programming environment which not only preserves some of the advantages of Statecharts' formal foundation but also directly supports features of object-orientation and strong typing. By specifying Statecharts directly in FUSE we eliminate the out-of-synch between the model and the generated code and we allow the tuning and debugging to be done within the same programming model. This article describes the main language constructs of FUSE and presents its semantics by translation into the Java programming language. We conclude by discussing extensions to the base language which enable the efficient static checking of program properties. Maria-Cristina V. Marinescu, César Sánchez 0001 |
ACM Trans. Embed. Comput. Syst. | 2 |
| 2013 | Abstracting Runtime Heaps for Program UnderstandingabstractModern programming environments provide extensive support for inspecting, analyzing, and testing programs based on the algorithmic structure of a program. Unfortunately, support for inspecting and understanding runtime data structures during execution is typically much more limited. This paper provides a general purpose technique for abstracting and summarizing entire runtime heaps. We describe the abstract heap model and the associated algorithms for transforming a concrete heap dump into the corresponding abstract model as well as algorithms for merging, comparing, and computing changes between abstract models. The abstract model is designed to emphasize high-level concepts about heap-based data structures, such as shape and size, as well as relationships between heap structures, such as sharing and connectivity. We demonstrate the utility and computational tractability of the abstract heap model by building a memory profiler. We use this tool to identify, pinpoint, and correct sources of memory bloat for programs from DaCapo. Mark Marron, César Sánchez 0001, Zhendong Su 0001, Manuel Fähndrich |
IEEE Trans. Software Eng. | 2 |
| 2012 | Visibly Rational ExpressionsabstractRegular Expressions (RE) are an algebraic formalism for expressing regular languages, widely used in string search and as a specification language in verification. In this paper we introduce and investigate Visibly Rational Expressions (VRE), an extension of RE for the well-known class of Visibly Pushdown Languages (VPL). We show that VRE capture the class of VPL. Moreover, we identify an equally expressive fragment of VRE which admits a quadratic time compositional translation into the automata acceptors of VPL. We also prove that, for this fragment, universality, inclusion and language equivalence are EXPTIME-complete. Finally, we provide an extension of VRE for VPL over infinite words. Laura Bozzelli, César Sánchez 0001 |
FSTTCS | 2 |
| 2012 | How to Translate Efficiently Extensions of Temporal Logics into Alternating Automata
César Sánchez 0001, Julián Samborski-Forlese |
ICTAC | 1 |
| 2012 | Invariant Generation for Parametrized Systems Using Self-reflection - (Extended Version)
Alejandro Sánchez, Sriram Sankaranarayanan 0001, César Sánchez 0001, Bor-Yuh Evan Chang |
SAS | 3 |
| 2012 | Efficient Regular Linear Temporal Logic Using Dualization and StratificationabstractWe study efficient translations of Regular Linear Temporal Logic (\RLTL) into automata on infinite words. \RLTL is a temporal logic that fuses Linear Temporal Logic (LTL) with regular expressions, extending its expressive power to all $\omega$-regular languages. The first contribution of this paper is a novel bottom up translation from \RLTL into alternating parity automata of linear size that requires only colors $0$, $1$ and $2$. Moreover, the resulting automata enjoy the stratified internal structure of hesitant automata. Our translation is defined inductively for every operator, and does not require an upfront transformation of the expression into a normal form. Our construction builds at every step two automata: one equivalent to the formula and another to its complement. Inspired by this construction, our second contribution is to extend \RLTL with new operators, including universal sequential composition, that enrich the logic with duality laws and negation normal forms. The third contribution is a ranking translation of the resulting alternating automata into non-deterministic \Buchi automata. To provide this efficient translation we introduce the notion of stratified rankings, and show how the translation is optimal for the LTL fragment of the logic. César Sánchez 0001, Julián Samborski-Forlese |
TIME | 1 |
| 2010 | Analyzing the Impact of Change in Multi-threaded Programs
Krishnendu Chatterjee, Luca de Alfaro, Vishwanath Raman, César Sánchez 0001 |
FASE | 4 |
| 2010 | Decision Procedures for the Temporal Verification of Concurrent Lists
Alejandro Sánchez, César Sánchez 0001 |
ICFEM | 2 |
| 2010 | Regular Linear-Time Temporal LogicabstractThis extended abstract presents the main ideas behind regular linear-time temporal logic (RLTL), a logic that generalizes linear-time temporal logic (LTL) with the ability to use regular expressions arbitrarily as sub-expressions. Unlike LTL, RLTL can define all !-regular languages and unlike previous approaches, RLTL is defined with an algebraic signature, does not depend on fix-points in its syntax, and provides past operators via a single previous-step operator for basic state formulas. The satisfiability and model checking problems for RLTL are PSPACE-complete, which is optimal for extensions of LTL. Martin Leucker, César Sánchez 0001 |
TIME | 2 |
| 2010 | Regular Linear Temporal Logic with Past
César Sánchez 0001, Martin Leucker |
VMCAI | 1 |
| 2007 | A Family of Distributed Deadlock Avoidance Protocols and Their Reachable State Spaces
César Sánchez 0001, Henny B. Sipma, Zohar Manna |
FASE | 1 |
| 2007 | Regular Linear Temporal Logic
Martin Leucker, César Sánchez 0001 |
ICTAC | 2 |
| 2007 | Generating Efficient Distributed Deadlock Avoidance ControllersabstractGeneral solutions to deadlock avoidance in distributed systems are considered impractical due to the high communication overhead. In previous work we showed that practical solutions exist when all possible sequences of resource requests are known a priori in the form of call graphs; in this case protocols can be constructed that involve no communication. These run-time protocols make use of annotations of the call graph that are computed statically based on the structure of the call graph. If the annotations are acyclic, then deadlocks are unreachable. This paper focuses on the computation of these annotations. We first show that our algorithm for computing acyclic annotations is complete: every optimal annotation can be generated. We then show that, given a cyclic annotation and a fixed set of resources, checking whether deadlocks are reachable is NP-complete. Finally, we consider the problem of computing minimal annotations that satisfy given constraints on the number of available resources. We show that the problem is NP-complete in the general case, but that it can be solved in polynomial time if the only restrictions are that the number of certain resources is 1, that is, these resources are binary semaphores. César Sánchez 0001, Henny B. Sipma, Zohar Manna |
IPDPS | 1 |
| 2006 | Efficient distributed deadlock avoidance with liveness guaranteesabstractWe present a deadlock avoidance algorithm for distributed systems that guarantees liveness. Deadlock avoidance in distributed systems is a hard problem and general solutions are considered impractical due to the high communication overhead. In previous work, however, we showed that practical solutions exist when all possible sequences of resource requests are known a priori in the form of call graphs; in this case protocols can be constructed that perform safe resource allocation based on local data only, that is, no communication between components is required. While avoiding deadlock, those protocols, however, did not avoid starvation: they guaranteed that some process could always make progress, but did not guarantee that every individual process would always eventually terminate. In this paper we present a resource allocation mechanism that avoids deadlock and guarantees absence of starvation, without undue loss of concurrency. The only assumption we make is that the local scheduler is fair. We prove the correctness of the algorithm and show how it can be implemented efficiently. César Sánchez 0001, Henny B. Sipma, Zohar Manna, Christopher D. Gill |
EMSOFT | 1 |
| 2006 | Reusable models for timing and liveness analysis of middleware for distributed real-time and embedded systemsabstractDistributed real-time and embedded (DRE) systems have stringent constraints on timeliness and other properties whose assurance is crucial to correct system behavior. Formal tools and techniques play a key role in verifying and validating system properties. However, many DRE systems are built using middleware frameworks that have grown increasingly complex to address the diverse requirements of a wide range of applications. How to apply formal tools and techniques effectively to these systems, given the range of middleware configuration options available, is therefore an important research problem.This paper makes three contributions to research on formal verification and validation of middleware-based DRE systems. First, it presents a reusable library of formal models we have developed to capture essential timing and concurrency semantics of foundational middleware building blocks provided by the ACE framework. Second, it describes domain-specific techniques to reduce the cost of checking those models while ensuring they remain valid with respect to the semantics of the middleware itself. Third, it presents a verification and validation case study involving a gateway service, using our models. Venkita Subramonian, Christopher D. Gill, César Sánchez 0001, Henny B. Sipma |
EMSOFT | 3 |
| 2006 | On efficient distributed deadlock avoidance for real-time and embedded systemsabstractThread allocation is an important problem in distributed real-time and embedded (DRE) systems. A thread allocation policy that is too liberal may cause deadlock, while a policy that is too conservative limits potential parallelism, thus wasting resources. However, achieving (globally) optimal thread utilization, while avoiding deadlock, has been proven impractical in distributed systems: it requires too much communication between components. In previous work we showed that efficient local thread allocation protocols are possible if the protocols are parameterized by global static data, in particular by an annotation of the global call graph of all tasks to be performed by the system. We proved that absence of cyclic dependencies in this annotation guarantees absence of deadlock. In this paper we present an algorithm to compute optimal annotations, that is annotations that maximize parallelism while satisfying the condition of acyclicity. Moreover, we show that the condition of acyclicity is in fact tight and exhibits a rather surprising anomaly: if a cyclic dependency is present in the annotation of the call graph and a certain minimum number of threads is provided, deadlock is reachable. Thus, in the presence of cyclic dependencies, increasing the number of threads may introduce the possibility of deadlock in an originally deadlock free system. César Sánchez 0001, Henny B. Sipma, Zohar Manna, Venkita Subramonian, Christopher D. Gill |
IPDPS | 1 |
| 2006 | Distributed Priority Inheritance for Real-Time and Embedded Systems
César Sánchez 0001, Henny B. Sipma, Christopher D. Gill, Zohar Manna |
OPODIS | 1 |
| 2005 | Final Semantics for Event-Pattern Reactive Programs
César Sánchez 0001, Henny B. Sipma, Matteo Slanina, Zohar Manna |
CALCO | 1 |
| 2005 | Thread Allocation Protocols for Distributed Real-Time and Embedded Systems
César Sánchez 0001, Henny B. Sipma, Venkita Subramonian, Christopher D. Gill, Zohar Manna |
FORTE | 1 |
| 2005 | Expressive Completeness of an Event-Pattern Reactive Programming Language
César Sánchez 0001, Matteo Slanina, Henny B. Sipma, Zohar Manna |
FORTE | 1 |
| 2005 | LOLA: Runtime Monitoring of Synchronous SystemsabstractWe present a specification language and algorithms for the online and offline monitoring of synchronous systems including circuits and embedded systems. Such monitoring is useful not only for testing, but also under actual deployment. The specification language is simple and expressive; it can describe both correctness/failure assertions along with interesting statistical measures that are useful for system profiling and coverage analysis. The algorithm for online monitoring of queries in this language follows a partial evaluation strategy: it incrementally constructs output streams from input streams, while maintaining a store of partially evaluated expressions for forward references. We identify a class of specifications, characterized syntactically, for which the algorithm's memory requirement is independent of the length of the input streams. Being able to bound memory requirements is especially important in online monitoring of large input streams. We extend the concepts used in the online algorithm to construct an efficient offline monitoring algorithm for large traces. We have implemented our algorithm and applied it to two industrial systems, the PCI bus protocol and a memory controller. The results demonstrate that our algorithms are practical and that our specification language is sufficiently expressive to handle specifications of interest to industry. Ben D'Angelo, Sriram Sankaranarayanan 0001, César Sánchez 0001, Will Robinson, Bernd Finkbeiner, Henny B. Sipma, Sandeep Mehrotra, Zohar Manna |
TIME | 3 |
| 2003 | Event Correlation: Language and Semantics
César Sánchez 0001, Sriram Sankaranarayanan 0001, Henny B. Sipma, Ting Zhang 0001, David L. Dill, Zohar Manna |
EMSOFT | 1 |