Read Once Branching Programs: a model of computation used in CAD.

Slides:



Advertisements
Similar presentations
Mathematical Induction
Advertisements

Review for CS1050. Review Questions Without using truth tables, prove that  (p  q)   q is a tautology. Prove that the sum of an even integer and an.
Isolation Technique April 16, 2001 Jason Ku Tao Li.
Copyright © Cengage Learning. All rights reserved. CHAPTER 5 SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION.
Having Proofs for Incorrectness
Week 5 - Friday.  What did we talk about last time?  Sequences  Summation and production notation  Proof by induction.
The PCP theorem. Summary -Proof structure -Basic ingredients -Arithmetization -Properties of polynomials -3-SAT belongs to PCP[O(n 3 ),O(1)]
Probabilistic Complexity. Probabilistic Algorithms Def: A probabilistic Turing Machine M is a type of non- deterministic TM, where each non-deterministic.
Complexity1 Pratt’s Theorem Proved. Complexity2 Introduction So far, we’ve reduced proving PRIMES  NP to proving a number theory claim. This is our next.
Submitted by : Estrella Eisenberg Yair Kaufman Ohad Lipsky Riva Gonen Shalom.
Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms.
A Distributed Algorithm for Minimum-Weight Spanning Trees by R. G. Gallager, P.A. Humblet, and P. M. Spira ACM, Transactions on Programming Language and.
1 The PCP starting point. 2 Overview In this lecture we’ll present the Quadratic Solvability problem. In this lecture we’ll present the Quadratic Solvability.
The Polynomial Hierarchy By Moti Meir And Yitzhak Sapir Based on notes from lectures by Oded Goldreich taken by Ronen Mizrahi, and lectures by Ely Porat.
Mathematical Induction
Induction and recursion
Mathematical Maxims and Minims, 1988
Great Theoretical Ideas in Computer Science.
Quantum Computing MAS 725 Hartmut Klauck NTU TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A A A.
Chapter 7 Applications of Residues - evaluation of definite and improper integrals occurring in real analysis and applied math - finding inverse Laplace.
Section 3.3: Mathematical Induction Mathematical induction is a proof technique that can be used to prove theorems of the form:  n  Z +,P(n) We have.
Great Theoretical Ideas in Computer Science.
1 Discrete Mathematical Mathematical Induction ( الاستقراء الرياضي )
1 Section 4.4 Inductive Proof What do we believe about nonempty subsets of N? Since  N, <  is well-founded, and in fact it is linear, it follows that.
Advanced Algorithms Analysis and Design By Dr. Nazir Ahmad Zafar Dr Nazir A. Zafar Advanced Algorithms Analysis and Design.
Theory of Computational Complexity Probability and Computing Chapter Hikaru Inada Iwama and Ito lab M1.
1 Mathematical Induction An inductive proof has three parts: –Basis case –Inductive hypothesis –Inductive step Related to recursive programming.
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
More NP-Complete and NP-hard Problems
P & NP.
All-pairs Shortest paths Transitive Closure
Fixpoints and Reachability
Probabilistic Algorithms
Great Theoretical Ideas in Computer Science
Prüfer code algorithm Algorithm (Prüfer code)
Advanced Algorithms Analysis and Design
Completeness of the SLD-Resolution
Umans Complexity Theory Lectures
Decision trees Polynomial-Time
Approximate Inference
Disjunctive Normal Form
B.Sc. III Year Mr. Shrimangale G.W.
Recursively Defined Functions
Computational Molecular Biology
Chapter 5 Induction and Recursion
CS21 Decidability and Tractability
Polynomials, Secret Sharing, And Error-Correcting Codes
Hierarchy of languages
ICS 353: Design and Analysis of Algorithms
4.2 State Feedback for Multivariable Systems
Non-Deterministic Finite Automata
Great Theoretical Ideas in Computer Science
Polynomials, Secret Sharing, And Error-Correcting Codes
CS200: Algorithm Analysis
Additional NP-complete problems
CSCI-2400 Models of Computation.
MA/CSSE 474 Theory of Computation
Systems of distinct representations
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
MA/CSSE 474 Theory of Computation
Mathematical Induction
Discrete Mathematics for Computer Science
CS151 Complexity Theory Lecture 7 April 23, 2019.
Closures of Relations Epp, section 10.1,10.2 CS 202.
Instructor: Aaron Roth
Instructor: Aaron Roth
Switching Lemmas and Proof Complexity
Mathematical Induction II
From the last time: gcd(a, b) can be characterized in two different ways: It is the least positive value of ax + by where x and y range over integers.
Probabilistic Complexity
Presentation transcript:

Read Once Branching Programs: a model of computation used in CAD. x1 1 xi: query nodes x3 x2 1 1 x3 x2 1 1 Output nodes 1

What is the ROBP for OR function with 4 variables?

Represent a BP with a polynomial: the polynomial for the output node 1. p x 1 (1-x)p xp 1 x1 (1- x1) 1 x1 x1 (1- x1) x3 x2 1 p1 …. pn 1 x2(1- x1) x3 x2 1 x p1+…+pn 1 1 1

Relationship between a ROBP B and the assigned polynomial p: For any Boolean assignment to B’s variables, all polynomials assigned to its nodes evaluate to 0 or 1. Polynomials evaluating to 1 are those on the computation path for that assignment. Hence B and p agree on Boolean input. Since B is read once, we may write p as a sum of product terms: y1y2….ym, where yi is xi , (1- xi) or 1 and each term correspond a path from the start node to the output node 1. If the path doesn’t contain xi then yi =1 . Take each term of p with yi =1 and split it into xi and (1- xi). Doing this yields the same polynomial. Continue until all yi is either xi or (1- xi). The end result is an equivalent polynomial q that contains a product term for each assignment on which B evaluates to 1.

EQROBP = { <B1, B2> | B1 and B2 are equivalent ROBP }. Thm: EQROBP is in BPP. Proof: Suppose there are m variables in both ROBP’s. Transform both ROBP’s into polynomials as above. Let F be a field with at least 3m elements. D = “on input <B1, B2>: 1. Select randomly a1,…, am from F. 2. Evaluate the assigned polynomials p1 and p2 at ai’s. 3. If p1(a1,…, am ) = p2(a1,…, am ) accept; o/w reject.” If B1 and B2 are equivalent, then D always accepts, since they evaluate to 1 on exactly the same assignments. Else D rejects with a probability at least 2/3 by the following lemmas.

Lemma: For every d 0, a degree d polynomial p on a single variable x either has at most d roots, or it is a zero polynomial. Proof: By induction on d. It is obvious for d = 0, since degree-0 polynomial either has no root or is identical to zero.. Suppose it is true for d-1 and prove true for d. If p != 0 and of degree d with a root at a, then (x-a)|p and p/(x-a) is a non-zero polynomial of degree d-1 and has at most d-1 roots by induction hypothesis.

Lemma: Let F be a finite field with f elements and let p be a nonzero polynomial on the variables x1 through xm, where each variable has degree at most d. If a1 through am are selected randomly from F, then Pr[p(a1,…, am ) = 0]  md/f. Proof: By ind on m. For m=1, by the previous lemma, p has at most d roots, so the probability is at most d/f. Assume it is true for m-1 and prove for m. Represent p as p = p0+x1p1+…+x1d pd . If p(a1,…, am ) = 0, then either all pi evaluate to 0 or some p1 doesn’t evaluate to 0 and a1 is a root of the single variable poly obtained by evaluating p0 through pd on a2 through am.

p = p0+x1p1+…+x1d pd Since p is nonzero, there is a pj is nonzero. Pr[ all pi evaluate to 0 ]  Pr[ pj evaluate to 0]  (m-1)d/f, by induction hypothesis. If some pi doesn’t evaluate to 0, then on the assignment of a2 through am, p reduces to a nonzero single variable polynomial. The basis already shows that a1 is a root of such a poly with probability of at most d/f. Therefore, Pr[p(a1,…, am ) = 0]  (m-1)d/f +d/f = md/f.