Presentation is loading. Please wait.

Presentation is loading. Please wait.

Proclaiming Dictators and Juntas or Testing Boolean Formulae Michal Parnas Dana Ron Alex Samorodnitsky.

Similar presentations


Presentation on theme: "Proclaiming Dictators and Juntas or Testing Boolean Formulae Michal Parnas Dana Ron Alex Samorodnitsky."— Presentation transcript:

1 Proclaiming Dictators and Juntas or Testing Boolean Formulae Michal Parnas Dana Ron Alex Samorodnitsky

2 Testing Properties of Functions or: Testing membership in Function Classes f : {0,1} n -> {0,1} – Tested function; F – Class of functions (e.g. class of parity functions); dist(f,F) - min gF (Pr[f(x)g(x)]) f xf(x)f(x) If fF should accept with probability  2/3 If dist(f,F) >  should reject with probability  2/3

3 In this work: We consider “The most basic” function classes: Singletons: Monomials: DNF:

4 Motivation Use testing as preliminary step to learning. That is, to decide what hypothesis class to use. Gain new understanding about function class F through Property Testing perspective.

5 Previous Work on Property Testing Initially defined by Rubinfeld and Sudan in the context of Program Testing. Tested algebraic properties of functions: low-degree polynomials. Other work on testing algebraic properties: [BLR,R,EKKRV...]. Non-algebraic properties: Monotonicity [GGLRS,DGLRSS,B,FN]. Properties of functions: Properties of other objects: Main focus: Graph properties: [GGR,GR,AK,AFKS,BR,PR,CS...] Growing body of work deals with properties of strings [AKNS,N,PRR], sets of points [PR], geometric objects [CSZ], distributions [BFRW], and more.

6 Our Results Test whether f is a singleton using queries. Test whether f is a monomial using queries. Test whether f is a monotone DNF with at most t terms using queries. Common theme: no dependence in query complexity on size of input, n, and polynomial dependence on distance parameter, .

7 Learning Boolean Formulae Basic observation: (proper) learning implies testing. Can learn singletons and monomials under uniform distribution using queries [BEHW]. Can properly learn monotone DNF with t terms and r literals using queries [A+BJT]. Main difference in our work: no dependence on n (though worse dependence on  and t ), and different algorithmic approach.

8 Testing (Monotone) Singletons Singletons satisfy: (1) (2) Natural test: check, by sampling, that conditions hold (approximately). Can analyze natural test for case that distance between function and class of singletons is not too big (bounded from 1/2).

9 Testing Singletons II - Parity Testing Observation: Singletons are a special case of parity functions (i.e., functions of the form.) Claim: Let. If then Modified algorithm: (1) Test whether f is a parity function (with dist. par.  ) using algorithm of [BLR]. (2) Uniformly select constant number of pairs x,y and check whether any is a violating pair (i.e.: ).

10 Testing Singletons III - Self Correcting Use Self-Corrector of [BLR] to “fix” f into parity function (g), and then test violations on self-corrected version. This “almost works”: If f is singleton - always accepted. If f is  -far from parity - rejected w.h.p. But if f is  -close to parity function g, then cannot simply apply claim to argue that many violating pairs w.r.t. f. If we could only test violations w.r.t. g instead of f...

11 Testing Singletons IIII - The Algorithm Final Algorithm for Testing Singletons: (1) Test whether f is a parity function with dist. par.  using algorithm of [BLR]. (2) Uniformly select constant number of pairs x,y. Verify that Self-Cor(f,x)  Self-Cor(f,y) = Self-Cor(f,xy). (3) Verify that Self-Cor( ) = 1.

12 Testing (Monotone) Monomials Monomials satisfy: (1) for some int k (2) Here too use some additional structure: In addition to checking conditions (1) and (2), algorithm tests whether F 1 is an affine subspace. (How do we test affinity? Why does this help us? ) If f is a monomial, then F 1 ={x: f(x)=1} is an affine subspace (i.e., exist linear subspace V and y{0,1} n s.t. F 1 =Vy).

13 Testing Monomials II - Affinity Testing Fact: H is an affine subspace i.f.f. The Affinity Test: Repeat O(1/  2 ) times: Uniformly select x,yF 1, z {0,1} n, verify that ( implies )

14 Testing Monomials III - Affinity Lemmas Lemma2 (implications of test): If f is close to function g s.t. G 1 =[g(x)=1] is an affine subspace but g is not a monomial then is large. Lemma1 (correctness of affinity test): If f is monomial then affinity test always passes. If f is far from every function g s.t. G 1 =[g(x)=1] is an affine subspace, then test rejects w.h.p. What if f is far from every monomial (so should be rejected) but close to a function g s.t. G 1 =[g(x)=1] is an affine subspace (so may pass affinity test)?

15 Testing Monomials IIII - The Algorithm Algorithm for Testing Monomials: (1) Check that Pr[f(x)=1] is close to 2 -k for some integer k. (2) Test whether F 1 ={x: f(x)=1} is an affine subspace: Repeat O(1/ 2 ) times: Uniformly select x,yF 1, z {0,1} n, verify that (3) Repeat O(1/  ) times: Uniformly select xF 1, y{0,1} n check whether

16 Testing Monotone DNF If f is a t-term DNF, then f is the disjunction (“or”) of t monomials f 1,…,f t. High Level Description of Algorithm: Works in (at most t) iterations. In i’th iteration finds string x i that can be used to (implicitly) define function g i. Tests whether each g i is a monotone monomial. Basic idea: Reduce testing DNF to testing monomials.

17 Testing Monotone DNF II Can Show:  If f is monotone t-term DNF then, w.h.p. all g i ’s are monotone monomials.  If f is far from monotone t-term DNF then, at least one g i is far from monotone monomials (or don’t finish after t iterations). What are x i ’s and how are the g i ’s defined? If f is DNF then x i ’s are “single-term representatives”. That is, each satisfies a single term (monomial) f i in f. Define g i (y)=1 i.f.f. f(x)=1 and f(x i y)=1

18 Testing Monotone DNF III - Finding Single-Term Rep’s Basic Idea: Suppose f is DNF. For x in F 1 let S(x) denote subset of (indices of) terms satisfied by x. (Note that single-term-rep equiv to S(x).) Consider x,y in F 1. Then S(xy)=S(x)S(y). Furthermore, for fixed x, w.h.p. over random y in F 1, |S(xy)|(3/4)|S(x)|. On the other hand, can bound probability that |S(xy)|=0. Hence, if we start from some x in F 1 (s.t. S(x) contains term that is not yet represented) can obtain new single-term-rep (i.e., x’ s.t. S(x’)=1) w.h.p. in O(log t) steps.

19 Further Research Are parity/affinity tests necessary for singletons/monomials? Can (cubic) dependence on 1/  in monomial test be improved? Is polynomial (or even linear) dependence on t (num of terms in DNF) really necessary? Can algorithm for testing monotone DNF be extended to general DNF?


Download ppt "Proclaiming Dictators and Juntas or Testing Boolean Formulae Michal Parnas Dana Ron Alex Samorodnitsky."

Similar presentations


Ads by Google