Source-linked AI summary

Decentralised LTL Monitoring

Andreas Bauer, Yliès Falcone

arXiv:1111.5133v3cs.SE

TL;DR

The paper addresses how to monitor global LTL specifications when distributed systems lack a global trace or central observer. It distributes progression-based monitoring across local monitors, which exchange obligations to derive global verdicts. The approach detects global satisfaction or violation locally while experiments report lower communication overhead than centralized event collection.

  • Problem

    Monitoring global LTL behavior is difficult when distributed systems have no global trace or central decision point and communication must remain minimal.

  • Method

    The paper distributes progression-based LTL monitoring across local monitors that observe partial traces and communicate future or past obligations.

  • Results

    The approach makes locally observed definitive verdicts imply global satisfaction or violation and experimentally yields lower communication overhead than centralized collection.

  • Takeaways & Limitations

    Decentralised LTL monitoring is feasible without global observation, while selected experiments report much lower communication overhead and nearly negligible delay for specification-pattern formulas.

  • Takeaways & Limitations

    Verdicts can be delayed by communication, and the decentralised semantics may still return ? after standard LTL3 has returned ⊤.

Abstract

from arXiv · show

Users wanting to monitor distributed or component-based systems often perceive them as monolithic systems which, seen from the outside, exhibit a uniform behaviour as opposed to many components displaying many local behaviours that together constitute the system's global behaviour. This level of abstraction is often reasonable, hiding implementation details from users who may want to specify the system's global behaviour in terms of an LTL formula. However, the problem that arises then is how such a specification can actually be monitored in a distributed system that has no central data collection point, where all the components' local behaviours are observable. In this case, the LTL specification needs to be decomposed into sub-formulae which, in turn, need to be distributed amongst the components' locally attached monitors, each of which sees only a distinct part of the global behaviour. The main contribution of this paper is an algorithm for distributing and monitoring LTL formulae, such that satisfac- tion or violation of specifications can be detected by local monitors alone. We present an implementation and show that our algorithm introduces only a minimum delay in detecting satisfaction/violation of a specification. Moreover, our practical results show that the communication overhead introduced by the local monitors is considerably lower than the number of messages that would need to be sent to a central data collection point.

1 Introduction

Decentralised LTL monitoring addresses systems without a global trace or central decision point by distributing monitoring across local component monitors. The approach aims to detect global satisfaction or violation with minimal communication and delay.

  • Motivation: Traditional LTL monitoring treats the system as a black box whose visible behavior is observed by a monitor.Applications include Java and C programs, Web services, and e-commerce transactions.
  • Motivation: Component-based systems may lack a global trace and central decision point, making continuously collecting all events impractical when communication and latency matter.The paper focuses on minimizing communication required for monitoring the LTL formula.
  • Approach: Decentralised monitoring evaluates a global LTL specification using partial traces observed separately by monitors attached to system components.The system consists of n components with locally visible, disjoint event sets and synchronous communication.
  • Guarantees: A local monitor’s definitive violation or satisfaction verdict implies a corresponding global verdict for the monitored specification.Such a trace is respectively a bad or good prefix for the LTL formula.
  • Communication: Monitors communicate obligations because each local trace contains only part of the global behavior, while communication is targeted to remain below centralized event forwarding.Decentralised detection can incur latency as results pass between monitors.

2 Preliminaries

The paper models a synchronous system of components with disjoint local observations and a global event alphabet. LTL specifies desired or undesired behaviors over the resulting global traces.

  • Architecture: Each component emits events at discrete times, and the system operates under a perfect synchrony hypothesis.Communication and computation are assumed to take no time within a step; messages sent at time t arrive at time t + 1.
  • Local observations: Projection functions restrict propositions and events to each monitor’s local view, with distinct components observing disjoint sets.Component traces are finite sequences over their respective local event alphabets.
  • Global behavior: The global behavior is formed by taking the time-aligned union of events from the components’ local traces.The global trace records the combined event at each discrete time step.
  • LTL: LTL formulas are specified over atomic propositions without encoding how those propositions are distributed across the system architecture.An LTL formula denotes a language of infinite traces describing desired or undesired behaviors.

3 Monitoring LTL formulae by progression

The paper uses progression to monitor LTL formulas by rewriting them after each event into obligations for the remaining trace. This yields good, bad, or undecided finite-trace verdicts.

  • Finite-trace monitoring: Good prefixes force every continuation to satisfy the formula, whereas bad prefixes force every continuation to violate it.These sets are defined over the language described by the LTL formula.
  • Progression: Progression rewrites a formula into a current-observation condition and a future obligation for the remaining trace.The progression function is defined recursively for LTL operators.
  • Progression: σ · w |= ϕ holds exactly when w |= P(ϕ, σ), so progression preserves the formula’s semantics after consuming an event.This equivalence is the basis for stepwise monitoring.
  • Verdicts: P(ϕ, σ) = ⊤ identifies σ as a good prefix, while P(ϕ, σ) = ⊥ identifies it as a bad prefix.A nonterminal progressed formula indicates that both satisfying and violating continuations remain possible.
  • Verdicts: Repeated progression yields LTL3 verdicts: ⊤ for good prefixes, ⊥ for bad prefixes, and ? otherwise.The procedure applies the progression function once per event in the observed trace.
  • Limitation: Formula size may grow with the number of events, although practical simplification rules usually prevent this disadvantage from occurring.This is identified as a disadvantage relative to the cited LTL3 monitoring procedure.

4 Decentralised progression

Decentralised progression lets each local monitor rewrite formulas using partial observations while exchanging urgent obligations with other monitors. Unobservable propositions become obligations for monitors that can evaluate them.

  • Local progression: Each local monitor is a rewriting engine that applies LTL progression to its locally observed events and formula.Monitors can send one message and receive up to n − 1 messages per synchronous step.
  • Communication: Monitors communicate future or past obligations encoded as LTL formulas to evaluate global requirements from partial traces.This communication is needed because a local monitor cannot decide propositions outside its observation set.
  • Limitation: The restricted X-operator does not provide the full flexibility or succinctness of past-time LTL.The paper limits its use to atomic propositions or chains of X-operators before atomic propositions.
  • Obligation routing: Urgency ranks obligations so that monitors can prioritize which formula to send when multiple monitors could evaluate them.A formula is more urgent than another when its urgency level is greater than the other’s.
  • Partial observation: When a proposition is unobservable locally, progression preserves uncertainty by rewriting it into an X-obligation for another monitor.A locally absent proposition is not automatically treated as false when it may be observed elsewhere.
  • Delay: Decentralised progression can delay verdicts because obligations and results may require multiple synchronous communication steps.The framework claims an upper bound on communication time and optimality under its assumptions.

5 Semantics

Decentralised semantics determine whether finite distributed traces are good or bad prefixes, while retaining unresolved obligations when no verdict is yet possible. The semantics agree with standard finite-trace monitoring in the one-component case.

  • Distributed progression: Local monitors exchange obligations, expressed as LTL formulae, when their observations alone cannot determine whether a trace is a good prefix.A monitor that observes the missing action can identify a bad prefix, while others need message exchange to obtain the relevant obligations.
  • Verdict semantics: A progression result of ⊤ denotes a good prefix, ⊥ denotes a bad prefix, and an unresolved formula means monitoring must continue.The unresolved case indicates that the trace is neither a good nor a bad prefix so far.
  • Finite-trace semantics: The decentralised satisfaction relation |=D is defined on finite traces, unlike standard LTL, which is defined on infinite traces.The paper distinguishes |=D from LTL3 and standard LTL because decentralised progression can preserve past obligations instead of immediately returning a verdict.
  • One-component case: In a one-component system, decentralised satisfaction exactly matches the LTL3 satisfaction relation for every finite trace and LTL formula.This is stated as Corollary 1 for |M| = 1.

6 Communication and decision making

Local monitors progress obligations over projected events and exchange formulas when another monitor must evaluate an obligation. Communication ordering bounds detection delay, while the algorithm preserves sound verdicts and detects distributed verdicts within at most n additional steps.

  • Local monitor operation: Each monitor observes a local event projection, progresses its current obligation, and exchanges obligations encoded as LTL formulae when other components are needed.A received obligation is conjoined with the monitor’s existing obligation before further progression.
  • Communication mechanism: Urgent obligations are sent to a monitor whose propositions can evaluate them, with a priority order resolving equally urgent choices.The ordering ensures that each obligation set decreases after transmission and bounds communication-induced delay.
  • Decision making: The local-monitor algorithm returns ⊤ or ⊥ when the current projected event satisfies or violates the monitor’s local obligation.The algorithm initializes local obligations from the global specification and updates them after receiving events and messages.
  • Detection delay: Detection may lag occurrence because monitors need communication rounds to establish whether a global prefix is good or bad.In the three-monitor example, satisfaction occurring at t = 1 is detected by monitors MA and MB at t = 3.
  • Resource considerations: Formula progression may grow with the number of events, although practical simplification rules usually prevent this problem.The monitors need only retain the last |M| events to progress occurring past obligations.
  • Correctness guarantees: The algorithm is sound and complete up to distributed delay: definitive decentralised verdicts agree with LTL3, and every LTL3 verdict appears within at most n additional steps.The decentralised procedure can return ? when LTL3 already returns ⊤, because communication delay postpones local certainty.

7 Experimental results

DECENTMON evaluates decentralized LTL monitoring against centralized monitoring using randomly generated formulae and specification patterns. The experiments report substantially lower communication overhead and nearly negligible detection delay for pattern-based formulae.

  • Implementation: DECENTMON implements the distributed LTL monitoring algorithm in 1,800 LLOC of OCaml and compares decentralized monitoring with centralized trace merging.The system accepts multiple component traces and an LTL formula, then evaluates both monitoring modes.
  • Randomly generated formulae: 1,000 randomly generated LTL formulae were evaluated across different formula sizes and alphabets.Formula size is measured by the number of operator entailments, excluding state formulae.
  • Randomly generated formulae: For size-6 formulae, centralized monitoring reached verdicts at average trace length 11.808, versus 12.366 for decentralized monitoring, a 1.0472 delay ratio.The reported trace-length difference quantifies the average detection delay of decentralized monitoring relative to centralized monitoring.
  • Communication overhead: Decentralized monitoring used approximately 25% of the communication overhead induced by centralized monitoring in the random-formula benchmark.Centralized communication counts events sent to the central monitor, whereas decentralized communication counts obligations transmitted between local monitors.
  • Specification patterns: Specification-pattern benchmarks generated 1,000 formulae for each of nine patterns over the same architecture.The patterns included absence, existence, bounded existence, universal, precedence, response, and chain variants.
  • Specification patterns: Pattern-based benchmarks showed significantly lower communication overhead and almost negligible delay compared with centralized monitoring.Local monitors detected satisfaction or violation at almost the same time as a global monitor, using continuous syntactic simplification to avoid formula explosion.

8 Related work and conclusions

The paper distinguishes its approach from prior monitoring work by targeting automatic distribution of LTL monitors while minimizing inter-monitor communication. Its experiments indicate that this decentralized approach is implementable and reduces communication relative to centralized event collection.

  • Related work: Prior work addressed temporal monitoring of asynchronous systems and partially ordered executions, but used different monitoring objectives or settings.The cited approaches include MTTL for asynchronous systems and methods for physically distributed systems or partially ordered traces.
  • Conclusions: The paper presents automatic LTL-monitor distribution without a global observation point or central trace collection.It also explicitly targets minimizing messages exchanged between local monitors.
  • Conclusions: The implementation demonstrates feasibility, while experiments observe communication savings relative to sending all local events to a global monitor.The comparison is against centralized monitoring in which local monitors transmit their observed events to one global monitor.

A Proofs

This section contains the proofs of the results stated in the paper.

  • The section contains proofs of the paper’s stated results.

A.1 Proofs for Section 3

The proofs establish that LTL progression preserves satisfaction semantics and that resulting top or bottom formulas identify good or bad prefixes. They use structural induction over LTL formulae and the definitions of progression and prefix classes.

  • Lemma 1: The proof of Lemma 1 uses structural induction to show that progression after an event preserves LTL satisfaction.It establishes σ · w |= ϕ iff w |= P(ϕ, σ) for events, traces, and LTL formulae.
  • Proof structure: The proof includes the base cases for ⊤, ⊥, and atomic propositions before extending the argument through the compound operators.For atomic propositions, progression yields ⊤ when the proposition occurs in the event and ⊥ otherwise.
  • Progression cases: The detailed induction relies on the progression equations for Boolean and temporal operators, including negation, disjunction, globally, next, and until.These equations connect the current event with the residual formula evaluated on the remaining trace.
  • Lemma 1: The Boolean and temporal cases derive the progressed formula by combining the induction hypotheses with the semantics of each operator.The proof explicitly treats disjunction, conjunction, globally, next, and until.
  • Lemma 1: The until case handles whether the right-hand formula is satisfied immediately or after prior satisfaction of the left-hand formula.Both directions connect the semantics of until with the progression expression.
  • Lemma 2: Lemma 2 proves that progression to ⊤ implies a good prefix, while progression to ⊥ implies a bad prefix.The argument follows from Lemma 1, LTL semantics, progression, and the definitions of good and bad prefixes.
  • Lemma 1: The induction covers constants, atomic propositions, negation, Boolean operators, and temporal operators including G, X, and U.The cases apply the corresponding progression definitions and LTL semantics.

A.2 Proofs for Section 5

The one-component case reduces the decentralised progression rules to the centralised rules, so both monitoring semantics coincide.

  • Corollary 1: |M| = 1 implies that decentralised and centralised monitoring give the same verdict for every finite trace and LTL formula.The proof identifies this as the statement of Corollary 1.
  • Proof: With one component, the extended progression rule for atomic propositions reduces to its centralised definition.The proof states that P(p, σ, AP 1) = P(p, σ) for every atomic proposition and event.
  • Proof: No past goal is generated in the one-component case, so the extended progression rule for past goals is never applied.This is why the decentralised proof reduces directly to the centralised case.

A.3 Proofs for Section 6

The decentralised algorithm maintains and progresses local obligations, exchanges urgent obligations between monitors, and is proved sound with respect to centralised monitoring.

  • Communication: A monitor sends a formula to another monitor when that monitor is selected for the most urgent local obligation.The send predicate records whether monitor i sends to monitor j, while the priority rule chooses the first monitor containing the most urgent obligation.
  • Algorithm L: Each monitor maintains a local obligation, receives obligations from other monitors, progresses them with its local event, and may send urgent obligations onward.The algorithm distinguishes kept, received, progression, and send operations across monitoring rounds.
  • Algorithm L: At time t = 0, a monitor progresses the global specification with its current local event; later rounds progress the kept and received obligations together.The progression rule uses P(ϕ, ui(0), AP i) initially and P(kept(i, t −1) ∧ received(i, t), ui(t), AP i) thereafter.
  • Proof structure: The local obligations kept between rounds are not urgent, so transmitted urgent obligations drive the proof of the monitoring properties.The proof explicitly separates kept obligations from urgent obligations transmitted and rewritten by local monitors.
  • Soundness: The decentralised algorithm is sound: whenever it yields a verdict for a trace, the corresponding centralised algorithm yields the same verdict.The proof derives this from the progression and local-obligation lemmas; a verdict of ⊤ is explicitly propagated to the decentralised semantics.
  • Progression: The progression lemma relates a global event and a local observation by showing that satisfaction of the original formula corresponds to satisfaction of the progressed formula on the suffix.This relation is stated for an LTL formula, a global event, a local event, and an infinite trace.
  • Verdict production: If a finite prefix makes the centralised progression reach ⊤ or ⊥, some local obligation eventually reaches the same verdict.The stated result quantifies over every LTL formula, finite prefix, and continuation.
  • Architecture transformations: Merging monitors preserves verdict production for two components and extends to merging the two lowest-priority components in an n-component architecture.The paper states separate lemmas for two-monitor merging and for replacing the two lowest-priority monitors by their merge.
Loading 1111.5133v3…