Table of Contents
Fetching ...

Execution and monitoring of HOA automata with HOAX

Luca Di Stefano

TL;DR

The paper tackles the lack of execution tools for HOA ω-automata by introducing Hoax, a configurable, open-source engine that executes HOA automata and provides runtime monitoring via trap sets for non-parity acceptance conditions. It builds on formal notions of trap sets and BSCCs to enable a one-step monitor and verdicts (good/bad/ugly) or ⊥, including composition rules for complex acceptance conditions. The authors present a practical implementation with drivers and hooks, and validate it against PyContract on a lock-acquisition benchmark, highlighting performance trade-offs and interoperability with existing HOA tooling. The work demonstrates the feasibility and usefulness of trap-set based monitoring in HOA execution and outlines future directions to handle nondeterminism and richer logics to improve scalability and applicability.

Abstract

We present a tool called Hoax for the execution of ω-automata expressed in the popular HOA format. The tool leverages the notion of trap sets to enable runtime monitoring of any (non-parity) acceptance condition supported by the format. When the automaton is not monitorable, the tool may still be able to recognise so-called ugly prefixes, and determine that no further observation will ever lead to a conclusive verdict. The tool is open-source and highly configurable. We present its formal foundations, its design, and compare it against the trace analyser PyContract on a lock acquisition scenario.

Execution and monitoring of HOA automata with HOAX

TL;DR

The paper tackles the lack of execution tools for HOA ω-automata by introducing Hoax, a configurable, open-source engine that executes HOA automata and provides runtime monitoring via trap sets for non-parity acceptance conditions. It builds on formal notions of trap sets and BSCCs to enable a one-step monitor and verdicts (good/bad/ugly) or ⊥, including composition rules for complex acceptance conditions. The authors present a practical implementation with drivers and hooks, and validate it against PyContract on a lock-acquisition benchmark, highlighting performance trade-offs and interoperability with existing HOA tooling. The work demonstrates the feasibility and usefulness of trap-set based monitoring in HOA execution and outlines future directions to handle nondeterminism and richer logics to improve scalability and applicability.

Abstract

We present a tool called Hoax for the execution of ω-automata expressed in the popular HOA format. The tool leverages the notion of trap sets to enable runtime monitoring of any (non-parity) acceptance condition supported by the format. When the automaton is not monitorable, the tool may still be able to recognise so-called ugly prefixes, and determine that no further observation will ever lead to a conclusive verdict. The tool is open-source and highly configurable. We present its formal foundations, its design, and compare it against the trace analyser PyContract on a lock acquisition scenario.

Paper Structure

This paper contains 5 sections, 1 theorem, 3 equations, 2 figures, 2 algorithms.

Key Result

lemma thmcounterlemma

$T$ is a trap set of a complete automaton $\mathcal{A}$ iff for every run $\rho$ of $\mathcal{A}$, if $\rho_i \in T$ for some $i\geq 0$, then $\rho_j \in T$$\forall j \geq i$.

Figures (2)

  • Figure 1: Examples of graphs with their trap sets (enclosed in dashed boxes) and SCCs (separated by solid lines).
  • Figure 2: Running times of Hoax and PyContract on the lock acquisition systems.

Theorems & Definitions (16)

  • definition thmcounterdefinition: Words, prefixes, suffixes
  • definition thmcounterdefinition: Automata
  • definition thmcounterdefinition: Deterministic and complete automata
  • definition thmcounterdefinition: Runs
  • definition thmcounterdefinition: Accepting runs, languages
  • definition thmcounterdefinition: Strongly connected components; Bottom SCCs
  • definition thmcounterdefinition: Good, bad, ugly prefixes; monitorability DBLP:journals/fmsd/KupfermanV01DBLP:journals/tosem/BauerLS11.
  • definition thmcounterdefinition: Trap sets DBLP:journals/nc/KlarnerBS15
  • lemma thmcounterlemma
  • proof
  • ...and 6 more