Journal Article10.1109/TPDS.2007.1077
Solving Computation Slicing Using Predicate Detection
TL;DR: It is discussed how the "equivalence" result of this paper can be utilized to derive a faster algorithm for solving the general predicate detection problem in many cases.
read more
Abstract: Given a distributed computation and a global predicate, predicate detection involves determining whether there exists at least one consistent cut (or global state) of the computation that satisfies the predicate. On the other hand, computation slicing is concerned with computing the smallest subcomputation (with the least number of consistent cuts) that contains all consistent cuts of the computation satisfying the predicate. In this paper, we investigate the relationship between predicate detection and computation slicing and show that the two problems are actually equivalent. Specifically, given an algorithm to detect a predicate b in a computation C, we derive an algorithm to compute the slice of C with respect to b. The time complexity of the (derived) slicing algorithm is O(n|E|T), where n is the number of processes, E is the set of events, and O(T) is the time complexity of the detection algorithm. We discuss how the "equivalence" result of this paper can be utilized to derive a faster algorithm for solving the general predicate detection problem in many cases. Slicing algorithms described in our earlier papers are all offline in nature. In this paper, we also present two online algorithms for computing the slice. The first algorithm can be used to compute the slice for a general predicate. Its amortized time complexity is O(n(c + n)T) per event, where c is the average concurrency in the computation and O(T) is the time complexity of the detection algorithm. The second algorithm can be used to compute the slice for a regular predicate. Its amortized time complexity is only O(n2) per event.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
A survey of challenges for runtime verification from advanced application domains (beyond software)
César Sánchez,Gerardo Schneider,Wolfgang Ahrendt,Ezio Bartocci,Domenico Bianculli,Christian Colombo,Yliès Falcone,Adrian Francalanza,Srđan Krstić,João Lourenço,Dejan Nickovic,Gordon J. Pace,José Rufino,Julien Signoles,Dmitriy Traytel,Alexander Weiss +15 more
- 01 Nov 2019
TL;DR: In this paper, the authors 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, and the computational models that characterize these domains require to devise new techniques beyond the current state of the art in runtime verification.
Enforcing Information Flow Security Properties in Cyber-Physical Systems: A Generalized Framework Based on Compensation
Thoshitha T. Gamage,Bruce M. McMillin,Thomas Roth +2 more
- 19 Jul 2010
TL;DR: In this paper, the authors present a general theory of event compensation as an information flow security enforcement mechanism for Cyber-Physical Systems (CPSs) and propose a framework that unifies cyber and physical aspects of security through the shared semantics of information flow.
A Distributed Abstraction Algorithm for Online Predicate Detection
Himanshu Chauhan,Vijay K. Garg,Aravind Natarajan,Neeraj Mittal +3 more
- 30 Sep 2013
TL;DR: This paper presents first distributed online algorithm for computing the slice of a distributed computation with respect to a regular predicate, and distributes the work and storage requirements across the system, thus reducing the space and computation complexity per process.
40
•Posted Content
Techniques and Applications of Computation Slicing
Neeraj Mittal,Vijay K. Garg +1 more
TL;DR: In this paper, the notion of computation slice is introduced to ameliorate the associated combinatorial explosion problem, where the slice of a computation with respect to a predicate is a (sub)computation with the least number of consistent cuts that contains all consistent cuts of the computation satisfying the predicate.
Formal Specification and Runtime Detection of Dynamic Properties in Asynchronous Pervasive Computing Environments
TL;DR: The property detection for asynchronous context (PDAC) framework is proposed, which consists of three essential parts and the SurfMaint algorithm is proposed to achieve runtime maintenance of the active surface of the lattice, which further enables runtime detection of dynamic properties.
16
References
Time, clocks, and the ordering of events in a distributed system
TL;DR: In this article, the concept of one event happening before another in a distributed system is examined, and a distributed algorithm is given for synchronizing a system of logical clocks which can be used to totally order the events.
Time, clocks, and the ordering of events in a distributed system
TL;DR: In this paper, the concept of one event happening before another in a distributed system is examined, and a distributed algorithm is given for synchronizing a system of logical clocks which can be used to totally order the events.
The complexity of theorem-proving procedures
Stephen A. Cook
- 03 May 1971
TL;DR: It is shown that any recognition problem solved by a polynomial time-bounded nondeterministic Turing machine can be “reduced” to the problem of determining whether a given propositional formula is a tautology.
7.4K
Distributed snapshots: determining global states of distributed systems
K. Mani Chandy,Leslie Lamport +1 more
TL;DR: An algorithm by which a process in a distributed system determines a global state of the system during a computation, which helps to solve an important class of problems: stable property detection.
Programmers use slices when debugging
TL;DR: The experiment reported here shows that programmers also routinely break programs into one kind of coherent piece which is not coniguous.
854