Tightened Transitive Closure of Integer Addition Constraints

Total Page:16

File Type:pdf, Size:1020Kb

Tightened Transitive Closure of Integer Addition Constraints Proceedings of the Eighth Symposium on Abstraction, Reformulation, and Approximation (SARA2009) Tightened Transitive Closure of Integer Addition Constraints Peter Revesz Department of Computer Science and Engineering University of Nebraska-Lincoln [email protected] Abstract above constraints can be used as an abstract domain, called the octagon abstract domain, and the program semantics can We present algorithms for testing the satisfiability and find- be abstracted in terms of a disjunctive normal form formula ing the tightened transitive closure of conjunctions of addi- tion constraints of the form ±x ± y ≤ d and bound con- of the above constraints. This new abstract domain is more straints of the form ±x ≤ d where x and y are integer vari- precise than intervals (Cousot and Cousot 1976) but simpler ables and d is an integer constrant. The running time of these than polyhedra (Cousot and Halbwachs 1978). algorithms is a cubic polynomial in the number of input con- Addition constraints include difference constraints of the straints. We also describe an efficient matrix representation form x − y ≤ d. Since difference constraints play an of addition and bound constraints. The matrix representation important role in software verification (Alur et al. 1995; provides a easy, algebraic implementation of the satisfiability Clarke 1999; McMillan 1993), it is an interesting question and tightened transitive closure algorithms. We also outline whether addition constraints will also prove beneficial for the use of these algorithms for the improved implementation software verification. It is well-known that difference con- of abstract interpretation methods based on the octagonal ab- stract domain. straints can be represented by Difference-Bound Matrices or DBMs, which allow the definition of many efficient opera- tions on them when the variables range over either the ratio- nal numbers or the integers. 1. Introduction An abstract interpretation of Datalog queries with bound and difference constraints is implemented in the MLPQ con- Many problems can be described by constraints of the form: straint database system (Revesz et al. 2000), based on ear- lier constraint database concepts (Kanellakis et al. 1995, Addition : ±x ± y ≤ d Revesz 1993). Using this abstract interpretation, the MLPQ system can be transformed into a software verification Bound : ±x ≤ d system of both logic programs and procedural programs x y d (Delzanno and Podelski 1999; Fribourg and Olsen´ 1997; where , are rational or integer variables, and is a con- Fribourg and Richardson 1996; Revesz 2007). The MLPQ stant (Revesz 2002). Addition constraints are also called system also allows checking whether a given error condition unit two variables per inequality (UTVPI) constraints, and and the under-approximation of the program semantics in- bound constraints are also called single variable per in- tersect, thereby proving that certain errors can occur during equality (SVPI) constraints (Jaffar et al. 1994). program executions (Anderson and Revesz 2005). One recent application of these constraints is in the The applicability of the octagon abstract domain will de- abstract interpretation of programs. Abstract interpreta- pend largely on whether similarly efficient operators can be tion derives either an over-approximation or an under- defined on it. There are currently some promising results for approximation of the collection semantics of a program rational numbers. (Mine´ 2001) shows that testing the sat- (Cousot and Cousot 1976). (Mine´ 2001) pointed out that the isfiability of addition and bound constraints over n rational 3 Copyright c 2009, Association for the Advancement of Artificial variables can be done in O(n ) time. However, (Mine´ 2001) Intelligence (www.aaai.org). All rights reserved. conjectures the satisfiability problem to be O(n4) with inte- 136 ger variables. a dummy variable, we write every bound constraint as an Currently the best tightened transitive closure algorithm addition constraint. Due to the deletion of trivially implied with n integer variables and m input constraints requires constraints, for each a, b ∈{−1, 1} combination and dis- 2 O(mn ) time (Harvey and Stuckey 1997). This algorithm tinct variables xi and xj, we can have only one constraint of also returns “unsatisfiable” if the input constraints have no the form axi + bxj ≤ d. 2 integer solution. Since with n integer variables m is O(n ), We also rewrite every −xi + xj ≤ d into xj − xi ≤ d, 4 this algorithm runs in O(n ) time in the worst case. every xi + xj ≤ d where i>jinto xj + xi ≤ d, and (Peron´ and Halbwachs 2007) recently discovered another every −xi −xj ≤ d where i>jinto −xj −xi ≤ d. We use interesting difference between the case of rational and inte- matrix M+− to represent constraints when a =1,b= −1, ger variables. They show that conjunctions of rational dif- matrix M++ to represent constraints when a = b =1, and ference constraints and disequality constraints of the form matrix M−− to represent constraints when a = b = −1,as x = y still allow satisfiability testing in O(n3) time. This follows: is surprising because with integer variables the same prob- d if (xi − xj ≤ d) ∈ C lem is known to be NP-complete by a reduction of the graph M+−[i, j]= +∞ otherwise 3-colorability problem (Rosenkrantz and Hunt 1980). The result of (Peron´ and Halbwachs 2007) suggested the possibility that for conjunctions of bound and addition con- d if (xi + xj ≤ d) ∈ C M++[i, j]= straints too the basic operators will be harder with integer +∞ otherwise variables than with rational variables. In spite of the ear- lier conjectures and suggestions, in this paper we present 3 an O(n ) satisfiability testing algorithm with integer vari- d if (−xi − xj ≤ d) ∈ C M−−[i, j]= ables. We also present an O(n3 log n) algorithm that finds +∞ otherwise the tightened transitive closure for conjunctions of integer addition and bound constraints. The above is a particularly efficient and convenient rep- M The rest of this paper is organized as follows. Section 2 resentation of addition and bound constraints because ++ M gives a brief review of the basic concepts and previous work. and −− are upper triangular matrices and do not need the Section 3 presents a variable elimination algorithm and a variable 0. satisfiability testing algorithm, which is based on succes- Example 1 Consider the following conjunction of addition sive variable elimination. Section 4 presents a tightened and bound constraints over the variables x and y: transitive closure algorithm for conjunctions of addition and bound constraints. Finally, Section 5 discusses some related −x ≤−25,y≤ 3,x−y ≤ 4,x+y ≤ 10, −x−y ≤−40 and future work. This set of addition and bound constraints can be represented by the following three matrices. 2. Basic Concepts M+− 0 xy 2.1 Addition-Bound Matrices 0 +∞−25 +∞ x +∞ 4+∞ Several researchers developed Addition-Bound Matrices or y 3+∞ +∞ ABMs to represent conjunctions of addition and bound con- straints in analogy to the well-known Difference-Bound Ma- M++ trices or DBMs that represent conjunctions of bound and xy difference constraints. x (Mine´ 2001) represents a conjunction of addition and 10 y bound constraints over variables V = {x1,...,xn} by a + conjunction of difference constraints over variables V = M−− + − + − {x1 ,x1 ,...,xn ,xn }, that is, every variable has a positive + − xy form x equivalent to xi and a negative form x equivalent i i x − to −xi. While this representation takes advantage of already 40 well-developed DBM algorithms, in this paper we prefer a y simple three-matrices representation. We say that an addition constraint ax + by ≤ d (or bound constraint ax ≤ d) trivially implies another addition con- This representation is useful to check whether we have straint ax+by ≤ d (respectively, bound constraint ax ≤ d) a constraint of a certain form and to avoid trivially implied if d<d. We always simplify the given addition and bound constraints in our representation. In the following we as- constraints by deleting those constraints that are trivially im- sume that when we add a new constraint axi + bxj ≤ d to plied by other given constraints. matrix Mab, then we overwrite Mab[i, j] with d if its cur- We allow 0 to be a special variable, denoted as x0, and rent value is greater than d. We also assume that initially all we number the other variables as x1,...,xn. Using x0 as entries are +∞. 137 For simplicity we will not always use the above repre- and B is the union of constraints generated by the rules: sentation in describing our algorithms when the representa- by ≤ d + d −ax ≤ d tion is not needed. However, it is easy to translate our al- if gorithms into one that uses the above matrix representation even though we prefer to describe some of the algorithmic ax ≤ d + d if −by ≤ d ideas using graphs. The translation from graphs to matrices is the basis of efficient, algebraic computer implementations. ez ≤ d + d + d if −ax ≤ d , −by + ez ≤ d,z = x 2.2 Harvey-Stuckey Tightened Transitive Closure ±x±y ≤ d ±x ≤ d If is an addition constraint, or is a bound constraint, where d is a rational number, then ±x ± y ≤d ez ≤ d + d + d if −by ≤ d , and ±x ≤d are tightened addition and bound constraints. −ax + ez ≤ d,z = y x ≤ / For example, 3 2 can be tightened to the constraint — x ≤ 1. Tightening is a valid operation in the case of in- d + d by ≤ −ax + by ≤ d teger variables because the tightened constraint always has 2 if the same solutions as the untightened constraint. In the fol- — lowing we always try to keep the constraints in a tightened d + d ax ≤ if ax − by ≤ d form. 2 C — The tightened transitive closure of a set of addition and d + d + d bound constraints is the set of addition and bound constraints ez ≤ if −ax + ez ≤ d , C∗ that C implies, such that, we cannot derive any more 2 addition and bound constraints which are not already in C∗ −by + ez ≤ d or trivially implied by one constraint in C∗.
Recommended publications
  • Arithmetic Equivalence and Isospectrality
    ARITHMETIC EQUIVALENCE AND ISOSPECTRALITY ANDREW V.SUTHERLAND ABSTRACT. In these lecture notes we give an introduction to the theory of arithmetic equivalence, a notion originally introduced in a number theoretic setting to refer to number fields with the same zeta function. Gassmann established a direct relationship between arithmetic equivalence and a purely group theoretic notion of equivalence that has since been exploited in several other areas of mathematics, most notably in the spectral theory of Riemannian manifolds by Sunada. We will explicate these results and discuss some applications and generalizations. 1. AN INTRODUCTION TO ARITHMETIC EQUIVALENCE AND ISOSPECTRALITY Let K be a number field (a finite extension of Q), and let OK be its ring of integers (the integral closure of Z in K). The Dedekind zeta function of K is defined by the Dirichlet series X s Y s 1 ζK (s) := N(I)− = (1 N(p)− )− I OK p − ⊆ where the sum ranges over nonzero OK -ideals, the product ranges over nonzero prime ideals, and N(I) := [OK : I] is the absolute norm. For K = Q the Dedekind zeta function ζQ(s) is simply the : P s Riemann zeta function ζ(s) = n 1 n− . As with the Riemann zeta function, the Dirichlet series (and corresponding Euler product) defining≥ the Dedekind zeta function converges absolutely and uniformly to a nonzero holomorphic function on Re(s) > 1, and ζK (s) extends to a meromorphic function on C and satisfies a functional equation, as shown by Hecke [25]. The Dedekind zeta function encodes many features of the number field K: it has a simple pole at s = 1 whose residue is intimately related to several invariants of K, including its class number, and as with the Riemann zeta function, the zeros of ζK (s) are intimately related to the distribution of prime ideals in OK .
    [Show full text]
  • Relations 21
    2. CLOSURE OF RELATIONS 21 2. Closure of Relations 2.1. Definition of the Closure of Relations. Definition 2.1.1. Given a relation R on a set A and a property P of relations, the closure of R with respect to property P , denoted ClP (R), is smallest relation on A that contains R and has property P . That is, ClP (R) is the relation obtained by adding the minimum number of ordered pairs to R necessary to obtain property P . Discussion To say that ClP (R) is the “smallest” relation on A containing R and having property P means that • R ⊆ ClP (R), • ClP (R) has property P , and • if S is another relation with property P and R ⊆ S, then ClP (R) ⊆ S. The following theorem gives an equivalent way to define the closure of a relation. \ Theorem 2.1.1. If R is a relation on a set A, then ClP (R) = S, where S∈P P = {S|R ⊆ S and S has property P }. Exercise 2.1.1. Prove Theorem 2.1.1. [Recall that one way to show two sets, A and B, are equal is to show A ⊆ B and B ⊆ A.] 2.2. Reflexive Closure. Definition 2.2.1. Let A be a set and let ∆ = {(x, x)|x ∈ A}. ∆ is called the diagonal relation on A. Theorem 2.2.1. Let R be a relation on A. The reflexive closure of R, denoted r(R), is the relation R ∪ ∆. Proof. Clearly, R ∪ ∆ is reflexive, since (a, a) ∈ ∆ ⊆ R ∪ ∆ for every a ∈ A.
    [Show full text]
  • 7.2 Binary Operators Closure
    last edited April 19, 2016 7.2 Binary Operators A precise discussion of symmetry benefits from the development of what math- ematicians call a group, which is a special kind of set we have not yet explicitly considered. However, before we define a group and explore its properties, we reconsider several familiar sets and some of their most basic features. Over the last several sections, we have considered many di↵erent kinds of sets. We have considered sets of integers (natural numbers, even numbers, odd numbers), sets of rational numbers, sets of vertices, edges, colors, polyhedra and many others. In many of these examples – though certainly not in all of them – we are familiar with rules that tell us how to combine two elements to form another element. For example, if we are dealing with the natural numbers, we might considered the rules of addition, or the rules of multiplication, both of which tell us how to take two elements of N and combine them to give us a (possibly distinct) third element. This motivates the following definition. Definition 26. Given a set S,abinary operator ? is a rule that takes two elements a, b S and manipulates them to give us a third, not necessarily distinct, element2 a?b. Although the term binary operator might be new to us, we are already familiar with many examples. As hinted to earlier, the rule for adding two numbers to give us a third number is a binary operator on the set of integers, or on the set of rational numbers, or on the set of real numbers.
    [Show full text]
  • 3. Closed Sets, Closures, and Density
    3. Closed sets, closures, and density 1 Motivation Up to this point, all we have done is define what topologies are, define a way of comparing two topologies, define a method for more easily specifying a topology (as a collection of sets generated by a basis), and investigated some simple properties of bases. At this point, we will start introducing some more interesting definitions and phenomena one might encounter in a topological space, starting with the notions of closed sets and closures. Thinking back to some of the motivational concepts from the first lecture, this section will start us on the road to exploring what it means for two sets to be \close" to one another, or what it means for a point to be \close" to a set. We will draw heavily on our intuition about n convergent sequences in R when discussing the basic definitions in this section, and so we begin by recalling that definition from calculus/analysis. 1 n Definition 1.1. A sequence fxngn=1 is said to converge to a point x 2 R if for every > 0 there is a number N 2 N such that xn 2 B(x) for all n > N. 1 Remark 1.2. It is common to refer to the portion of a sequence fxngn=1 after some index 1 N|that is, the sequence fxngn=N+1|as a tail of the sequence. In this language, one would phrase the above definition as \for every > 0 there is a tail of the sequence inside B(x)." n Given what we have established about the topological space Rusual and its standard basis of -balls, we can see that this is equivalent to saying that there is a tail of the sequence inside any open set containing x; this is because the collection of -balls forms a basis for the usual topology, and thus given any open set U containing x there is an such that x 2 B(x) ⊆ U.
    [Show full text]
  • Scalability of Reflexive-Transitive Closure Tables As Hierarchical Data Solutions
    Scalability of Reflexive- Transitive Closure Tables as Hierarchical Data Solutions Analysis via SQL Server 2008 R2 Brandon Berry, Engineer 12/8/2011 Reflexive-Transitive Closure (RTC) tables, when used to persist hierarchical data, present many advantages over alternative persistence strategies such as path enumeration. Such advantages include, but are not limited to, referential integrity and a simple structure for data queries. However, RTC tables grow exponentially and present a concern with scaling both operational performance of the RTC table and volume of the RTC data. Discovering these practical performance boundaries involves understanding the growth patterns of reflexive and transitive binary relations and observing sample data for large hierarchical models. Table of Contents 1 Introduction ......................................................................................................................................... 2 2 Reflexive-Transitive Closure Properties ................................................................................................. 3 2.1 Reflexivity ...................................................................................................................................... 3 2.2 Transitivity ..................................................................................................................................... 3 2.3 Closure .......................................................................................................................................... 4 3 Scalability
    [Show full text]
  • MATH 213 Chapter 9: Relations
    MATH 213 Chapter 9: Relations Dr. Eric Bancroft Fall 2013 9.1 - Relations Definition 1 (Relation). Let A and B be sets. A binary relation from A to B is a subset R ⊆ A×B, i.e., R is a set of ordered pairs where the first element from each pair is from A and the second element is from B. If (a; b) 2 R then we write a R b or a ∼ b (read \a relates/is related to b [by R]"). If (a; b) 2= R, then we write a R6 b or a b. We can represent relations graphically or with a chart in addition to a set description. Example 1. A = f0; 1; 2g;B = f1; 2; 3g;R = f(1; 1); (2; 1); (2; 2)g Example 2. (a) \Parent" (b) 8x; y 2 Z; x R y () x2 + y2 = 8 (c) A = f0; 1; 2g;B = f1; 2; 3g; a R b () a + b ≥ 3 1 Note: All functions are relations, but not all relations are functions. Definition 2. If A is a set, then a relation on A is a relation from A to A. Example 3. How many relations are there on a set with. (a) two elements? (b) n elements? (c) 14 elements? Properties of Relations Definition 3 (Reflexive). A relation R on a set A is said to be reflexive if and only if a R a for all a 2 A. Definition 4 (Symmetric). A relation R on a set A is said to be symmetric if and only if a R b =) b R a for all a; b 2 A.
    [Show full text]
  • Properties of Binary Transitive Closure Logics Over Trees S K
    8 Properties of binary transitive closure logics over trees S K Abstract Binary transitive closure logic (FO∗ for short) is the extension of first-order predicate logic by a transitive closure operator of binary relations. Deterministic binary transitive closure logic (FOD∗) is the restriction of FO∗ to deterministic transitive closures. It is known that these logics are more powerful than FO on arbitrary structures and on finite ordered trees. It is also known that they are at most as powerful as monadic second-order logic (MSO) on arbitrary structures and on finite trees. We will study the expressive power of FO∗ and FOD∗ on trees to show that several MSO properties can be expressed in FOD∗ (and hence FO∗). The following results will be shown. A linear order can be defined on the nodes of a tree. The class EVEN of trees with an even number of nodes can be defined. On arbitrary structures with a tree signature, the classes of trees and finite trees can be defined. There is a tree language definable in FOD∗ that cannot be recognized by any tree walking automaton. FO∗ is strictly more powerful than tree walking automata. These results imply that FOD∗ and FO∗ are neither compact nor do they have the L¨owenheim-Skolem-Upward property. Keywords B 8.1 Introduction The question aboutthe best suited logic for describing tree properties or defin- ing tree languages is an important one for model theoretic syntax as well as for querying treebanks. Model theoretic syntax is a research program in mathematical linguistics concerned with studying the descriptive complex- Proceedings of FG-2006.
    [Show full text]
  • On Certain Relations for C-Closure Operations on an Ordered Semigroup
    International Journal of Pure and Applied Mathematics Volume 92 No. 1 2014, 51-59 ISSN: 1311-8080 (printed version); ISSN: 1314-3395 (on-line version) url: http://www.ijpam.eu AP doi: http://dx.doi.org/10.12732/ijpam.v92i1.4 ijpam.eu ON CERTAIN RELATIONS FOR C-CLOSURE OPERATIONS ON AN ORDERED SEMIGROUP Thawhat Changphas Department of Mathematics Faculty of Science Khon Kaen University Khon Kaen, 40002, THAILAND Abstract: In this paper, a relation for C-closure operations on an ordered semigroup is introduced, using this relation regular and simple ordered semi- groups are characterized. AMS Subject Classification: 06F05 Key Words: semigroup, ordered semigroup, ideal, regular ordered semigroup, simple ordered semigroup, C-closure operation 1. Preliminaries It is known that a semigroup S is regular if and only if it satisfies: A ∩ B = AB for all right ideals A and for all left ideals B of S. Using this property, Pondˇel´iˇcek [2] introduced a relation for C-closure operations on S, and studied some types of semigroups using the relation. The purpose of this paper is to extend Pondˇel´iˇcek’s results to ordered semigroups. In fact, we define a relation for C-closure operations on an ordered semigroup, and characterize regular and simple ordered semigroups using the relation. Firstly, let us recall some certain definitions and results which are in [2]. c 2014 Academic Publications, Ltd. Received: November 7, 2013 url: www.acadpubl.eu 52 T. Changphas Let S be a nonempty set. A mapping U:Su(S) → Su(S) (The symbol Su(S) stands for the set of all subsets of S) is called a C-closure operation on S if, for any A, B in Su(S), it satisfies: (i) U(∅) = ∅; (ii) A ⊆ B ⇒ U(A) ⊆ U(B); (iii) A ⊆ U(A); (iv) U(U(A)) = U(A).
    [Show full text]
  • Math 396. Interior, Closure, and Boundary We Wish to Develop Some Basic Geometric Concepts in Metric Spaces Which Make Precise C
    Math 396. Interior, closure, and boundary We wish to develop some basic geometric concepts in metric spaces which make precise certain intuitive ideas centered on the themes of \interior" and \boundary" of a subset of a metric space. One warning must be given. Although there are a number of results proven in this handout, none of it is particularly deep. If you carefully study the proofs (which you should!), then you'll see that none of this requires going much beyond the basic definitions. We will certainly encounter some serious ideas and non-trivial proofs in due course, but at this point the central aim is to acquire some linguistic ability when discussing some basic geometric ideas in a metric space. Thus, the main goal is to familiarize ourselves with some very convenient geometric terminology in terms of which we can discuss more sophisticated ideas later on. 1. Interior and closure Let X be a metric space and A X a subset. We define the interior of A to be the set ⊆ int(A) = a A some Br (a) A; ra > 0 f 2 j a ⊆ g consisting of points for which A is a \neighborhood". We define the closure of A to be the set A = x X x = lim an; with an A for all n n f 2 j !1 2 g consisting of limits of sequences in A. In words, the interior consists of points in A for which all nearby points of X are also in A, whereas the closure allows for \points on the edge of A".
    [Show full text]
  • Descriptive Complexity: a Logician's Approach to Computation
    Descriptive Complexity a Logicians Approach to Computation Neil Immerman Computer Science Dept University of Massachusetts Amherst MA immermancsumassedu App eared in Notices of the American Mathematical Society A basic issue in computer science is the complexity of problems If one is doing a calculation once on a mediumsized input the simplest algorithm may b e the b est metho d to use even if it is not the fastest However when one has a subproblem that will havetobesolved millions of times optimization is imp ortant A fundamental issue in theoretical computer science is the computational complexity of problems Howmuch time and howmuch memory space is needed to solve a particular problem Here are a few examples of such problems Reachability Given a directed graph and two sp ecied p oints s t determine if there is a path from s to t A simple lineartime algorithm marks s and then continues to mark every vertex at the head of an edge whose tail is marked When no more vertices can b e marked t is reachable from s i it has b een marked Mintriangulation Given a p olygon in the plane and a length L determine if there is a triangulation of the p olygon of total length less than or equal to L Even though there are exp onentially many p ossible triangulations a dynamic programming algorithm can nd an optimal one in O n steps ThreeColorability Given an undirected graph determine whether its vertices can b e colored using three colors with no two adjacentvertices having the same color Again there are exp onentially many p ossibilities
    [Show full text]
  • Relations April 4
    math 55 - Relations April 4 Relations Let A and B be two sets. A (binary) relation on A and B is a subset R ⊂ A × B. We often write aRb to mean (a; b) 2 R. The following are properties of relations on a set S (where above A = S and B = S are taken to be the same set S): 1. Reflexive: (a; a) 2 R for all a 2 S. 2. Symmetric: (a; b) 2 R () (b; a) 2 R for all a; b 2 S. 3. Antisymmetric: (a; b) 2 R and (b; a) 2 R =) a = b. 4. Transitive: (a; b) 2 R and (b; c) 2 R =) (a; c) 2 R for all a; b; c 2 S. Exercises For each of the following relations, which of the above properties do they have? 1. Let R be the relation on Z+ defined by R = f(a; b) j a divides bg. Reflexive, antisymmetric, and transitive 2. Let R be the relation on Z defined by R = f(a; b) j a ≡ b (mod 33)g. Reflexive, symmetric, and transitive 3. Let R be the relation on R defined by R = f(a; b) j a < bg. Symmetric and transitive 4. Let S be the set of all convergent sequences of rational numbers. Let R be the relation on S defined by f(a; b) j lim a = lim bg. Reflexive, symmetric, transitive 5. Let P be the set of all propositional statements. Let R be the relation on P defined by R = f(a; b) j a ! b is trueg.
    [Show full text]
  • A Transitive Closure Algorithm for Test Generation
    A Transitive Closure Algorithm for Test Generation Srimat T. Chakradhar, Member, IEEE, Vishwani D. Agrawal, Fellow, IEEE, and Steven G. Rothweiler Abstract-We present a transitive closure based test genera- Cox use reduction lists to quickly determine necessary as- tion algorithm. A test is obtained by determining signal values signments [5]. that satisfy a Boolean equation derived from the neural net- These algorithms solve two main problems: (1) they work model of the circuit incorporating necessary conditions for fault activation and path sensitization. The algorithm is a determine logical consequences of a partial set of signal sequence of two main steps that are repeatedly executed: tran- assignments and (2) they determine the order in which sitive closure computation and decision-making. To compute decisions on fixing signals should be made. the transitive closure, we start with an implication graph whose In spite of making extensive use of the circuit structure vertices are labeled as the true and false states of all signals. A directed edge (x, y) in this graph represents the controlling in- and function, most algorithms have several shortcomings. fluence of the true state of signal x on the true state of signal y First, they do not guarantee the identification of all logi- that are connected through a wire or a gate. Since the impli- cal consequences of a partial set of signal assignments. In cation graph only includes local pairwise (or binary) relations, other words, local conditions are easier to identify than it is a partial representation of the netlist. Higher-order signal the global ones.
    [Show full text]