Testing and reconstruction via decision trees
We study sublinear and local computation algorithms for decision trees, focusing on testing and reconstruction. Our first result is a tester that runs in poly(log s, 1/ε)· nlog n time, makes poly(log s,1/ε)·log n queries to an unknown function f, and: ∘ Accepts if f is ε-close to a size-s decision tree; ∘ Rejects if f is Ω(ε)-far from decision trees of size s^Õ((log s)^2/ε^2). Existing testers distinguish size-s decision trees from those that are ε-far from from size-s decision trees in poly(s^s,1/ε)· n time with Õ(s/ε) queries. We therefore solve an incomparable problem, but achieve doubly-exponential-in-s and exponential-in-s improvements in time and query complexities respectively. We obtain our tester by designing a reconstruction algorithm for decision trees: given query access to a function f that is close to a small decision tree, this algorithm provides fast query access to a small decision tree that is close to f. By known relationships, our results yield reconstruction algorithms for numerous other boolean function properties – Fourier degree, randomized and quantum query complexities, certificate complexity, sensitivity, etc. – which in turn yield new testers for these properties. Finally, we give a hardness result for testing whether an unknown function is ε-close-to or Ω(ε)-far-from size-s decision trees. We show that an efficient algorithm for this task would yield an efficient algorithm for properly learning decision trees, a central open problem of learning theory. It has long been known that proper learning algorithms for any class ℋ yield property testers for ℋ; this provides an example of a converse.
READ FULL TEXT