1 On approximating the number of relevant variables in a function Dana Ron & Gilad Tsur Tel-Aviv University
2 Computing num of relevant variables Consider f : {0,1} n {0,1} A variable x i is relevant w.r.t. f if exists assignment y 1 …y n {0,1} n s.t. f(y 1 …y i …y n ) f(y 1 … y i …y n ) Denote num of relevant variables by r(f). f y f(y) Given query access to f: Computing r(f) exactly may require exp(n) many queries (e.g. hard to distinguish between all-0 function (r(f)=0) and random function that gives value 1 to a single point (r(f)=n) ) 0 0 f(y)=1
3 Relaxed notions One natural relaxation: Compute value r’ s.t. r(f)/B ≤ r’ ≤ B r(f). As previous example shows, requires exp(n) queries. Another relaxation suggested by Property Testing (PT): Given integer k and 0 < < 1, distinguish (w.h.p) between: f has at most k relevant variables (is a k-junta) f is -far from every k-junta (i.e. must modify f on more than -fraction of domain to get k-junta) Query complexity of testing k-juntas: O(k log k) [Blais] and (k) [Chockler, Gutfreund] With high constant prob
4 Relaxed notions Question: Go below Õ(k) if combine two relaxations? Given integer k and 0 < , < 1, distinguish between: f is a k-junta f is -far from every (1+ )k-junta Question raised in [Fischer,Kindler,Ron,Safra,Samorodnitsky] recently considered in [Blais,Brody,Matulef]: Using their (cool) communication complexity technique, give l.b. ( min{(k/t) 2,k} ) for distinguishing between k-juntas and - far from (k+t)-juntas (for constant ). In our (multiplicative) formulation: cannot go below linear in k for = O(1/k 1/2 ) What about larger , in particular constant (e.g. 1)?
5 Relaxed notions – our results (I) Thm 1. Distinguishing between: f is a k-junta and f is -far from every (1+ )k-junta requires (k/log k) queries for constant and . Thm 2. Distinguishing between: f is a k-junta and f is -far from every (1+ )k-junta can be done by performing O(k -1 -2 log(1/ ) ) queries
6 Relaxed notions – our results (II) Thm 3. For f that is linear, distinguishing between: f has at most k relevant vars and f has more than (1+ )k vars can be done by performing O(log(1/ )/ 2 ) queries. Given that relaxed PT (const ) is not much easier than standard PT ( =0), consider another relaxation: Compute (approx) num of variables for restricted classes of function. In particular linear functions and, more generally, degree-d polynomials (over GF(2) n ). For linear functions: distinguishing between at most k relevant vars and more than k+1: (min{k,n-k}) [BBM]
7 Relaxed notions – our results (II) Thm 5. For d < log(k) and const , distinguishing between: f is a degree-d poly with k relevant variables and f is -far from every degree-d poly with 2k variables requires (2 d /d) Is exp(d) necessary (for d < log(k) )? Thm 4. For f that is degree-d poly, distinguishing between: f has at most k relevant vars and f has more than (1+ )k vars can be done by performing O(2 d log(1/ )/ 2 ) queries.
8 Upper Bounds Thm 3. For f that is linear, distinguishing between: f has at most k relevant vars and f has more than (1+ )k vars can be done by performing O(log(1/ )/ 2 ) queries. Algorithm constructs set(s) S of vars by selecting each var (independently) w.p. 1/2k. x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x 10 Observation 1: If f has >(1+ )k relevant vars then prob. S contains some relevant var is significantly larger than if f has k relevant vars (by additive term of ( )) Observation 2: Can distinguish between “empty” S and “non-empty” S (for linear f) by performing const num of queries: Compare value of f on pairs of assignments that differ only on S (random assignments to S) f( ) vs f( ) (e.g., f(x)=x 5 +x 8 will show difference)
9 Upper Bounds Thm 4. For f that is degree-d poly, distinguishing between: f has at most k relevant vars and f has more than (1+ )k vars can be done by performing O(2 d log(1/ )/ 2 ) queries. Same as for linear functions except that “test for relevant variables” uses O(2 d ) queries (influence of each variable is at least 2 -d ) Thm 2. Distinguishing between: f is a k-junta and f is -far from every (1+ )k-junta can be done by performing O((k/ )( log(1/ )/ 2 ) )queries. Same as for linear functions except that “test for relevant variables” uses O(k/ ) queries. Analysis more subtle since need to lower bound influence of sets of variables.
10 Lower Bounds Proof by reduction from Distinct Elements Problem: Given query access to string s of length t, approximate num of distinct elements in s (denoted d(s)) [Valiant&Valiant] prove l.b. of (t/log t) on distinguishing btwn ≤ t/16 and >t/2 distinct elements. Will use to give l.b. of (k/log k) on distinguishing btwn k-junta and (1)-far from 2k-junta. Show for k=n/8 (extends to any k by padding), and use t=n. Thm 1. Distinguishing between: f is a k-junta and f is -far from every (1+ )k-junta requires (k/log k) queries for constant and .
11 The Reduction Given string s=s[0],s[1],…,s[n-1] with d(s) ≤ n- ℓ distinct elements in { ℓ +1,…,n}. Define f s by f s (y) = f(j,y’) = y s[j] Example: s = f s ( ) = Claim: (1) f s is a (d(s)+log(n))-junta. (2) f s is (1)-far from every (d(s)/2)-junta (d(s)= (n)) (3) A query to f s can be answered by performing a single query to s. Let ℓ = log(n). Think of y {0,1} n = {0,1} ℓ x {0,1} n- ℓ as y [n] x {0,1} n- ℓ so y=(j,y’) (e.g = (2,01) ) {0,…,n-1}
12 Lower Bounds Claim: (1) f s is a (d(s)+log(n))-junta. (2) f s is (1)-far from every (d(s)/2)-junta (d(s)= (n)) (3) A query to f s can be answered by performing a single query to s. Combining claim with [VV]’s l.b., we get Thm. 1 (for k= (n)). Thm 1. Distinguishing between: f is a k-junta and f is -far from every (1+ )k-junta requires (k/log k) queries for constant and . Thm 5. For d < log(k) and const , distinguishing between: f is a degree-d poly with k relevant variables and f is -far from every degree-d poly with 2k variables requires (2 d /d) Proof of l.b. for degree-d polynomials: also applies reduction from DE but takes care that functions be degree-d polynomials.
13 Summary Consider relaxed notions of computing number of relevant variables For “multiplicative relaxation” of PT show that can do a little better than “standard” PT, but cannot do much better. For restricted function classes: linear functions and degree-d polynomials can do much better. (For monotone functions, cannot). What about other classes of functions?
14 Thanks