Binary Decision Diagrams

Size: px
Start display at page:

Download "Binary Decision Diagrams"

Transcription

1 Binary Decision Diagrams Hao Zheng Department of Computer Science and Engineering University of South Florida Tampa, FL Phone: (813) Fax: (813) Hao Zheng (CSE, USF) Comp Sys Verification 1 / 44

2 1 Binary Decision Tree 2 Ordered Binary Decision Diagram 3 From BDT to BDDs 4 Variable Ordering 5 Logic Operations by BDDs Hao Zheng (CSE, USF) Comp Sys Verification 2 / 44

3 Binary Decision Diagrams Binary decision diagrams (BDDs) are graphs representing Boolean functions. They can be made canonical. They can be very compact for many applications. They are important since many applications can be converted to sequences of Boolean operations. References: R. Bryant, Graph-Based Algorithms for Boolean Function Manipulation, IEEE Transactions on Computers, R. Bryant Symbolic Boolean Manipulation with Ordered Binary Decision Diagrams, ACM Computing Surveys, Textbook, Hao Zheng (CSE, USF) Comp Sys Verification 3 / 44

4 Representing Switching Functions Truth Tables Satisfiability and equivalence check: easy; boolean operations also easy. Very space inefficient: 2 n entries for n variables. Disjunctive Normal Form (DNF) Satisfiability is easy: find a disjunct without complementary literals. Negation and conjunction complicated. Conjunctive Normal Form (CNF) Satisfiability problem is NP-complete (Cook s theorem). Negation and disjunction complicated. Hao Zheng (CSE, USF) Comp Sys Verification 4 / 44

5 Representing Switching Functions representation compact? sat equ truth table never hard hard hard hard hard DNF sometimes easy hard hard easy hard CNF sometimes hard hard easy hard hard propositional formula often hard hard easy easy easy reduced ordered binary decision diagram often easy easy medium medium easy Provided appropriate implementation techniques are used. Hao Zheng (CSE, USF) Comp Sys Verification 5 / 44

6 Symbolic xample Symbolic Encoding: Representation An Exampleof a Transition System /0 s 0 s 1 a s 3 s 2 {a,b } Switching function: (x 1, x itching function: (x 1,x {z } 2,x1,, x 0 }{{} 1, x 2) = 1 if and only if s 2)=1 if and only if s! s 0 s }{{} s {z } s s s (x 0 1,, x 1, x 2 ) = ( x 1 x 1 x 2 ) (x 1,,,x0 2 )= ( ( x x 1 ^ x 2 ^ x x 0 ^ x0 _ ( x ^ ^ 0 1 x 2 ) ( x 1 x 1 ^ x0 2 ) _ ( x 1 ^ ^ x 2 )... 1 ^ x0 2 ) _ (x... 1 x _ (x 1 ^ ^ x 2 ) 1 ^ x0 2 ) Hao Zheng (CSE, USF) Comp Sys Verification 6 / 44 b

7 Contents 1 Binary Decision Tree 2 Ordered Binary Decision Diagram 3 From BDT to BDDs 4 Variable Ordering 5 Logic Operations by BDDs Hao Zheng (CSE, USF) Comp Sys Verification 7 / 44

8 Transition Relation as a BDT Binary Decision Tree: Example x The BDT for function f on x = { x 1,..., x n } has depth n. Every A BDT node representing is labeled with for our a variable. example using ordering x 1 < < < x0 2. Every node labeled with x i has two outgoing edges. 0-edge: x i = 0 (dashed) and, 1-edge: x i = 1 (solid). Chris J. Myers (Lecture 6: CTL) Verification of Cyber-Physical Systems 110 / 155 Hao Zheng (CSE, USF) Comp Sys Verification 8 / 44

9 Binary Decision Transition Tree: Example Relation as a BDT x Every non-terminal node n has two successor nodes. low(n): A BDT representing the node at the forend our of example the 0-edge using of ordering node n. x 1 < < < x0 2. high(n): the node at the end of the 1-edge of node n. Chris J. Myers (Lecture 6: CTL) Verification of Cyber-Physical Systems 110 / 155 Hao Zheng (CSE, USF) Comp Sys Verification 8 / 44

10 Binary Decision Transition Tree: Example Relation as a BDT x The edge labelings of a path from the root to a terminal is an evaluation A BDT representing s = [x 1 = b 1 for,.. our., xexample m = b m using ], where ordering b i x 1 {0, < x1}. 2 < < x0 2. The labeling of the terminal node is the output of f(s). Chris J. Myers (Lecture 6: CTL) Verification of Cyber-Physical Systems 110 / 155 Hao Zheng (CSE, USF) Comp Sys Verification 8 / 44

11 Transition Relation as a BDT Binary Decision Tree: Example x The subtree of node v at level i for variable ordering x 1 <... < x n represents: A BDT representing for our example using ordering x 1 < < < x0 2. f v = f x1 =b 1,...,x i 1 =b i 1 which is a switching function over { x i,..., x n } and where x 1 = b 1,..., x i 1 = b i 1 are the decisions made along the path from root to node v. Chris J. Myers (Lecture 6: CTL) Verification of Cyber-Physical Systems 110 / 155 Hao Zheng (CSE, USF) Comp Sys Verification 8 / 44

12 Binary Decision Tree The BDT for function f on Var = {z 1,..., z m } has depth m with outgoing edges for node at level i stand for z i = 0 (dashed) and z i = 1 (solid). For evaluation s = [z 1 = b 1,..., z m = b m ], f(s) is the value of the leaf reached by traversing the BDT from the root using branch z i = b i. The subtree of node v at level i for variable ordering z 1 <... < z m represents: f v = f z1 =b 1,...,z i 1 =b i 1 which is a switching function over {z i,..., z m } and where z 1 = b 1,..., z i 1 = b i 1 are the decisions made along the path from root to node v. Hao Zheng (CSE, USF) Comp Sys Verification 9 / 44

13 Considerations on BDTs BDTs are a different form of truth tables. BDTs are not compact: A BDT for switching function f on n variables has 2 n leafs. The size of a BDT does not change if the variable order changes. They are as space inefficient as truth tables! BDTs contain a lot of redundancy: All leafs with value one (zero) could be collapsed into a single leaf. A similar scheme could be adopted for isomorphic subtrees. Two graphs rooted at nodes u and v are isomorphic, denoted as u v when both following conditions hold. value(u) = value(v) if u and v are terminals. low(u) low(v) high(u) high(v), otherwise. Hao Zheng (CSE, USF) Comp Sys Verification 10 / 44

14 Contents 1 Binary Decision Tree 2 Ordered Binary Decision Diagram 3 From BDT to BDDs 4 Variable Ordering 5 Logic Operations by BDDs Hao Zheng (CSE, USF) Comp Sys Verification 11 / 44

15 Ordered Binary Decision Diagram (OBDD) OBDDs rely on compactions of BDT representations. Idea: skip redundant fragments of BDT representations. Collapse subtrees with all terminals having same value. Identify nodes with isomorphic subtrees. This yields directed acyclic graphs with outdegree two. Inner nodes are labeled with variables. Leafs are labeled with function values (zero and one). A unique variable ordering is followed by every path. Each variable is assigned an unique index. Each BDD node v has an index index(v) which is the index of the variable labeled in v. index(v) < index(low(v)) if low(v) is a non-terminal, index(v) < index(high(v)) if high(v) is a non-terminal. Hao Zheng (CSE, USF) Comp Sys Verification 12 / 44

16 Transition Relation as a BDT Transition Relation as a BDT x A BDT A BDT representing for forour example using orderingxx 1 < < x < < x 1 < x 2. Chris Hao J. Zheng Myers (Lecture (CSE, USF) 6: CTL) Verification Comp of Cyber-Physical Sys Verification Systems / 155 / 44

17 Transition Relation as a BDD Transition Relation as an ROBDD x An example ROBDD representing for our example using x 1 < < < x0 2. A BDT representing for our example using ordering x 1 < < x 1 < x 2. Chris J. Myers (Lecture 6: CTL) Verification of Cyber-Physical Systems 120 / 155 Hao Zheng (CSE, USF) Comp Sys Verification 14 / 44

18 OBBDs and Boolean Functions Let be a variable ordering for Var where = (z 1,..., z m ). Every OBDD is defined wrt a given variable ordering. The nodes in every path are labeled with variables in the order as in. A terminal node represents a constant Boolean function either 1 or 0. For a non-terminal node n labeled with z representing a Boolean function f n, its two successor nodes represent Boolean functions: Node at the end of the 0-edge (low(n)): f n z=0. Node at the end of the 1-edge (high(n)): f n z=1. Therefore, f n = z f n z=0 z f n z=1 A OBDD is reduced (i.e. ROBDD) if for every pair (v, w) of nodes, v w implies f v f w. Hao Zheng (CSE, USF) Comp Sys Verification 15 / 44

19 Universality and Canonicity Theorem [Fortune, Hopcroft & Schmidt, 1978] Let x be a finite set of Boolean variables and a variable ordering for x. (a) For each switching function f for x there exists a -ROBDD OBDD with f OBDD = f. (b) For any -ROBDDs G and H with f G = f H, G and H are isomorphic, i.e., agree up to renaming of the nodes. ROBDDs are canonical for a fixed variable ordering. Hao Zheng (CSE, USF) Comp Sys Verification 16 / 44

20 The Importance of Canonicity Absence of redundant vertices: If f B does not depend on x i, ROBDD B does not contain an x i node. Test for equivalence: f(x 1,..., x n ) g(x 1,..., x n )? Generate ROBDDs B f and B g, and check isomorphism. Test for validity: f(x 1,..., x n ) = 1? Generate ROBDD B f and check whether it only consists of a 1-leaf. Test for implication: f(x 1,..., x n ) g(x 1,..., x n )? Generate ROBDD B f g and check if it just consists of a 0-leaf. Test for satisfiability: f is satisfiable if and only if B f has a reachable 1-leaf. Hao Zheng (CSE, USF) Comp Sys Verification 17 / 44

21 Contents 1 Binary Decision Tree 2 Ordered Binary Decision Diagram 3 From BDT to BDDs 4 Variable Ordering 5 Logic Operations by BDDs Hao Zheng (CSE, USF) Comp Sys Verification 18 / 44

22 Reducing OBDDs Generate an OBDD (or BDT) for a boolean expression, then reduce by means of a recursive descent over the OBDD. Elimination rule: If low(v) = high(v) = w, eliminate v and redirect all incoming edges to v to node w. Isomorphism rule: If v w are roots of isomorphic subtrees, remove v, and redirect all incoming edges to v to node w. (Special case) Combine all 0/1-leaves, redirect all incoming edges. Hao Zheng (CSE, USF) Comp Sys Verification 19 / 44

23 From BDT to Transition ROBDD Relation as a BDT x An OBDD representing for our example using ordering x 1 < < x A BDT representing for our example using ordering x 1 < < 1 < < x 2. x0 2. Hao Zheng (CSE, USF) Comp Sys Verification 20 / 44

24 Transition Relation as a OBDD From BDT to ROBDD x After isomorphism rule Next, Isomorphism elimination rule. rule Hao Zheng (CSE, USF) Comp Sys Verification 21 / 44

25 From BDT Transition to ROBDDRelation as a OBDD x Next, isomorphism rule Elimination rule. Hao Zheng (CSE, USF) Comp Sys Verification 22 / 44

26 From BDT Transition to ROBDD Relation as a OBDD x Next, elimination rule Isomorphism rule. Hao Zheng (CSE, USF) Comp Sys Verification 23 / 44

27 Transition Relation as a OBDD From BDT to ROBDD x Next, isomorphism rule Elimination rule. Hao Zheng (CSE, USF) Comp Sys Verification 24 / 44

28 Transition Relation as a OBDD From BDT to ROBDD x Next, isomorphism rule Isomorphism rule. Hao Zheng (CSE, USF) Comp Sys Verification 25 / 44

29 From BDT to ROBDD Transition Relation as an ROBDD x Isomorphism rule. Final reduced BDD Chris J. Myers (Lecture 6: CTL) Verification of Cyber-Physical Systems 132 / 155 Hao Zheng (CSE, USF) Comp Sys Verification 26 / 44

30 Contents 1 Binary Decision Tree 2 Ordered Binary Decision Diagram 3 From BDT to BDDs 4 Variable Ordering 5 Logic Operations by BDDs Hao Zheng (CSE, USF) Comp Sys Verification 27 / 44

31 Variable Ordering Variable Ordering x 1 x (a) ordering x 1 < < < (b) ordering x 1 < 0 < 0 < 0 Hao Zheng (CSE, USF) Comp Sys Verification 28 / 44

32 Variable Ordering and Size of BDDs The size of the ROBDD crucially depends on the variable ordering. # nodes in ROBDD OBDD = # of -consistent co-factors of f. Some switching functions have linear and exponential ROBDDs. e.g., the addition function, or the stable function. Some switching functions only have polynomial ROBDDs. This holds, e.g., for symmetric functions. Examples f(...) = x 1... x n, or f(...) = 1 iff k variables x i are true. Some switching functions only have exponential ROBDDs. This holds, e.g., for the middle bit of the multiplication function. Hao Zheng (CSE, USF) Comp Sys Verification 29 / 44

33 The Function Stable with Exponential ROBDD The Function Stable with Exponential ROBDD x 1 x 3 x 3 x 3 x 3 y 1 y 1 y 1 y 1 y 1 y 1 y 1 y 1 y 2 y 2 y 2 y 2 y 3 y 3 1 The ROBDD of f stab (x,y)=(x 1 $ y 1 ) ^... ^ (x n $ y n ) The has ROBDD 3 2 n 1of vertices f stab (x, under y) ordering = (x 1 x 1 <...<x y 1 ) n. <.. y 1 <...<y (x n n. y n ) has 3 2 n 1 vertices under ordering x 1 <... < x n < y 1 <... < y n. Chris J. Myers (Lecture 6: CTL) Verification of Cyber-Physical Systems 135 / 155 Hao Zheng (CSE, USF) Comp Sys Verification 30 / 44

34 The Function Stable with Linear ROBDD The Function Stable with Linear ROBDD x 1 y 1 y 1 y 2 y 2 x 3 y 3 y 3 1 The ROBDD of f stab (x,y)=(x 1 $ y 1 ) ^... ^ (x n $ y n ) The ROBDD has 3 n + of2fvertices stab (x, under y) = ordering (x 1 x 1 y< 1 ) y 1 <...<x... n < (x y n. y n ) has 3 n + 2 vertices under ordering x 1 < y 1 <... < x n < y n. Chris J. Myers (Lecture 6: CTL) Verification of Cyber-Physical Systems 136 / 155 Hao Zheng (CSE, USF) Comp Sys Verification 31 / 44

35 Another Function with an Exponential ROBDD Another Function with an Exponential ROBDD z1 z2 z2 z3 z3 z3 z3 y1 y1 y1 y1 y2 y2 y3 0 1 ROBDD for f 3 (z,y) =(z 1 ^ y 1 ) _ (z 2 ^ y 2 ) _ (z 3 ^ y 3 ) for the variable ordering z 1 < z 2 < z 3 < y 1 < y 2 < y 3. ROBDD for f 3 ( z, y) = (z 1 y 1 ) (z 2 y 2 ) (z 3 y 3 ) Chrisfor J. Myers the (Lecture variable 6: CTL) ordering Verification ofzcyber-physical 1 < z 2 Systems < z 3 < y 1 < y 2 < y / 155 Hao Zheng (CSE, USF) Comp Sys Verification 32 / 44

36 An Optimal Linear ROBDD An Optimal Linear ROBDD z 1 y 1 z 2 y 2 z 3 ROBDD for f 3 ( ) = (z 1 y 1 ) (z 2 y 2 ) (z 3 y 3 ). ROBDD for f 3 ( ) =(z 1 ^ y 1 ) _ (z 2 ^ y 2 ) _ (z 3 ^ y 3 ). For ordering z 1 < y 1 < z 2 < y 2 < z 3 < y 3. For ordering z 1 < y 1 < z 2 < y 2 < z 3 < y 3. Asall all variables are are essential, essential, this ROBDD this ROBDD is optimal. is optimal. For no variable ordering, a smaller ROBDD exists. For no variable ordering, a smaller ROBDD exists. y Chris J. Myers (Lecture 6: CTL) Verification of Cyber-Physical Systems 138 / 155 Hao Zheng (CSE, USF) Comp Sys Verification 33 / 44

37 The Multiplication Function Consider two n-bit integers: Let b n 1 b n 2... b 0 and c n 1 c n 2... c 0 where b n 1 is the most significant bit, and b 0 the least significant bit. Multiplication yields a 2n-bit integer: The ROBDD OBDD fn 1 has at least 1.09 n vertices where f n 1 denotes the (n 1)-st output bit of the multiplication. Hao Zheng (CSE, USF) Comp Sys Verification 34 / 44

38 Optimal Variable Ordering The size of ROBDDs is dependent on the variable ordering. Is it possible to determine such that the ROBDD has minimal size? To check whether a variable ordering is optimal is NP-hard. Polynomial reduction from the 3SAT problem. [Bollig & Wegener, 1996] There are many switching functions with large ROBDDs: For almost all switching functions the minimal size is in Ω( 2n n ). How to deal with this problem in practice? Guess a variable ordering in advance. Rearrange the variable ordering during the ROBDD manipulations. Not necessary to test all n! orderings, best known algorithm in O(3 n n 2 ). Hao Zheng (CSE, USF) Comp Sys Verification 35 / 44

39 Dynamic Re-ordering Finding an optimal ordering is NP-hard. Static ordering does not work well across different applications, or for BDDs that need to be transformed during different stages of an application. Automated dynamic re-ordering rearranges the variable orders periodically to reduce the size of BDDs. Rudell s sifting is widely used. Try moving a variable to all other positions, leaving the others fixed. Then place variable in the position that minimizes BDD size. Do this for all variables. Hao Zheng (CSE, USF) Comp Sys Verification 36 / 44

40 Dynamic Re-ordering Greatly improved effectiveness of BDDs. It is usually performed in the background. It may slow down the performance. BDD operations stop when re-ordering is activated. It makes a difference between success and failure in complete an application. Some functions are inherently hard, e.g. outputs of integer multiplier. Hao Zheng (CSE, USF) Comp Sys Verification 37 / 44

41 Contents 1 Binary Decision Tree 2 Ordered Binary Decision Diagram 3 From BDT to BDDs 4 Variable Ordering 5 Logic Operations by BDDs Hao Zheng (CSE, USF) Comp Sys Verification 38 / 44

42 Logic Operations on BDDs Restriction f[b/x]: replacing variable x with a value 0 or 1. if b = 0, direct all incoming edges of node labeled with x to low(v), or if b = 1, direct all incoming edges of node labeled with x to high(v), remove node x and its outgoing edges. The result of restriction is a cofactor of f. a a b c c 0 1 f 0 1 f[1/b] Hao Zheng (CSE, USF) Comp Sys Verification 39 / 44

43 Logical Operations on BDDs (cont d) Negation is a constant time operation with OBDDs. Swap terminal nodes. The binary operations are based on the Shannon expansion. f g = x (f[0/x] g[0/x]) x (f[1/x] g[1/x]). where is some binary logic operator. Both BDDs must have the same variable ordering. The new BDD for f g is constructed as follows. The root of f g is the root of f or g with the smaller index. For any node in f g, low(v) = f[0/x] g[0/x], and high(v) = f[1/x] g[1/x] Repeat the above step for low(v) and high(v) until either of them becomes terminal. Reduce the constructed BDD to make it canonical. Hao Zheng (CSE, USF) Comp Sys Verification 40 / 44

44 Logical Operations on BDDs Example f = (a ^ c) f _ g a g = b ^ c a f a=1 _ g b b f a=1 c c f a=1 _ g b=0 f a=1 _ g b=1 c c Hao Zheng (CSE, USF) Comp Sys Verification 41 / 44

45 Logical Operations on BDDs Example f _ g a f a=1 _ g b f _ g a f a=1 _ g b f a=1 _ g b=0 f a=1 _ g b=1 c c f a=1 _ g b=0 c Hao Zheng (CSE, USF) Comp Sys Verification 42 / 44

46 Variants of BDDs Various kinds of BDDs for compactness or different applications. Compactness Multi-rooted BDDs, free BDDs, partitioned OBDDs, etc Arithmetic operations Multi-terminal BDDs (ADDs), edge-valued BDDs, binary moment diagrams (BMDs), etc. Hao Zheng (CSE, USF) Comp Sys Verification 43 / 44

47 Implementation: Shared OBDDs A shared -OBDD is an OBDD with multiple roots. 0 1 Shared OBDD representing z 1 z }{{} 2, z 2, z }{{} 1 z 2 and z }{{} 1 z }{{} 2 f 1 f 2 f 3 f 4. Main underlying idea: combine several OBDDs with same variable ordering such that common -consistent co-factors are shared. Hao Zheng (CSE, USF) Comp Sys Verification 44 / 44

Binary Decision Diagrams

Binary Decision Diagrams Binary Decision Diagrams Hao Zheng Department of Computer Science and Engineering University of South Florida Tampa, FL 33620 Email: zheng@cse.usf.edu Phone: (813)974-4757 Fax: (813)974-5456 Hao Zheng

More information

Practical SAT Solving

Practical SAT Solving Practical SAT Solving Lecture 1 Carsten Sinz, Tomáš Balyo April 18, 2016 NSTITUTE FOR THEORETICAL COMPUTER SCIENCE KIT University of the State of Baden-Wuerttemberg and National Laboratory of the Helmholtz

More information

Another Variant of 3sat. 3sat. 3sat Is NP-Complete. The Proof (concluded)

Another Variant of 3sat. 3sat. 3sat Is NP-Complete. The Proof (concluded) 3sat k-sat, where k Z +, is the special case of sat. The formula is in CNF and all clauses have exactly k literals (repetition of literals is allowed). For example, (x 1 x 2 x 3 ) (x 1 x 1 x 2 ) (x 1 x

More information

CTL Model Checking. Goal Method for proving M sat σ, where M is a Kripke structure and σ is a CTL formula. Approach Model checking!

CTL Model Checking. Goal Method for proving M sat σ, where M is a Kripke structure and σ is a CTL formula. Approach Model checking! CMSC 630 March 13, 2007 1 CTL Model Checking Goal Method for proving M sat σ, where M is a Kripke structure and σ is a CTL formula. Approach Model checking! Mathematically, M is a model of σ if s I = M

More information

CSE 21 Winter 2016 Homework 6 Due: Wednesday, May 11, 2016 at 11:59pm. Instructions

CSE 21 Winter 2016 Homework 6 Due: Wednesday, May 11, 2016 at 11:59pm. Instructions CSE 1 Winter 016 Homework 6 Due: Wednesday, May 11, 016 at 11:59pm Instructions Homework should be done in groups of one to three people. You are free to change group members at any time throughout the

More information

Agenda. Specification models and their analysis. Agenda. Part I. Binary Decision Diagrams. Graph Theory: Some Definitions. Introduction to Petri Nets

Agenda. Specification models and their analysis. Agenda. Part I. Binary Decision Diagrams. Graph Theory: Some Definitions. Introduction to Petri Nets Agenda Specification models and their analysis Kai Lampka November 9, 29 Graph Theory: Some Definitions 2 Introduction to Petri Nets 3 Introduction to Computation Tree Logic and related model checking

More information

SAT and DPLL. Espen H. Lian. May 4, Ifi, UiO. Espen H. Lian (Ifi, UiO) SAT and DPLL May 4, / 59

SAT and DPLL. Espen H. Lian. May 4, Ifi, UiO. Espen H. Lian (Ifi, UiO) SAT and DPLL May 4, / 59 SAT and DPLL Espen H. Lian Ifi, UiO May 4, 2010 Espen H. Lian (Ifi, UiO) SAT and DPLL May 4, 2010 1 / 59 Normal forms Normal forms DPLL Complexity DPLL Implementation Bibliography Espen H. Lian (Ifi, UiO)

More information

SAT and DPLL. Introduction. Preliminaries. Normal forms DPLL. Complexity. Espen H. Lian. DPLL Implementation. Bibliography.

SAT and DPLL. Introduction. Preliminaries. Normal forms DPLL. Complexity. Espen H. Lian. DPLL Implementation. Bibliography. SAT and Espen H. Lian Ifi, UiO Implementation May 4, 2010 Espen H. Lian (Ifi, UiO) SAT and May 4, 2010 1 / 59 Espen H. Lian (Ifi, UiO) SAT and May 4, 2010 2 / 59 Introduction Introduction SAT is the problem

More information

Finding Equilibria in Games of No Chance

Finding Equilibria in Games of No Chance Finding Equilibria in Games of No Chance Kristoffer Arnsfelt Hansen, Peter Bro Miltersen, and Troels Bjerre Sørensen Department of Computer Science, University of Aarhus, Denmark {arnsfelt,bromille,trold}@daimi.au.dk

More information

UNIT VI TREES. Marks - 14

UNIT VI TREES. Marks - 14 UNIT VI TREES Marks - 14 SYLLABUS 6.1 Non-linear data structures 6.2 Binary trees : Complete Binary Tree, Basic Terms: level number, degree, in-degree and out-degree, leaf node, directed edge, path, depth,

More information

MAT385 Final (Spring 2009): Boolean Algebras, FSM, and old stuff

MAT385 Final (Spring 2009): Boolean Algebras, FSM, and old stuff MAT385 Final (Spring 2009): Boolean Algebras, FSM, and old stuff Name: Directions: Problems are equally weighted. Show your work! Answers without justification will likely result in few points. Your written

More information

Levin Reduction and Parsimonious Reductions

Levin Reduction and Parsimonious Reductions Levin Reduction and Parsimonious Reductions The reduction R in Cook s theorem (p. 266) is such that Each satisfying truth assignment for circuit R(x) corresponds to an accepting computation path for M(x).

More information

The Traveling Salesman Problem. Time Complexity under Nondeterminism. A Nondeterministic Algorithm for tsp (d)

The Traveling Salesman Problem. Time Complexity under Nondeterminism. A Nondeterministic Algorithm for tsp (d) The Traveling Salesman Problem We are given n cities 1, 2,..., n and integer distances d ij between any two cities i and j. Assume d ij = d ji for convenience. The traveling salesman problem (tsp) asks

More information

On the Optimality of a Family of Binary Trees Techical Report TR

On the Optimality of a Family of Binary Trees Techical Report TR On the Optimality of a Family of Binary Trees Techical Report TR-011101-1 Dana Vrajitoru and William Knight Indiana University South Bend Department of Computer and Information Sciences Abstract In this

More information

monotone circuit value

monotone circuit value monotone circuit value A monotone boolean circuit s output cannot change from true to false when one input changes from false to true. Monotone boolean circuits are hence less expressive than general circuits.

More information

Computing Unsatisfiable k-sat Instances with Few Occurrences per Variable

Computing Unsatisfiable k-sat Instances with Few Occurrences per Variable Computing Unsatisfiable k-sat Instances with Few Occurrences per Variable Shlomo Hoory and Stefan Szeider Department of Computer Science, University of Toronto, shlomoh,szeider@cs.toronto.edu Abstract.

More information

Introduction to Greedy Algorithms: Huffman Codes

Introduction to Greedy Algorithms: Huffman Codes Introduction to Greedy Algorithms: Huffman Codes Yufei Tao ITEE University of Queensland In computer science, one interesting method to design algorithms is to go greedy, namely, keep doing the thing that

More information

Another Variant of 3sat

Another Variant of 3sat Another Variant of 3sat Proposition 32 3sat is NP-complete for expressions in which each variable is restricted to appear at most three times, and each literal at most twice. (3sat here requires only that

More information

Optimal Satisficing Tree Searches

Optimal Satisficing Tree Searches Optimal Satisficing Tree Searches Dan Geiger and Jeffrey A. Barnett Northrop Research and Technology Center One Research Park Palos Verdes, CA 90274 Abstract We provide an algorithm that finds optimal

More information

You Have an NP-Complete Problem (for Your Thesis)

You Have an NP-Complete Problem (for Your Thesis) You Have an NP-Complete Problem (for Your Thesis) From Propositions 27 (p. 242) and Proposition 30 (p. 245), it is the least likely to be in P. Your options are: Approximations. Special cases. Average

More information

Search Space and Average Proof Length of Resolution. H. Kleine Buning T. Lettmann. Universitat { GH { Paderborn. Postfach 16 21

Search Space and Average Proof Length of Resolution. H. Kleine Buning T. Lettmann. Universitat { GH { Paderborn. Postfach 16 21 Search Space and Average roof Length of Resolution H. Kleine Buning T. Lettmann FB 7 { Mathematik/Informatik Universitat { GH { aderborn ostfach 6 2 D{4790 aderborn (Germany) E{mail: kbcsl@uni-paderborn.de

More information

Computing Unsatisfiable k-sat Instances with Few Occurrences per Variable

Computing Unsatisfiable k-sat Instances with Few Occurrences per Variable Computing Unsatisfiable k-sat Instances with Few Occurrences per Variable Shlomo Hoory and Stefan Szeider Abstract (k, s)-sat is the propositional satisfiability problem restricted to instances where each

More information

Lecture 2: The Simple Story of 2-SAT

Lecture 2: The Simple Story of 2-SAT 0510-7410: Topics in Algorithms - Random Satisfiability March 04, 2014 Lecture 2: The Simple Story of 2-SAT Lecturer: Benny Applebaum Scribe(s): Mor Baruch 1 Lecture Outline In this talk we will show that

More information

It is used when neither the TX nor RX knows anything about the statistics of the source sequence at the start of the transmission

It is used when neither the TX nor RX knows anything about the statistics of the source sequence at the start of the transmission It is used when neither the TX nor RX knows anything about the statistics of the source sequence at the start of the transmission -The code can be described in terms of a binary tree -0 corresponds to

More information

Algorithmic Game Theory and Applications. Lecture 11: Games of Perfect Information

Algorithmic Game Theory and Applications. Lecture 11: Games of Perfect Information Algorithmic Game Theory and Applications Lecture 11: Games of Perfect Information Kousha Etessami finite games of perfect information Recall, a perfect information (PI) game has only 1 node per information

More information

Lecture l(x) 1. (1) x X

Lecture l(x) 1. (1) x X Lecture 14 Agenda for the lecture Kraft s inequality Shannon codes The relation H(X) L u (X) = L p (X) H(X) + 1 14.1 Kraft s inequality While the definition of prefix-free codes is intuitively clear, we

More information

CIS 540 Fall 2009 Homework 2 Solutions

CIS 540 Fall 2009 Homework 2 Solutions CIS 54 Fall 29 Homework 2 Solutions October 25, 29 Problem (a) We can choose a simple ordering for the variables: < x 2 < x 3 < x 4. The resulting OBDD is given in Fig.. x 2 x 2 x 3 x 4 x 3 Figure : OBDD

More information

Cook s Theorem: the First NP-Complete Problem

Cook s Theorem: the First NP-Complete Problem Cook s Theorem: the First NP-Complete Problem Theorem 37 (Cook (1971)) sat is NP-complete. sat NP (p. 113). circuit sat reduces to sat (p. 284). Now we only need to show that all languages in NP can be

More information

Tableau-based Decision Procedures for Hybrid Logic

Tableau-based Decision Procedures for Hybrid Logic Tableau-based Decision Procedures for Hybrid Logic Gert Smolka Saarland University Joint work with Mark Kaminski HyLo 2010 Edinburgh, July 10, 2010 Gert Smolka (Saarland University) Decision Procedures

More information

Sublinear Time Algorithms Oct 19, Lecture 1

Sublinear Time Algorithms Oct 19, Lecture 1 0368.416701 Sublinear Time Algorithms Oct 19, 2009 Lecturer: Ronitt Rubinfeld Lecture 1 Scribe: Daniel Shahaf 1 Sublinear-time algorithms: motivation Twenty years ago, there was practically no investigation

More information

Lecture 23: April 10

Lecture 23: April 10 CS271 Randomness & Computation Spring 2018 Instructor: Alistair Sinclair Lecture 23: April 10 Disclaimer: These notes have not been subjected to the usual scrutiny accorded to formal publications. They

More information

1 FUNDAMENTALS OF LOGIC NO.5 SOUNDNESS AND COMPLETENESS Tatsuya Hagino hagino@sfc.keio.ac.jp lecture URL https://vu5.sfc.keio.ac.jp/slide/ 2 So Far Propositional Logic Logical Connectives(,,, ) Truth Table

More information

SET 1C Binary Trees. 2. (i) Define the height of a binary tree or subtree and also define a height balanced (AVL) tree. (2)

SET 1C Binary Trees. 2. (i) Define the height of a binary tree or subtree and also define a height balanced (AVL) tree. (2) SET 1C Binary Trees 1. Construct a binary tree whose preorder traversal is K L N M P R Q S T and inorder traversal is N L K P R M S Q T 2. (i) Define the height of a binary tree or subtree and also define

More information

CMPSCI 311: Introduction to Algorithms Second Midterm Practice Exam SOLUTIONS

CMPSCI 311: Introduction to Algorithms Second Midterm Practice Exam SOLUTIONS CMPSCI 311: Introduction to Algorithms Second Midterm Practice Exam SOLUTIONS November 17, 2016. Name: ID: Instructions: Answer the questions directly on the exam pages. Show all your work for each question.

More information

Lecture 4: Divide and Conquer

Lecture 4: Divide and Conquer Lecture 4: Divide and Conquer Divide and Conquer Merge sort is an example of a divide-and-conquer algorithm Recall the three steps (at each level to solve a divideand-conquer problem recursively Divide

More information

Partial Order Reduction in Symbolic State Space Traversal Using ZBDDs

Partial Order Reduction in Symbolic State Space Traversal Using ZBDDs 704 IEICE TRANS. INF. & SYST., VOL.E82 D, NO.3 MARCH 1999 LETTER Partial Order Reduction in Symbolic State Space Traversal Using ZBDDs Minoru TOMISAKA, Nonmember and Tomohiro YONEDA, Member SUMMARY In

More information

Essays on Some Combinatorial Optimization Problems with Interval Data

Essays on Some Combinatorial Optimization Problems with Interval Data Essays on Some Combinatorial Optimization Problems with Interval Data a thesis submitted to the department of industrial engineering and the institute of engineering and sciences of bilkent university

More information

Yao s Minimax Principle

Yao s Minimax Principle Complexity of algorithms The complexity of an algorithm is usually measured with respect to the size of the input, where size may for example refer to the length of a binary word describing the input,

More information

Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay

Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay Lecture - 15 Adaptive Huffman Coding Part I Huffman code are optimal for a

More information

Recall: Data Flow Analysis. Data Flow Analysis Recall: Data Flow Equations. Forward Data Flow, Again

Recall: Data Flow Analysis. Data Flow Analysis Recall: Data Flow Equations. Forward Data Flow, Again Data Flow Analysis 15-745 3/24/09 Recall: Data Flow Analysis A framework for proving facts about program Reasons about lots of little facts Little or no interaction between facts Works best on properties

More information

MAC Learning Objectives. Learning Objectives (Cont.)

MAC Learning Objectives. Learning Objectives (Cont.) MAC 1140 Module 12 Introduction to Sequences, Counting, The Binomial Theorem, and Mathematical Induction Learning Objectives Upon completing this module, you should be able to 1. represent sequences. 2.

More information

Decidability and Recursive Languages

Decidability and Recursive Languages Decidability and Recursive Languages Let L (Σ { }) be a language, i.e., a set of strings of symbols with a finite length. For example, {0, 01, 10, 210, 1010,...}. Let M be a TM such that for any string

More information

Dynamic Programming cont. We repeat: The Dynamic Programming Template has three parts.

Dynamic Programming cont. We repeat: The Dynamic Programming Template has three parts. Page 1 Dynamic Programming cont. We repeat: The Dynamic Programming Template has three parts. Subproblems Sometimes this is enough if the algorithm and its complexity is obvious. Recursion Algorithm Must

More information

LECTURE 2: MULTIPERIOD MODELS AND TREES

LECTURE 2: MULTIPERIOD MODELS AND TREES LECTURE 2: MULTIPERIOD MODELS AND TREES 1. Introduction One-period models, which were the subject of Lecture 1, are of limited usefulness in the pricing and hedging of derivative securities. In real-world

More information

Notes on the EM Algorithm Michael Collins, September 24th 2005

Notes on the EM Algorithm Michael Collins, September 24th 2005 Notes on the EM Algorithm Michael Collins, September 24th 2005 1 Hidden Markov Models A hidden Markov model (N, Σ, Θ) consists of the following elements: N is a positive integer specifying the number of

More information

Rational Behaviour and Strategy Construction in Infinite Multiplayer Games

Rational Behaviour and Strategy Construction in Infinite Multiplayer Games Rational Behaviour and Strategy Construction in Infinite Multiplayer Games Michael Ummels ummels@logic.rwth-aachen.de FSTTCS 2006 Michael Ummels Rational Behaviour and Strategy Construction 1 / 15 Infinite

More information

On the Optimality of a Family of Binary Trees

On the Optimality of a Family of Binary Trees On the Optimality of a Family of Binary Trees Dana Vrajitoru Computer and Information Sciences Department Indiana University South Bend South Bend, IN 46645 Email: danav@cs.iusb.edu William Knight Computer

More information

Course Information and Introduction

Course Information and Introduction August 20, 2015 Course Information 1 Instructor : Email : arash.rafiey@indstate.edu Office : Root Hall A-127 Office Hours : Tuesdays 12:00 pm to 1:00 pm in my office (A-127) 2 Course Webpage : http://cs.indstate.edu/

More information

Lecture 17: More on Markov Decision Processes. Reinforcement learning

Lecture 17: More on Markov Decision Processes. Reinforcement learning Lecture 17: More on Markov Decision Processes. Reinforcement learning Learning a model: maximum likelihood Learning a value function directly Monte Carlo Temporal-difference (TD) learning COMP-424, Lecture

More information

CSCE 750, Fall 2009 Quizzes with Answers

CSCE 750, Fall 2009 Quizzes with Answers CSCE 750, Fall 009 Quizzes with Answers Stephen A. Fenner September 4, 011 1. Give an exact closed form for Simplify your answer as much as possible. k 3 k+1. We reduce the expression to a form we ve already

More information

Handout 4: Deterministic Systems and the Shortest Path Problem

Handout 4: Deterministic Systems and the Shortest Path Problem SEEM 3470: Dynamic Optimization and Applications 2013 14 Second Term Handout 4: Deterministic Systems and the Shortest Path Problem Instructor: Shiqian Ma January 27, 2014 Suggested Reading: Bertsekas

More information

VARN CODES AND GENERALIZED FIBONACCI TREES

VARN CODES AND GENERALIZED FIBONACCI TREES Julia Abrahams Mathematical Sciences Division, Office of Naval Research, Arlington, VA 22217-5660 (Submitted June 1993) INTRODUCTION AND BACKGROUND Yarn's [6] algorithm solves the problem of finding an

More information

Finding the Sum of Consecutive Terms of a Sequence

Finding the Sum of Consecutive Terms of a Sequence Mathematics 451 Finding the Sum of Consecutive Terms of a Sequence In a previous handout we saw that an arithmetic sequence starts with an initial term b, and then each term is obtained by adding a common

More information

1 Solutions to Tute09

1 Solutions to Tute09 s to Tute0 Questions 4. - 4. are straight forward. Q. 4.4 Show that in a binary tree of N nodes, there are N + NULL pointers. Every node has outgoing pointers. Therefore there are N pointers. Each node,

More information

MSU CSE Spring 2011 Exam 2-ANSWERS

MSU CSE Spring 2011 Exam 2-ANSWERS MSU CSE 260-001 Spring 2011 Exam 2-NSWERS Name: This is a closed book exam, with 9 problems on 5 pages totaling 100 points. Integer ivision/ Modulo rithmetic 1. We can add two numbers in base 2 by using

More information

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Lecture 3 Tuesday, January 30, 2018 1 Inductive sets Induction is an important concept in the theory of programming language.

More information

FMCAD 2011 Effective Word-Level Interpolation for Software Verification

FMCAD 2011 Effective Word-Level Interpolation for Software Verification FMCAD 2011 Effective Word-Level Interpolation for Software Verification Alberto Griggio FBK-IRST Motivations Craig interpolation applied succesfully for Formal Verification of both hardware and software

More information

CSE 417 Algorithms. Huffman Codes: An Optimal Data Compression Method

CSE 417 Algorithms. Huffman Codes: An Optimal Data Compression Method CSE 417 Algorithms Huffman Codes: An Optimal Data Compression Method 1 Compression Example 100k file, 6 letter alphabet: a 45% b 13% c 12% d 16% e 9% f 5% File Size: ASCII, 8 bits/char: 800kbits 2 3 >

More information

CEC login. Student Details Name SOLUTIONS

CEC login. Student Details Name SOLUTIONS Student Details Name SOLUTIONS CEC login Instructions You have roughly 1 minute per point, so schedule your time accordingly. There is only one correct answer per question. Good luck! Question 1. Searching

More information

Maximum Contiguous Subsequences

Maximum Contiguous Subsequences Chapter 8 Maximum Contiguous Subsequences In this chapter, we consider a well-know problem and apply the algorithm-design techniques that we have learned thus far to this problem. While applying these

More information

TABLEAU-BASED DECISION PROCEDURES FOR HYBRID LOGIC

TABLEAU-BASED DECISION PROCEDURES FOR HYBRID LOGIC TABLEAU-BASED DECISION PROCEDURES FOR HYBRID LOGIC THOMAS BOLANDER AND TORBEN BRAÜNER Abstract. Hybrid logics are a principled generalization of both modal logics and description logics. It is well-known

More information

Reconfiguration of Satisfying Assignments and Subset Sums: Easy to Find, Hard to Connect

Reconfiguration of Satisfying Assignments and Subset Sums: Easy to Find, Hard to Connect Reconfiguration of Satisfying Assignments and Subset Sums: Easy to Find, Hard to Connect x x in x in x in y z y in F F z in t F F z in t F F t 0 y out T y out T z out T Jean Cardinal, Erik Demaine, David

More information

Notes on Natural Logic

Notes on Natural Logic Notes on Natural Logic Notes for PHIL370 Eric Pacuit November 16, 2012 1 Preliminaries: Trees A tree is a structure T = (T, E), where T is a nonempty set whose elements are called nodes and E is a relation

More information

On Polynomial-Time Preference Elicitation with Value Queries

On Polynomial-Time Preference Elicitation with Value Queries On Polynomial-Time Preference Elicitation with Value Queries Martin A. Zinkevich Carnegie Mellon University 5000 Forbes Avenue Pittsburgh, PA 15213 maz@cs.cmu.edu Avrim Blum Carnegie Mellon University

More information

Pattern Recognition Chapter 5: Decision Trees

Pattern Recognition Chapter 5: Decision Trees Pattern Recognition Chapter 5: Decision Trees Asst. Prof. Dr. Chumphol Bunkhumpornpat Department of Computer Science Faculty of Science Chiang Mai University Learning Objectives How decision trees are

More information

Lecture 10: The knapsack problem

Lecture 10: The knapsack problem Optimization Methods in Finance (EPFL, Fall 2010) Lecture 10: The knapsack problem 24.11.2010 Lecturer: Prof. Friedrich Eisenbrand Scribe: Anu Harjula The knapsack problem The Knapsack problem is a problem

More information

Bidding Languages. Noam Nissan. October 18, Shahram Esmaeilsabzali. Presenter:

Bidding Languages. Noam Nissan. October 18, Shahram Esmaeilsabzali. Presenter: Bidding Languages Noam Nissan October 18, 2004 Presenter: Shahram Esmaeilsabzali Outline 1 Outline The Problem 1 Outline The Problem Some Bidding Languages(OR, XOR, and etc) 1 Outline The Problem Some

More information

Developmental Math An Open Program Unit 12 Factoring First Edition

Developmental Math An Open Program Unit 12 Factoring First Edition Developmental Math An Open Program Unit 12 Factoring First Edition Lesson 1 Introduction to Factoring TOPICS 12.1.1 Greatest Common Factor 1 Find the greatest common factor (GCF) of monomials. 2 Factor

More information

Inference in Bayesian Networks

Inference in Bayesian Networks Andrea Passerini passerini@disi.unitn.it Machine Learning Inference in graphical models Description Assume we have evidence e on the state of a subset of variables E in the model (i.e. Bayesian Network)

More information

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages

Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Harvard School of Engineering and Applied Sciences CS 152: Programming Languages Lecture 3 Tuesday, February 2, 2016 1 Inductive proofs, continued Last lecture we considered inductively defined sets, and

More information

Lecture 14: Basic Fixpoint Theorems (cont.)

Lecture 14: Basic Fixpoint Theorems (cont.) Lecture 14: Basic Fixpoint Theorems (cont) Predicate Transformers Monotonicity and Continuity Existence of Fixpoints Computing Fixpoints Fixpoint Characterization of CTL Operators 1 2 E M Clarke and E

More information

AVL Trees. The height of the left subtree can differ from the height of the right subtree by at most 1.

AVL Trees. The height of the left subtree can differ from the height of the right subtree by at most 1. AVL Trees In order to have a worst case running time for insert and delete operations to be O(log n), we must make it impossible for there to be a very long path in the binary search tree. The first balanced

More information

Dynamic Programming: An overview. 1 Preliminaries: The basic principle underlying dynamic programming

Dynamic Programming: An overview. 1 Preliminaries: The basic principle underlying dynamic programming Dynamic Programming: An overview These notes summarize some key properties of the Dynamic Programming principle to optimize a function or cost that depends on an interval or stages. This plays a key role

More information

Crash-tolerant Consensus in Directed Graph Revisited

Crash-tolerant Consensus in Directed Graph Revisited Crash-tolerant Consensus in Directed Graph Revisited Ashish Choudhury Gayathri Garimella Arpita Patra Divya Ravi Pratik Sarkar Abstract Fault-tolerant distributed consensus is a fundamental problem in

More information

Structural Induction

Structural Induction Structural Induction Jason Filippou CMSC250 @ UMCP 07-05-2016 Jason Filippou (CMSC250 @ UMCP) Structural Induction 07-05-2016 1 / 26 Outline 1 Recursively defined structures 2 Proofs Binary Trees Jason

More information

Homework #4. CMSC351 - Spring 2013 PRINT Name : Due: Thu Apr 16 th at the start of class

Homework #4. CMSC351 - Spring 2013 PRINT Name : Due: Thu Apr 16 th at the start of class Homework #4 CMSC351 - Spring 2013 PRINT Name : Due: Thu Apr 16 th at the start of class o Grades depend on neatness and clarity. o Write your answers with enough detail about your approach and concepts

More information

1. Geometric sequences can be modeled by exponential functions using the common ratio and the initial term.

1. Geometric sequences can be modeled by exponential functions using the common ratio and the initial term. 1 Geometric sequences can be modeled by exponential functions using the common ratio and the initial term Exponential growth and exponential decay functions can be used to model situations where a quantity

More information

EDA045F: Program Analysis LECTURE 3: DATAFLOW ANALYSIS 2. Christoph Reichenbach

EDA045F: Program Analysis LECTURE 3: DATAFLOW ANALYSIS 2. Christoph Reichenbach EDA045F: Program Analysis LECTURE 3: DATAFLOW ANALYSIS 2 Christoph Reichenbach In the last lecture... Eliminating Nested Expressions (Three-Address Code) Control-Flow Graphs Static Single Assignment Form

More information

Counting Basics. Venn diagrams

Counting Basics. Venn diagrams Counting Basics Sets Ways of specifying sets Union and intersection Universal set and complements Empty set and disjoint sets Venn diagrams Counting Inclusion-exclusion Multiplication principle Addition

More information

Outline Introduction Game Representations Reductions Solution Concepts. Game Theory. Enrico Franchi. May 19, 2010

Outline Introduction Game Representations Reductions Solution Concepts. Game Theory. Enrico Franchi. May 19, 2010 May 19, 2010 1 Introduction Scope of Agent preferences Utility Functions 2 Game Representations Example: Game-1 Extended Form Strategic Form Equivalences 3 Reductions Best Response Domination 4 Solution

More information

Optimizing the Hurwicz criterion in decision trees with imprecise probabilities

Optimizing the Hurwicz criterion in decision trees with imprecise probabilities Optimizing the Hurwicz criterion in decision trees with imprecise probabilities Gildas Jeantet and Olivier Spanjaard LIP6 - UPMC 104 avenue du Président Kennedy 75016 Paris, France {gildas.jeantet,olivier.spanjaard}@lip6.fr

More information

IEOR E4004: Introduction to OR: Deterministic Models

IEOR E4004: Introduction to OR: Deterministic Models IEOR E4004: Introduction to OR: Deterministic Models 1 Dynamic Programming Following is a summary of the problems we discussed in class. (We do not include the discussion on the container problem or the

More information

The Complexity of Simple and Optimal Deterministic Mechanisms for an Additive Buyer. Xi Chen, George Matikas, Dimitris Paparas, Mihalis Yannakakis

The Complexity of Simple and Optimal Deterministic Mechanisms for an Additive Buyer. Xi Chen, George Matikas, Dimitris Paparas, Mihalis Yannakakis The Complexity of Simple and Optimal Deterministic Mechanisms for an Additive Buyer Xi Chen, George Matikas, Dimitris Paparas, Mihalis Yannakakis Seller has n items for sale The Set-up Seller has n items

More information

CS599: Algorithm Design in Strategic Settings Fall 2012 Lecture 6: Prior-Free Single-Parameter Mechanism Design (Continued)

CS599: Algorithm Design in Strategic Settings Fall 2012 Lecture 6: Prior-Free Single-Parameter Mechanism Design (Continued) CS599: Algorithm Design in Strategic Settings Fall 2012 Lecture 6: Prior-Free Single-Parameter Mechanism Design (Continued) Instructor: Shaddin Dughmi Administrivia Homework 1 due today. Homework 2 out

More information

Analysis of Computing Policies Using SAT Solvers (Short Paper)

Analysis of Computing Policies Using SAT Solvers (Short Paper) Analysis of Computing Policies Using SAT Solvers Short Paper Marijn J. H. Heule, Rezwana Reaz, H. B. Acharya, and Mohamed G. Gouda The University of Texas at Austin, United States {marijn,rezwana,acharya,gouda}@cs.utexas.edu

More information

Math 101, Basic Algebra Author: Debra Griffin

Math 101, Basic Algebra Author: Debra Griffin Math 101, Basic Algebra Author: Debra Griffin Name Chapter 5 Factoring 5.1 Greatest Common Factor 2 GCF, factoring GCF, factoring common binomial factor 5.2 Factor by Grouping 5 5.3 Factoring Trinomials

More information

Continuous images of closed sets in generalized Baire spaces ESI Workshop: Forcing and Large Cardinals

Continuous images of closed sets in generalized Baire spaces ESI Workshop: Forcing and Large Cardinals Continuous images of closed sets in generalized Baire spaces ESI Workshop: Forcing and Large Cardinals Philipp Moritz Lücke (joint work with Philipp Schlicht) Mathematisches Institut, Rheinische Friedrich-Wilhelms-Universität

More information

Principles of Program Analysis: Algorithms

Principles of Program Analysis: Algorithms Principles of Program Analysis: Algorithms Transparencies based on Chapter 6 of the book: Flemming Nielson, Hanne Riis Nielson and Chris Hankin: Principles of Program Analysis. Springer Verlag 2005. c

More information

Arborescent Architecture for Decentralized Supervisory Control of Discrete Event Systems

Arborescent Architecture for Decentralized Supervisory Control of Discrete Event Systems Arborescent Architecture for Decentralized Supervisory Control of Discrete Event Systems Ahmed Khoumsi and Hicham Chakib Dept. Electrical & Computer Engineering, University of Sherbrooke, Canada Email:

More information

Conditional Rewriting

Conditional Rewriting Conditional Rewriting Bernhard Gramlich ISR 2009, Brasilia, Brazil, June 22-26, 2009 Bernhard Gramlich Conditional Rewriting ISR 2009, July 22-26, 2009 1 Outline Introduction Basics in Conditional Rewriting

More information

Strong Subgraph k-connectivity of Digraphs

Strong Subgraph k-connectivity of Digraphs Strong Subgraph k-connectivity of Digraphs Yuefang Sun joint work with Gregory Gutin, Anders Yeo, Xiaoyan Zhang yuefangsun2013@163.com Department of Mathematics Shaoxing University, China July 2018, Zhuhai

More information

OPPA European Social Fund Prague & EU: We invest in your future.

OPPA European Social Fund Prague & EU: We invest in your future. OPPA European Social Fund Prague & EU: We invest in your future. Cooperative Game Theory Michal Jakob and Michal Pěchouček Agent Technology Center, Dept. of Computer Science and Engineering, FEE, Czech

More information

A Testing Read-Once Formula Satisfaction

A Testing Read-Once Formula Satisfaction A Testing Read-Once Formula Satisfaction ELDAR FISCHER and YONATAN GOLDHIRSH, Technion, Israel Institute of Technology ODED LACHISH, Birkbeck, University of London We study the query complexity of testing

More information

Asymptotic Notation. Instructor: Laszlo Babai June 14, 2002

Asymptotic Notation. Instructor: Laszlo Babai June 14, 2002 Asymptotic Notation Instructor: Laszlo Babai June 14, 2002 1 Preliminaries Notation: exp(x) = e x. Throughout this course we shall use the following shorthand in quantifier notation. ( a) is read as for

More information

Q1. [?? pts] Search Traces

Q1. [?? pts] Search Traces CS 188 Spring 2010 Introduction to Artificial Intelligence Midterm Exam Solutions Q1. [?? pts] Search Traces Each of the trees (G1 through G5) was generated by searching the graph (below, left) with a

More information

Chapter wise Question bank

Chapter wise Question bank GOVERNMENT ENGINEERING COLLEGE - MODASA Chapter wise Question bank Subject Name Analysis and Design of Algorithm Semester Department 5 th Term ODD 2015 Information Technology / Computer Engineering Chapter

More information

UNIT 2. Greedy Method GENERAL METHOD

UNIT 2. Greedy Method GENERAL METHOD UNIT 2 GENERAL METHOD Greedy Method Greedy is the most straight forward design technique. Most of the problems have n inputs and require us to obtain a subset that satisfies some constraints. Any subset

More information

Tug of War Game. William Gasarch and Nick Sovich and Paul Zimand. October 6, Abstract

Tug of War Game. William Gasarch and Nick Sovich and Paul Zimand. October 6, Abstract Tug of War Game William Gasarch and ick Sovich and Paul Zimand October 6, 2009 To be written later Abstract Introduction Combinatorial games under auction play, introduced by Lazarus, Loeb, Propp, Stromquist,

More information

The Probabilistic Method - Probabilistic Techniques. Lecture 7: Martingales

The Probabilistic Method - Probabilistic Techniques. Lecture 7: Martingales The Probabilistic Method - Probabilistic Techniques Lecture 7: Martingales Sotiris Nikoletseas Associate Professor Computer Engineering and Informatics Department 2015-2016 Sotiris Nikoletseas, Associate

More information

EXAMPLE: Find the Limit: lim

EXAMPLE: Find the Limit: lim SECTION 4.3: L HOPITAL S RULE Sometimes when attempting to determine a Limit by the algebraic method of plugging in the number x is approaching, we run into situations where we seem not to have an answer,

More information