, Volume 74, Issue 3, pp 1055–1081

Testing Lipschitz Functions on Hypergrid Domains


DOI: 10.1007/s00453-015-9984-y

Cite this article as:
Awasthi, P., Jha, M., Molinaro, M. et al. Algorithmica (2016) 74: 1055. doi:10.1007/s00453-015-9984-y


A function \(f(x_1, \ldots , x_d)\), where each input is an integer from 1 to \(n\) and output is a real number, is Lipschitz if changing one of the inputs by 1 changes the output by at most 1. In other words, Lipschitz functions are not very sensitive to small changes in the input. Our main result is an efficient tester for the Lipschitz property of functions \(f: [n]^d \rightarrow \delta {\mathbb {Z}}\), where \(\delta \in (0,1]\) and \(\delta {\mathbb {Z}}\) is the set of integer multiples of \(\delta \). A property tester is given an oracle access to a function \(f\) and a proximity parameter \(\epsilon \), and it has to distinguish, with high probability, functions that have the property from functions that differ on at least an \(\epsilon \) fraction of values from every function with the property. The Lipschitz property was first studied by Jha and Raskhodnikova (FOCS’11) who motivated it by applications to data privacy and program verification. They presented efficient testers for the Lipschitz property of functions on the domains \(\{0,1\}^d\) and \([n]\). Our tester for functions on the more general domain \([n]^d\) runs in time \(O(d^{1.5} n\log n)\) for constant \(\epsilon \) and \(\delta \). The main tool in the analysis of our tester is a smoothing procedure that makes a function Lipschitz by modifying it at a few points. Its analysis is already nontrivial for the 1-dimensional version, which we call Bubble Smooth, in analogy to Bubble Sort. In one step, Bubble Smooth modifies two values that violate the Lipschitz property, namely, differ by more than 1, by transferring \(\delta \) units from the larger to the smaller. We define a transfer graph to keep track of the transfers, and use it to show that the \(\ell _1\) distance between \(f\) and BubbleSmooth\((f)\) is at most twice the \(\ell _1\) distance from \(f\) to the nearest Lipschitz function. Bubble Smooth has several other important properties that allow us to obtain a dimension reduction, i.e., a reduction from testing functions on multidimensional domains to testing functions on one-dimensional domains. Our dimension reduction incurs only a small multiplicative overhead in the running time and thus avoids the exponential dependence on the dimension.


Lipschitz functions Property testing Dimension reduction  Smoothing operator 

Copyright information

© Springer Science+Business Media New York 2015

Authors and Affiliations

  1. 1.Carnegie Mellon UniversityPittsburghUSA
  2. 2.Pennsylvania State UniversityUniversity ParkUSA