The function f : − 1 1 n − 1 1 is a k -junta if it depends on at most k of its variables. We consider the problem of tolerant testing of k -juntas, where the testing algorithm must accept any function that is -close to some k -junta and reject any function that is -far from every k -junta for some = O ( ) and k = O ( k ) .
Our first result is an algorithm that solves this problem with query complexity polynomial in k and 1 . This result is obtained via a new polynomial-time approximation algorithm for submodular function minimization (SFM) under large cardinality constraints, which holds even when only given an approximate oracle access to the function.
Our second result considers the case where k = k . We show how to obtain a smooth tradeoff between the amount of tolerance and the query complexity in this setting. Specifically, we design an algorithm that given ( 0 1 2) accepts any function that is 8 -close to some k -junta and rejects any function that is -far from every k -junta. The query complexity of the algorithm is O k log k (1 − ) k .
Finally, we show how to apply the second result to the problem of tolerant isomorphism testing between two unknown Boolean functions f and g . We give an algorithm for this problem whose query complexity only depends on the (unknown) smallest k such that either f or g is close to being a k -junta.