190 likes | 322 Views
Proclaiming Dictators and Juntas or Testing Boolean Formulae. Michal Parnas Dana Ron Alex Samorodnitsky. 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);
E N D
Proclaiming Dictators and JuntasorTesting Boolean Formulae Michal Parnas Dana Ron Alex Samorodnitsky
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) - mingF(Pr[f(x)g(x)]) f x f(x) If fF should accept with probability 2/3 If dist(f,F) > should reject with probability 2/3
In this work: We consider “The most basic” function classes: • Singletons: • Monomials: • DNF:
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.
Previous Work on Property Testing Properties of functions: • Initially defined by Rubinfeld and Sudan in the context of Program Testing. Tested algebraic propertiesof functions: low-degree polynomials. • Other work on testing algebraic properties: [BLR,R,EKKRV...]. • Non-algebraic properties: Monotonicity[GGLRS,DGLRSS,B,FN]. • Properties of other objects: • Main focus: Graph properties:[GGR,GR,AK,AFKS,BR,PR,CS...] • Growing body of work deals with properties ofstrings [AKNS,N,PRR], sets of points [PR], geometric objects[CSZ], distributions [BFRW], and more.
Our Results • Test whether f is a singleton using queries. • Test whether f is a monomial using queries. • Test whether f is a monotoneDNF with at most tterms using queries. Common theme:no dependence in query complexity on size of input, n, and polynomial dependence on distance parameter, e.
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 e and t ), and different algorithmic approach.
Singletons satisfy: (1)(2) Testing (Monotone) Singletons 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).
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. e) using algorithm of [BLR] . (2) Uniformly select constant number of pairs x,y and check whether any is a violating pair (i.e.: ). Testing Singletons II - Parity Testing
Testing Singletons III - Self Correcting This “almost works”: Iffis singleton - always accepted. If f is e-far from parity - rejected w.h.p. But if f is e-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.ginstead of f ... Use Self-Corrector of [BLR] to “fix” f into parity function(g), and then test violations on self-corrected version.
Testing Singletons IIII - The Algorithm Final Algorithm for Testing Singletons:(1) Test whether f is a parity function with dist. par. e 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,xy). (3) Verify that Self-Cor( ) = 1 .
Testing (Monotone) Monomials Monomials satisfy: (1) for some intk(2) Here too use some additional structure: If f is a monomial, then F1={x: f(x)=1} is an affine subspace (i.e., exist linear subspace V and y{0,1}n s.t. F1=Vy). In addition to checking conditions (1) and (2), algorithm tests whether F1 is an affine subspace. (How do we test affinity? Why does this help us? )
Fact:H is an affine subspace i.f.f. The Affinity Test: Repeat O(1/e2) times: Uniformly select x,yF1, z {0,1}n, verify that ( implies ) Testing Monomials II - Affinity Testing
Lemma2 (implications of test):If f is close to function g s.t. G1=[g(x)=1] is an affine subspace but g is not a monomial then is large. Testing Monomials III - Affinity Lemmas Lemma1 (correctness of affinity test):If f is monomial then affinity test always passes. If f is far from every function g s.t. G1=[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. G1=[g(x)=1] is an affine subspace (so may pass affinity test)?
Testing Monomials IIII - The Algorithm Algorithm for Testing Monomials:(1) Check that Pr[f(x)=1] is close to 2-k for some integerk. (2) Test whether F1={x: f(x)=1} is an affine subspace:Repeat O(1/e2) times: Uniformly select x,yF1, z {0,1}n, verify that (3) Repeat O(1/e) times: Uniformly select xF1, y{0,1}n check whether
Testing Monotone DNF Basic idea: Reduce testing DNF to testing monomials. If fis a t-term DNF, then fis the disjunction (“or”) oftmonomialsf1,…,ft. High Level Description of Algorithm: Works in (at most t) iterations. In i’th iteration finds string xithat can be used to (implicitly) define function gi. Tests whether each gi is a monotone monomial.
Testing Monotone DNF II Can Show:If fis monotone t-term DNF then, w.h.p. all gi’s are monotone monomials. If fis far from monotone t-term DNF then, at least one gi is far from monotone monomials (or don’t finish after t iterations). What are xi’s and how are the gi’s defined? If fis DNF then xi’s are “single-term representatives”. That is, each satisfies a single term (monomial) fiin f. Define gi(y)=1i.f.f.f(x)=1andf(xiy)=1
Testing Monotone DNF III - Finding Single-Term Rep’s Basic Idea: Suppose fis DNF. For x in F1 let S(x) denote subset of (indices of) terms satisfied by x. (Note that single-term-rep equiv to S(x) .)Consider x,yin F1. Then S(xy)=S(x)S(y). Furthermore, for fixed x, w.h.p. over random yin F1, |S(xy)|(3/4)|S(x)|. On the other hand, can bound probability that |S(xy)|=0. Hence, if we start from some x in F1 (s.t. S(x) contains term that is not yet represented) can obtain newsingle-term-rep (i.e., x’ s.t. S(x’)=1)w.h.p. in O(log t) steps.
Further Research • Are parity/affinity tests necessary for singletons/monomials? • Can (cubic) dependence on 1/ein 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?