523 research outputs found
Branching vs. Linear Time: Semantical Perspective
The discussion of the relative merits of linear- versus
branching-time frameworks goes back to the early 1980s.
We revisit here this issue from a fresh perspective and postulate three
principles that we view as fundamental to any discussion of process
equivalence. We show that our principles yield a unique notion of
process equivalence, which is trace based, rather than tree based
Comparator automata in quantitative verification
The notion of comparison between system runs is fundamental in formal
verification. This concept is implicitly present in the verification of
qualitative systems, and is more pronounced in the verification of quantitative
systems. In this work, we identify a novel mode of comparison in quantitative
systems: the online comparison of the aggregate values of two sequences of
quantitative weights. This notion is embodied by {\em comparator automata}
({\em comparators}, in short), a new class of automata that read two infinite
sequences of weights synchronously and relate their aggregate values.
We show that {aggregate functions} that can be represented with B\"uchi
automaton result in comparators that are finite-state and accept by the B\"uchi
condition as well. Such {\em -regular comparators} further lead to
generic algorithms for a number of well-studied problems, including the
quantitative inclusion and winning strategies in quantitative graph games with
incomplete information, as well as related non-decision problems, such as
obtaining a finite representation of all counterexamples in the quantitative
inclusion problem.
We study comparators for two aggregate functions: discounted-sum and
limit-average. We prove that the discounted-sum comparator is -regular
iff the discount-factor is an integer. Not every aggregate function, however,
has an -regular comparator. Specifically, we show that the language of
sequence-pairs for which limit-average aggregates exist is neither
-regular nor -context-free. Given this result, we introduce the
notion of {\em prefix-average} as a relaxation of limit-average aggregation,
and show that it admits -context-free comparators
Flow Games
In the traditional maximal-flow problem, the goal is to transfer maximum flow in a network by directing, in each vertex in the network, incoming flow into outgoing edges. While the problem has been extensively used in order to optimize the performance of networks in numerous application areas, it corresponds to a setting in which the authority has control on all vertices of the network.
Today\u27s computing environment involves parties that should be considered adversarial.
We introduce and study {em flow games}, which capture settings in which the authority can control only part of the vertices. In these games, the vertices are partitioned between two players: the authority and the environment. While the authority aims at maximizing the flow, the environment need not cooperate. We argue that flow games capture many modern settings, such as partially-controlled pipe or road systems or hybrid software-defined communication networks.
We show that the problem of finding the maximal flow as well as an optimal strategy for the authority in an acyclic flow game is -complete, and is already -hard to approximate. We study variants of the game: a restriction to strategies that ensure no loss of flow, an extension to strategies that allow non-integral flows, which we prove to be stronger, and a dynamic setting in which a strategy for a vertex is chosen only once flow reaches the vertex.
We discuss additional variants and their applications, and point to several interesting open problems
Balancing Scalability and Uniformity in SAT Witness Generator
Constrained-random simulation is the predominant approach used in the
industry for functional verification of complex digital designs. The
effectiveness of this approach depends on two key factors: the quality of
constraints used to generate test vectors, and the randomness of solutions
generated from a given set of constraints. In this paper, we focus on the
second problem, and present an algorithm that significantly improves the
state-of-the-art of (almost-)uniform generation of solutions of large Boolean
constraints. Our algorithm provides strong theoretical guarantees on the
uniformity of generated solutions and scales to problems involving hundreds of
thousands of variables.Comment: This is a full version of DAC 2014 pape
Optimized Temporal Monitors for SystemC
SystemC is a modeling language built as an extension of C++. Its growing popularity and the increasing complexity of designs have motivated research efforts aimed at the verification of SystemC models using assertion-based verification (ABV), where the designer asserts properties that capture the design intent in a formal language such as PSL or SVA. The model then can be verified against the properties using runtime or formal verification techniques. In this paper we focus on automated generation of runtime monitors from temporal properties. Our focus is on minimizing runtime overhead, rather than monitor size or monitor-generation time. We identify four issues in monitor generation: state minimization, alphabet representation, alphabet minimization, and monitor encoding. We conduct extensive experimentation and identify a combination of settings that offers the best performance in terms of runtime overhead
- …