Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 On approximating the number of relevant variables in a function Dana Ron & Gilad Tsur Tel-Aviv University.

Similar presentations


Presentation on theme: "1 On approximating the number of relevant variables in a function Dana Ron & Gilad Tsur Tel-Aviv University."— Presentation transcript:

1 1 On approximating the number of relevant variables in a function Dana Ron & Gilad Tsur Tel-Aviv University

2 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 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 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 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 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 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 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(1100011101) vs f(1000111101) (e.g., f(x)=x 5 +x 8 will show difference)

9 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 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)). 5227584737 [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 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 = 58875847 f s (011 10110) = 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. 10 01 = (2,01) ) {0,…,n-1} 01234567 1

12 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 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 14 Thanks


Download ppt "1 On approximating the number of relevant variables in a function Dana Ron & Gilad Tsur Tel-Aviv University."

Similar presentations


Ads by Google