BDD Based Upon Shannon Expansion


 Lesley Sullivan
 10 months ago
 Views:
Transcription
1 Boolean Function Manipulation OBDD and more BDD Based Upon Shannon Expansion Notations f(x, x 2,, x n )  ninput function, x i = or f xi=b (x,, x n ) = f(x,,x i,b,x i+,,x n ), b= or Shannon Expansion fix a variable f = x i f xi= (x,, x n ) + x i f xi= (x,, x n )
2 Example f = x x2 + x4 + x x2 x5 f(x=) = x4 + x2 x5 f(x=) = x2 + x4 f = x ( x4 + x2 x5) + x (x2 + x4) Similarly f = x2 ( x4) + x2 (x + x4 + x x5) To represent f, we use a divideandconquer approach to represent f(xi=) and f(xi=) xi f(xi=) f(xi=) f = x x2 + Decision Tree f = x (x2 + ) + x () g = x2 () + x2 () g2 = x2 g g2 x x2 g2 f g In f, g2 appears twice, appears 3 times, and appears twice 2
3 OBDD From root (x) to a terminal vertex ( or ), the ordering of the splitting variables is the same Each subfunction appears only once two subfunctions are the same iff their OBDD graphs are the same canonical representation Also known as readonce branch program in comp. theory x x 2X+3=5 x2 x2 3 f 2n+ vertices Classical OBDD Example Variable ordering is not important... x x2 f = x x2... xn xn even s odd # of s 3
4 Classical OBDD Example To represent a symmetric function variable ordering is not important at level i, we need at most i vertices total nodes is < O(n 2 ) no s s 2 s 3 s Ordering Example f = x x2 + x4 + x5 x6 ordering : x x2 x4 x5 x6 (linear result) If (x x2)=, f = no need to read further! Otherwise we can forget about x x2 The memoryless effect makes BDD small A node in a BDD is a memory cell to remember the intermediate results during the computation of the function ordering 2 : x x5 x2 x4 x6 (exponential result) If (x==x5=) we need to remember them all! Because nothing can be decided based upon the information we have 4
5 Ordering and OBDD Size A node in a function graph is a place to remember important information about the computation f = x x 2 + x 3 x x (n) x n proceed in this direction when reach x 2 need to remember the value of x when reach x 3 only when x x 2 = if x x 2 =, then x x 2 can be ignored and from x 3 the computation restarts fresh OBDD Size f = x x n/2+ + x 2 x n/ x n/2 x n proceed ordering as x x 2 x 3 x 4 x (n) x n when reach x n/2 all values in x x 2 x 3 x (n)/2 will need to be remembered because a different assignment may lead to different result nothing can be ignored and nothing for sure to be said about the evaluation yet need a complete binary tree for (n)/2 variables exponential result 5
6 Satisfiability Satisfyone: find a path from to the root Satisfyall : find all different paths from to the root Satisfycount : count the # of satisfying assignments Computing OBDDs x xn Circuit Initialize all Pis Compute the result of a boolean operation as merging two OBDDs and, or, xor, etc. Use procedures Apply and Reduce Follow topological order until reaching all POs 6
7 WorstCase Example Worstcase example  multiplication f = A*B for any input ordering, OBDD(f) requires an exponential number of nodes (a n a n a ) * (b n b n b ) π is an ordering Theorem: for any π, OBDD size 2 n/8 Potential solutions wordlevel BDD Binary moment diagram (BMD) Idea of Proof No matter how you order the input variables, you can always find a cut that The width is O(n) The information flow is O(n/8) Input set Input set 2 O(n/8) 7
8 Equivalent to Say Need to remember O(n/8) different states More Terminology Composition f(xi=g)(x xn) = f(x,, g(x xn),, xn) ex. f=xx2+x4 and g=x2+ f(x=g) = x2 + x2 + x4 = x2 + x4 Dependency Set I f = { i f(xi=) f(xi=) } f depends on xi f = x x2 + x x2 f is independent of x Satisfying Set S f = { (x xn) f(x xn) = } all assignments that made f = 8
9 OBDD Operation Complexity Reduce (make canonical, minimal form)  O(G log G) (DA) graphs isomorphism Apply (merge two OBDDs)  O(G G 2 ) Boolean operation = {Apply Reduce} Restrict {f(xi=b)}  O(G log G) Compose {f(xi=g)}  O(G 2 G 2 ) SatisfyOne  O(n) Satisfyall  O(n S f ) SatisfyCount  O(G) This is a #Pcomplete problem Apply and Reduce OBDD op OBDD2 The basic algorithms to do so are Apply(OBDD, OBDD2) > BDD3 Reduce(BDD3) > OBDD3 9
10 f op f 2 = Apply x i [ f (x i =) op f 2 (x i =) ] + x i [ f (x i =) op f 2 (x i =) ] op = T T2 T3 T4 T op T3 T2 op T4 Example 2 Apply = 3 3 F= X + X X3 2 Reduce
11 Complexity of Apply i nodes op j nodes = k nodes k i * j i nodes represent i different subfunctions the worst case  (each of i nodes) op (each of j nodes) are different Total complexity O(G G2) Hash table in Apply Apply ( ), T T2 a T3 T4 b Apply(T, T3) Apply(T2, T4) Apply(a,b) When doing Apply(T,T3), we have done Apply(a,b) Apply(a,b) should not be repeated Need a hash table to store results of from Apply of all subfunctions.
12 Reduce DA Graph Isomorphism we can do a pairwise comparison for all nodes but that is too slow instead: by labeling bottomup = = 6 (4,5) 4 (3,2) 5 (,2) 3 (,2) () (2) Each graph has a unique labeling scheme same label at the root = same graph Labeling Scheme i i... i i+ i+ i+... i+2 i+2... i+2 i = i a b c d iff a=c && b=d Why working bottomup? So that when working at level i, each node below already points to a unique graph already 2
13 Redundant Nodes Removal i+ i i i = i+ i+ i i i i i+ i+ i+ = At each level, how do we know how many nodes are identical in the labeling scheme? by sorting the labels at that level O(n log n) time complexity An Example (4,3) (,3) 2 2 (3,3) 2 3 (,2) 3 (,2) 3 () (2) () (2) 3
14 Other BDDs Function Decomposition Rules OBDD f = x f(x=) + x f(x=) ReedMuller Decomposition f = f(x=) x [ f(x=) f(x=) ] f = f(x=) x [ f(x=) f(x=) ] Ordered Functional Decision Diagram x f(x=) f(x=) f(x=) 4
15 F = (x x2) F(=) = F(=) = x x2 difference D3 = x x2 D3(x2=) = x D3(x2=) = x difference D2 = OFDD x2 x OFDD requires a different Reduction rule For some functions, OFDD can be exponentially smaller than OBDD and vice verse Evaluation of the graph is different from OBDD Can no longer be simply tracing from root to s or s Free BDD The ordering along each path can be different Main issues Deciding that two trees are representing the same functions can not be done by graph isomorphism. It can only be done via a probabilistic algorithms Free BDD give flexibility in the representation but sacrifice in the complexity of manipulate the BDD date structures 5
16 Represent NumericValued Functions eg. f=x +2x +4x 2 Arithmetic Decision Diagram (ADD) Associate more values as terminal nodes EdgeValued BDD (EVBDD) Bring values from the terminal nodes to edges Binary Moment Diagram (BMD) Decomposition : f = f(x=) + x (δf/δx) Linearly Inductive BDD Linearly Inductive Function Recursively Defined X i : the inputs to the iinstance function F i : the iinstance function B i : an arbitrary boolean function F = B (x ) and F i = B i (X i, G i ) B i = B j for all i,j Example  Adder Sum = a b c_in Sum i = ai bi Carry i Carry = a b + (a+b) c_in Carry i = ai bi + (ai+bi) Carry i 6
17 LIBDD Require different rules for Apply and Reduce Applicable to special case when good sequentiality can be captured Function definition has to be known in advance Inspiration ZeroSuppressed BDD To represent a collection of bit vectors eg. () () () Such a representation is often encountered in some combinatorial problems Usually, the s in the bit vectors is sparse ZBDD Change the Reduction rule A node can be removed iff the edge points to x 7
18 x2 ZBDD Interpretation x x x x In ZBDD sense A = {, } and B = {,, } ZBDD is good for sets manipulation ZBDD can be used to represent a function as a collection of cube sets x,x2,={,,} => {,,} To ensure sparse => :, :, : 8
EECS 219C: ComputerAided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams. Sanjit A. Seshia EECS, UC Berkeley
EECS 219C: ComputerAided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams Sanjit A. Seshia EECS, UC Berkeley Acknowledgments: Lintao Zhang Announcement Project proposals due
More informationEquivalence Checking of Sequential Circuits
Equivalence Checking of Sequential Circuits Sanjit Seshia EECS UC Berkeley With thanks to K. Keutzer, R. Rutenbar 1 Today s Lecture What we know: How to check two combinational circuits for equivalence
More informationTitle. Citation Information Processing Letters, 112(16): Issue Date Doc URLhttp://hdl.handle.net/2115/ Type.
Title Counterexamples to the longstanding conjectur Author(s) Yoshinaka, Ryo; Kawahara, Jun; Denzumi, Shuhei Citation Information Processing Letters, 112(16): 6366 Issue Date 20120831 Doc URLhttp://hdl.handle.net/2115/50105
More informationSymbolic Model Checking with ROBDDs
Symbolic Model Checking with ROBDDs Lecture #13 of Advanced Model Checking JoostPieter Katoen Lehrstuhl 2: Software Modeling & Verification Email: katoen@cs.rwthaachen.de December 14, 2016 c JPK Symbolic
More informationReduced Ordered Binary Decision Diagrams
Reduced Ordered Binary Decision Diagrams Lecture #13 of Advanced Model Checking JoostPieter Katoen Lehrstuhl 2: Software Modeling & Verification Email: katoen@cs.rwthaachen.de June 5, 2012 c JPK Switching
More informationBounds on the OBDDSize of Integer Multiplication via Universal Hashing
Bounds on the OBDDSize of Integer Multiplication via Universal Hashing Philipp Woelfel Dept. of Computer Science University Dortmund D44221 Dortmund Germany phone: +49 231 7552120 fax: +49 231 7552047
More informationhexadecimaltodecimal conversion
OTHER NUMBER SYSTEMS: octal (digits 0 to 7) group three binary numbers together and represent as base 8 3564 10 = 110 111 101 100 2 = (6X8 3 ) + (7X8 2 ) + (5X8 1 ) + (4X8 0 ) = 6754 8 hexadecimal (digits
More information1188 IEEE TRANSACTIONS ON COMPUTERS, VOL. 55, NO. 9, SEPTEMBER 2006
1188 IEEE TRANSACTIONS ON COMPUTERS, VOL. 55, NO. 9, SEPTEMBER 2006 Taylor Expansion Diagrams: A Canonical Representation for Verification of Data Flow Designs Maciej Ciesielski, Senior Member, IEEE, Priyank
More informationReduced Ordered Binary Decision Diagrams
Reduced Ordered Binary Decision Diagrams Lecture #12 of Advanced Model Checking JoostPieter Katoen Lehrstuhl 2: Software Modeling & Verification Email: katoen@cs.rwthaachen.de December 13, 2016 c JPK
More informationLecture 4 October 18th
Directed and undirected graphical models Fall 2017 Lecture 4 October 18th Lecturer: Guillaume Obozinski Scribe: In this lecture, we will assume that all random variables are discrete, to keep notations
More informationBinary Decision Diagrams
Binar Decision Diagrams Ma 3, 2004 1 Overview Boolean functions Possible representations Binar decision trees Binar decision diagrams Ordered binar decision diagrams Reduced ordered binar decision diagrams
More informationChapter 7 Logic Circuits
Chapter 7 Logic Circuits Goal. Advantages of digital technology compared to analog technology. 2. Terminology of Digital Circuits. 3. Convert Numbers between Decimal, Binary and Other forms. 5. Binary
More informationCHAPTER1: Digital Logic Circuits Combination Circuits
CS224: Computer Organization S.KHABET CHAPTER1: Digital Logic Circuits Combination Circuits 1 PRIMITIVE LOGIC GATES Each of our basic operations can be implemented in hardware using a primitive logic gate.
More informationRepresentations of All Solutions of Boolean Programming Problems
Representations of All Solutions of Boolean Programming Problems UtzUwe Haus and Carla Michini Institute for Operations Research Department of Mathematics ETH Zurich Rämistr. 101, 8092 Zürich, Switzerland
More informationOptimization Bounds from Binary Decision Diagrams
Optimization Bounds from Binary Decision Diagrams J. N. Hooker Joint work with David Bergman, André Ciré, Willem van Hoeve Carnegie Mellon University ICS 203 Binary Decision Diagrams BDDs historically
More informationWEEK 2.1 BOOLEAN ALGEBRA
WEEK 2.1 BOOLEAN ALGEBRA 1 Boolean Algebra Boolean algebra was introduced in 1854 by George Boole and in 1938 was shown by C. E. Shannon to be useful for manipulating Boolean logic functions. The postulates
More informationDesign of Sequential Circuits
Design of Sequential Circuits Seven Steps: Construct a state diagram (showing contents of flip flop and inputs with next state) Assign letter variables to each flip flop and each input and output variable
More informationAdders, subtractors comparators, multipliers and other ALU elements
CSE4: Components and Design Techniques for Digital Systems Adders, subtractors comparators, multipliers and other ALU elements Instructor: Mohsen Imani UC San Diego Slides from: Prof.Tajana Simunic Rosing
More informationBoolean Algebra and Digital Logic 2009, University of Colombo School of Computing
IT 204 Section 3.0 Boolean Algebra and Digital Logic Boolean Algebra 2 Logic Equations to Truth Tables X = A. B + A. B + AB A B X 0 0 0 0 3 Sum of Products The OR operation performed on the products of
More information= = = = = =
PARTITION THEORY (notes by M. Hlynka, University of Windsor) Definition: A partition of a positive integer n is an expression of n as a sum of positive integers. Partitions are considered the same if the
More informationPartition of Integers into Distinct Summands with Upper Bounds. Partition of Integers into Even Summands. An Example
Partition of Integers into Even Summands We ask for the number of partitions of m Z + into positive even integers The desired number is the coefficient of x m in + x + x 4 + ) + x 4 + x 8 + ) + x 6 + x
More informationProblem. Problem Given a dictionary and a word. Which page (if any) contains the given word? 3 / 26
Binary Search Introduction Problem Problem Given a dictionary and a word. Which page (if any) contains the given word? 3 / 26 Strategy 1: Random Search Randomly select a page until the page containing
More informationIntroduction to Digital Logic Missouri S&T University CPE 2210 Subtractors
Introduction to Digital Logic Missouri S&T University CPE 2210 Egemen K. Çetinkaya Egemen K. Çetinkaya Department of Electrical & Computer Engineering Missouri University of Science and Technology cetinkayae@mst.edu
More informationCS6840: Advanced Complexity Theory Mar 29, Lecturer: Jayalal Sarma M.N. Scribe: Dinesh K.
CS684: Advanced Complexity Theory Mar 29, 22 Lecture 46 : Size lower bounds for AC circuits computing Parity Lecturer: Jayalal Sarma M.N. Scribe: Dinesh K. Theme: Circuit Complexity Lecture Plan: Proof
More informationMa/CS 117c Handout # 5 P vs. NP
Ma/CS 117c Handout # 5 P vs. NP We consider the possible relationships among the classes P, NP, and conp. First we consider properties of the class of NPcomplete problems, as opposed to those which are
More information1 The LowDegree Testing Assumption
Advanced Complexity Theory Spring 2016 Lecture 17: PCP with Polylogarithmic Queries and Sum Check Prof. Dana Moshkovitz Scribes: Dana Moshkovitz & Michael Forbes Scribe Date: Fall 2010 In this lecture
More informationComputational Logic. Davide Martinenghi. Spring Free University of BozenBolzano. Computational Logic Davide Martinenghi (1/30)
Computational Logic Davide Martinenghi Free University of BozenBolzano Spring 2010 Computational Logic Davide Martinenghi (1/30) Propositional Logic  sequent calculus To overcome the problems of natural
More informationGF(2 m ) arithmetic: summary
GF(2 m ) arithmetic: summary EE 387, Notes 18, Handout #32 Addition/subtraction: bitwise XOR (m gates/ops) Multiplication: bit serial (shift and add) bit parallel (combinational) subfield representation
More informationUnit 1A: Computational Complexity
Unit 1A: Computational Complexity Course contents: Computational complexity NPcompleteness Algorithmic Paradigms Readings Chapters 3, 4, and 5 Unit 1A 1 O: Upper Bounding Function Def: f(n)= O(g(n)) if
More informationNotes on MapReduce Algorithms
Notes on MapReduce Algorithms Barna Saha 1 Finding Minimum Spanning Tree of a Dense Graph in MapReduce We are given a graph G = (V, E) on V = N vertices and E = m N 1+c edges for some constant c > 0. Our
More informationCOS597D: Information Theory in Computer Science October 5, Lecture 6
COS597D: Information Theory in Computer Science October 5, 2011 Lecture 6 Lecturer: Mark Braverman Scribe: Yonatan Naamad 1 A lower bound for perfect hash families. In the previous lecture, we saw that
More informationFORMAL METHODS LECTURE VI BINARY DECISION DIAGRAMS (BDD S)
Alessandro Artale (FM First Semester 2009/2010) p. 1/38 FORMAL METHODS LECTURE VI BINARY DECISION DIAGRAMS (BDD S) Alessandro Artale Faulty of Computer Siene Free University of Bolzano artale@inf.unibz.it
More informationSequential Equivalence Checking  I
Sequential Equivalence Checking  I Virendra Singh Associate Professor Computer Architecture and Dependable Systems Lab. Dept. of Electrical Engineering Indian Institute of Technology Bombay viren@ee.iitb.ac.in
More informationdy = f( x) dx = F ( x)+c = f ( x) dy = f( x) dx
Antiderivatives and The Integral Antiderivatives Objective: Use indefinite integral notation for antiderivatives. Use basic integration rules to find antiderivatives. Another important question in calculus
More informationLooking at a two binary digit sum shows what we need to extend addition to multiple binary digits.
A Full Adder The halfadder is extremely useful until you want to add more that one binary digit quantities. The slow way to develop a two binary digit adders would be to make a truth table and reduce
More informationSynthesis of 2level Logic Exact and Heuristic Methods. Two Approaches
Synthesis of 2level Logic Exact and Heuristic Methods Lecture 7: Branch & Bound Exact Two Approaches Find all primes Find a complete sum Find a minimum cover (covering problem) Heuristic Take an initial
More informationModule 1: Analyzing the Efficiency of Algorithms
Module 1: Analyzing the Efficiency of Algorithms Dr. Natarajan Meghanathan Professor of Computer Science Jackson State University Jackson, MS 39217 Email: natarajan.meghanathan@jsums.edu What is an Algorithm?
More information1 Introduction to information theory
1 Introduction to information theory 1.1 Introduction In this chapter we present some of the basic concepts of information theory. The situations we have in mind involve the exchange of information through
More informationProve that if not fat and not triangle necessarily means not green then green must be fat or triangle (or both).
hapter : oolean lgebra.) Definition of oolean lgebra The oolean algebra is named after George ool who developed this algebra (854) in order to analyze logical problems. n example to such problem is: Prove
More informationBinary addition by hand. Adding two bits
Chapter 3 Arithmetic is the most basic thing you can do with a computer We focus on addition, subtraction, multiplication and arithmeticlogic units, or ALUs, which are the heart of CPUs. ALU design Bit
More informationAdvanced Analysis of Algorithms  Midterm (Solutions)
Advanced Analysis of Algorithms  Midterm (Solutions) K. Subramani LCSEE, West Virginia University, Morgantown, WV {ksmani@csee.wvu.edu} 1 Problems 1. Solve the following recurrence using substitution:
More information10.4 The Kruskal Katona theorem
104 The Krusal Katona theorem 141 Example 1013 (Maximum weight traveling salesman problem We are given a complete directed graph with nonnegative weights on edges, and we must find a maximum weight Hamiltonian
More informationkprotected VERTICES IN BINARY SEARCH TREES
kprotected VERTICES IN BINARY SEARCH TREES MIKLÓS BÓNA Abstract. We show that for every k, the probability that a randomly selected vertex of a random binary search tree on n nodes is at distance k from
More informationAn Algebraic View of the Relation between Largest Common Subtrees and Smallest Common Supertrees
An Algebraic View of the Relation between Largest Common Subtrees and Smallest Common Supertrees Francesc Rosselló 1, Gabriel Valiente 2 1 Department of Mathematics and Computer Science, Research Institute
More informationEssential facts about NPcompleteness:
CMPSCI611: NP Completeness Lecture 17 Essential facts about NPcompleteness: Any NPcomplete problem can be solved by a simple, but exponentially slow algorithm. We don t have polynomialtime solutions
More informationOn the Sizes of Decision Diagrams Representing the Set of All Parse Trees of a Contextfree Grammar
Proceedings of Machine Learning Research vol 73:153164, 2017 AMBN 2017 On the Sizes of Decision Diagrams Representing the Set of All Parse Trees of a Contextfree Grammar Kei Amii Kyoto University Kyoto
More informationCombinational Equivalence Checking using Boolean Satisfiability and Binary Decision Diagrams
Combinational Equivalence Checking using Boolean Satisfiability and Binary Decision Diagrams Sherief Reda Ashraf Salem Computer & Systems Eng. Dept. Mentor Graphics Egypt Ain Shams University Cairo, Egypt
More informationBoolean Algebra. Sungho Kang. Yonsei University
Boolean Algebra Sungho Kang Yonsei University Outline Set, Relations, and Functions Partial Orders Boolean Functions Don t Care Conditions Incomplete Specifications 2 Set Notation $09,3/#0,9 438 v V Element
More informationModule 1: Analyzing the Efficiency of Algorithms
Module 1: Analyzing the Efficiency of Algorithms Dr. Natarajan Meghanathan Associate Professor of Computer Science Jackson State University Jackson, MS 39217 Email: natarajan.meghanathan@jsums.edu Based
More informationIntroduction to Divide and Conquer
Introduction to Divide and Conquer Sorting with O(n log n) comparisons and integer multiplication faster than O(n 2 ) Periklis A. Papakonstantinou York University Consider a problem that admits a straightforward
More information13th International Conference on Relational and Algebraic Methods in Computer Science (RAMiCS 13)
13th International Conference on Relational and Algebraic Methods in Computer Science (RAMiCS 13) Relation Algebras, Matrices, and MultiValued Decision Diagrams Francis Atampore and Dr. Michael Winter
More informationDecidable Subsets of CCS
Decidable Subsets of CCS based on the paper with the same title by Christensen, Hirshfeld and Moller from 1994 Sven Dziadek Abstract Process algebra is a very interesting framework for describing and analyzing
More informationDigital electronics form a class of circuitry where the ability of the electronics to process data is the primary focus.
Chapter 2 Digital Electronics Objectives 1. Understand the operation of basic digital electronic devices. 2. Understand how to describe circuits which can process digital data. 3. Understand how to design
More informationCSE 202 Homework 4 Matthias Springer, A
CSE 202 Homework 4 Matthias Springer, A99500782 1 Problem 2 Basic Idea PERFECT ASSEMBLY N P: a permutation P of s i S is a certificate that can be checked in polynomial time by ensuring that P = S, and
More information3F1 Information Theory, Lecture 3
3F1 Information Theory, Lecture 3 Jossy Sayir Department of Engineering Michaelmas 2013, 29 November 2013 Memoryless Sources Arithmetic Coding Sources with Memory Markov Example 2 / 21 Encoding the output
More informationChapter 2 Boolean Algebra and Logic Gates
Chapter 2 Boolean Algebra and Logic Gates The most common postulates used to formulate various algebraic structures are: 1. Closure. N={1,2,3,4 }, for any a,b N we obtain a unique c N by the operation
More information4.1 Notation and probability review
Directed and undirected graphical models Fall 2015 Lecture 4 October 21st Lecturer: Simon LacosteJulien Scribe: Jaime Roquero, JieYing Wu 4.1 Notation and probability review 4.1.1 Notations Let us recall
More informationDRAFT. Algebraic computation models. Chapter 14
Chapter 14 Algebraic computation models Somewhat rough We think of numerical algorithms rootfinding, gaussian elimination etc. as operating over R or C, even though the underlying representation of the
More informationSystems I: Computer Organization and Architecture
Systems I: Computer Organization and Architecture Lecture 6  Combinational Logic Introduction A combinational circuit consists of input variables, logic gates, and output variables. The logic gates accept
More informationthe tree till a class assignment is reached
Decision Trees Decision Tree for Playing Tennis Prediction is done by sending the example down Prediction is done by sending the example down the tree till a class assignment is reached Definitions Internal
More informationThe Complexity and Proof Complexity of the Comparator Circuit Value Problem
The Complexity and Proof Complexity of the Comparator Circuit Value Problem Stephen Cook Joint work with Yuval Filmus, Dai Tri Man Lê, and Yuli Ye Department of Computer Science University of Toronto Canada
More informationChapter 2: Boolean Algebra and Logic Gates
Chapter 2: Boolean Algebra and Logic Gates Mathematical methods that simplify binary logics or circuits rely primarily on Boolean algebra. Boolean algebra: a set of elements, a set of operators, and a
More informationSafety and Reliability of Embedded Systems
(Sicherheit und Zuverlässigkeit eingebetteter Systeme) Fault Tree Analysis Mathematical Background and Algorithms Prof. Dr. Liggesmeyer, 0 Content Definitions of Terms Introduction to Combinatorics General
More informationLUTMIN: FPGA Logic Synthesis with MUXBased and Cascade Realizations
LUTMIN: FPGA Logic Synthesis with MUXBased and Cascade Realizations Tsutomu Sasao and Alan Mishchenko Dept. of Computer Science and Electronics, Kyushu Institute of Technology, Iizuka 8080, Japan Dept.
More informationROMBASED COMPUTATION: QUANTUM VERSUS CLASSICAL
arxiv:quantph/0109016v2 2 Jul 2002 ROMBASED COMPUTATION: QUANTUM VERSUS CLASSICAL B. C. Travaglione, M. A. Nielsen Centre for Quantum Computer Technology, University of Queensland St Lucia, Queensland,
More informationHighOrder Conversion From Boolean to Arithmetic Masking
HighOrder Conversion From Boolean to Arithmetic Masking JeanSébastien Coron University of Luxembourg jeansebastien.coron@uni.lu Abstract. Masking with random values is an effective countermeasure against
More informationProblem Set 2. Assigned: Mon. November. 23, 2015
Pseudorandomness Prof. Salil Vadhan Problem Set 2 Assigned: Mon. November. 23, 2015 ChiNing Chou Index Problem Progress 1 SchwartzZippel lemma 1/1 2 Robustness of the model 1/1 3 Zero error versus 1sided
More informationENGG 1203 Tutorial_9  Review. Boolean Algebra. Simplifying Logic Circuits. Combinational Logic. 1. Combinational & Sequential Logic
ENGG 1203 Tutorial_9  Review Boolean Algebra 1. Combinational & Sequential Logic 2. Computer Systems 3. Electronic Circuits 4. Signals, Systems, and Control Remark : Multiple Choice Questions : ** Check
More informationFactors of Polynomials Factoring For Experts
Factors of Polynomials SUGGESTED LEARNING STRATEGIES: Shared Reading, Activating Prior Knowledge, Discussion Group, Notetaking When you factor a polynomial, you rewrite the original polynomial as a product
More informationMidterm Exam. CS 3110: Design and Analysis of Algorithms. June 20, Group 1 Group 2 Group 3
Banner ID: Name: Midterm Exam CS 3110: Design and Analysis of Algorithms June 20, 2006 Group 1 Group 2 Group 3 Question 1.1 Question 2.1 Question 3.1 Question 1.2 Question 2.2 Question 3.2 Question 3.3
More informationCONVOLUTION TREES AND PASCALT TRIANGLES. JOHN C. TURNER University of Waikato, Hamilton, New Zealand (Submitted December 1986) 1.
JOHN C. TURNER University of Waikato, Hamilton, New Zealand (Submitted December 986). INTRODUCTION Pascal (666) made extensive use of the famous arithmetical triangle which now bears his name. He wrote
More informationA Logically Complete Reasoning Maintenance System Based on a Logical Constraint Solver
A Logically Complete Reasoning Maintenance System Based on a Logical Constraint Solver J.C. Madre and O. Coudert Bull Corporate Research Center Rue Jean Jaurès 78340 Les Clayessousbois FRANCE Abstract
More informationMotivation for introducing probabilities
for introducing probabilities Reaching the goals is often not sufficient: it is important that the expected costs do not outweigh the benefit of reaching the goals. 1 Objective: maximize benefits  costs.
More informationx (2) k even h n=(n) + (n+% x(6) X(3), x (5) 4 x(4) x(), x (2), Decomposition of an Npoint DFT into 2 N/2point DFT's.
COMPUTATION OF DISCRETE FOURIER TRANSFORM  PART 2 1. Lecture 1949 minutes k even n.o h n=(n) + (n+% x (2), x (2) x(4) x(6) Decomposition of an Npoint DFT into 2 N/2point DFT's. X(3), x (5) 4 x(),
More informationSATSolving: From Davis Putnam to Zchaff and Beyond Day 3: Recent Developments. Lintao Zhang
SATSolving: From Davis Putnam to Zchaff and Beyond Day 3: Recent Developments Requirements for SAT solvers in the Real World Fast & Robust Given a problem instance, we want to solve it quickly Reliable
More informationRealization Plans for Extensive Form Games without Perfect Recall
Realization Plans for Extensive Form Games without Perfect Recall Richard E. Stearns Department of Computer Science University at Albany  SUNY Albany, NY 12222 April 13, 2015 Abstract Given a game in
More informationSimpler Functions for Decompositions
Simpler Functions or Decompositions Bernd Steinbach Freiberg University o Mining and Technology, Institute o Computer Science, D09596 Freiberg, Germany Abstract. This paper deals with the synthesis o
More information9. PSPACE 9. PSPACE. PSPACE complexity class quantified satisfiability planning problem PSPACEcomplete
Geography game Geography. Alice names capital city c of country she is in. Bob names a capital city c' that starts with the letter on which c ends. Alice and Bob repeat this game until one player is unable
More informationIntroduction to the Tensor Train Decomposition and Its Applications in Machine Learning
Introduction to the Tensor Train Decomposition and Its Applications in Machine Learning Anton Rodomanov Higher School of Economics, Russia Bayesian methods research group (http://bayesgroup.ru) 14 March
More informationAutomataTheoretic LTL ModelChecking
AutomataTheoretic LTL ModelChecking Arie Gurfinkel arie@cmu.edu SEI/CMU AutomataTheoretic LTL ModelChecking p.1 LTL  Linear Time Logic (Pn 77) Determines Patterns on Infinite Traces Atomic Propositions
More information1. Group Theory Permutations.
1.1. Permutations. 1. Group Theory Problem 1.1. Let G be a subgroup of S n of index 2. Show that G = A n. Problem 1.2. Find two elements of S 7 that have the same order but are not conjugate. Let π S 7
More informationLecture 7: The Subgraph Isomorphism Problem
CSC2429, MAT1304: Circuit Complexity October 25, 2016 Lecture 7: The Subgraph Isomorphism Problem Instructor: Benjamin Rossman 1 The Problem SUB(G) Convention 1 (Graphs). Graphs are finite simple graphs
More informationIntroduction to LowDensity Parity Check Codes. Brian Kurkoski
Introduction to LowDensity Parity Check Codes Brian Kurkoski kurkoski@ice.uec.ac.jp Outline: Low Density Parity Check Codes Review block codes History Low Density Parity Check Codes Gallager s LDPC code
More informationFinding and Counting Given Length Cycles 1. multiplication. Even cycles in undirected graphs can be found even faster. A C 4k 2 in an undirected
Algorithmica (1997 17: 09 3 Algorithmica 1997 SpringerVerlag New York Inc. Finding and Counting Given Length Cycles 1 N. Alon, R. Yuster, and U. Zwick Abstract. We present an assortment of methods for
More information1. [10 marks] Consider the following two algorithms that find the two largest elements in an array A[1..n], where n >= 2.
CSC 6 H5S Homework Assignment # 1 Spring 010 Worth: 11% Due: Monday February 1 (at class) For each question, please write up detailed answers carefully. Make sure that you use notation and terminology
More informationIntroduction to Algorithms
Lecture 1 Introduction to Algorithms 1.1 Overview The purpose of this lecture is to give a brief overview of the topic of Algorithms and the kind of thinking it involves: why we focus on the subjects that
More information9. PSPACE. PSPACE complexity class quantified satisfiability planning problem PSPACEcomplete
9. PSPACE PSPACE complexity class quantified satisfiability planning problem PSPACEcomplete Lecture slides by Kevin Wayne Copyright 2005 PearsonAddison Wesley Copyright 2013 Kevin Wayne http://www.cs.princeton.edu/~wayne/kleinbergtardos
More informationA Collection of Problems in Propositional Logic
A Collection of Problems in Propositional Logic Hans Kleine Büning SS 2016 Problem 1: SAT (respectively SAT) Instance: A propositional formula α (for SAT in CNF). Question: Is α satisfiable? The problems
More informationChap 2. Combinational Logic Circuits
Overview 2 Chap 2. Combinational Logic Circuits Spring 24 Part Gate Circuits and Boolean Equations Binary Logic and Gates Boolean Algebra Standard Forms Part 2 Circuit Optimization TwoLevel Optimization
More informationClassification and Regression Trees
Classification and Regression Trees Ryan P Adams So far, we have primarily examined linear classifiers and regressors, and considered several different ways to train them When we ve found the linearity
More informationAn instantaneous code (prefix code, tree code) with the codeword lengths l 1,..., l N exists if and only if. 2 l i. i=1
Kraft s inequality An instantaneous code (prefix code, tree code) with the codeword lengths l 1,..., l N exists if and only if N 2 l i 1 Proof: Suppose that we have a tree code. Let l max = max{l 1,...,
More informationFundamentals of the DFT (fft) Algorithms
Fundamentals of the DFT (fft) Algorithms D. Sundararajan November 6, 9 Contents 1 The PM DIF DFT Algorithm 1.1 Halfwave symmetry of periodic waveforms.............. 1. The DFT definition and the halfwave
More informationSimple Neural Nets for Pattern Classification: McCullochPitts Threshold Logic CS 5870
Simple Neural Nets for Pattern Classification: McCullochPitts Threshold Logic CS 5870 Jugal Kalita University of Colorado Colorado Springs Fall 2014 Logic Gates and Boolean Algebra Logic gates are used
More informationALGEBRA 2/MATH 3 COURSE 1
ALGEBRA 2/MATH 3 COURSE 1 TABLE OF CONTENTS NUMBER AND QUANTITY 6 THE REAL NUMBER SYSTEM (N.RN) 6 EXTEND THE PROPERTIES OF EXPONENTS TO RATIONAL EXPONENTS. (N.RN.12) 6 Expectations for Learning 6 Content
More informationSample Spaces, Random Variables
Sample Spaces, Random Variables Moulinath Banerjee University of Michigan August 3, 22 Probabilities In talking about probabilities, the fundamental object is Ω, the sample space. (elements) in Ω are denoted
More informationUnderstanding the log expansions in quantum field theory combinatorially
Understanding the log expansions in quantum field theory combinatorially Karen Yeats CCC and BCCD, February 5, 2016 Augmented generating functions Take a combinatorial class C. Build a generating function
More informationLinear Cofactor Relationships in Boolean Functions
1 Linear Cofactor Relationships in Boolean Functions Jin S. Zhang 1 Malgorzata ChrzanowskaJeske 1 Alan Mishchenko 2 Jerry R. Burch 3 1 Department of ECE, Portland State University, Portland, OR 2 Department
More informationBoolean Algebra. Digital Logic Appendix A. Postulates, Identities in Boolean Algebra How can I manipulate expressions?
Digital Logic Appendix A Gates Combinatorial Circuits Sequential Circuits Other operations NAND A NAND B = NOT ( A ANDB) = AB NOR A NOR B = NOT ( A ORB) = A + B Truth tables What is the result of the operation
More informationComputer Architecture. ESE 345 Computer Architecture. Design Process. CA: Design process
Computer Architecture ESE 345 Computer Architecture Design Process 1 The Design Process "To Design Is To Represent" Design activity yields description/representation of an object  Traditional craftsman
More informationComputer Science. Questions for discussion Part II. Computer Science COMPUTER SCIENCE. Section 4.2.
COMPUTER SCIENCE S E D G E W I C K / W A Y N E PA R T I I : A L G O R I T H M S, T H E O R Y, A N D M A C H I N E S Computer Science Computer Science An Interdisciplinary Approach Section 4.2 ROBERT SEDGEWICK
More information