Property-preserving data reconstruction
We initiate a new line of investigation into online property-preserving data reconstruction. Consider a dataset which is assumed to satisfy various (known) structural properties; e.g., it may consist of sorted numbers, or points on a manifold, or vectors in a polyhedral cone, or codewords from an error-correcting code. Because of noise and errors, however, an (unknown) fraction of the data is deemed unsound, i.e., in violation with the expected structural properties. Can one still query into the dataset in an online fashion and be provided data that is always sound? In other words, can one design a filter which, when given a query to any item I in the dataset, returns a sound item J that, although not necessarily in the dataset, differs from I as infrequently as possible. No preprocessing should be allowed and queries should be answered online. We consider the case of a monotone function. Specifically, the dataset encodes a function f:{1,...,n} (bar right arrow) R that is at (unknown) distance epsilon from monotone, meaning that f can-and must-be modified at epsilon n places to become monotone. Our main result is a randomized filter that can answer any query in O(log(2) n log log n) time while modifying the function f at only O(epsilon n) places. The amortized time over n function evaluations is O(log n). The filter works as stated with probability arbitrarily close to 1. We provide an alternative filter with O(log n) worst case query time and O(epsilon n log n) function modifications. For reconstructing d-dimensional monotone functions of the form f:{1,...,n}(d) (bar right arrow) R, we present a filter that takes (2(O(d))(log n)(4d-2) log log n) time per query and modifies at most O(epsilon n(d)) function values (for constant d).
sublinear algorithms monotonicity testing