Abstract
In this paper we show how to construct efficient checkers for programs that supposedly compute properties of polynomials. The properties we consider are roots, norms, and other analytic/algebraic functions of polynomials. In our model, both the program II and the polynomial p are available to the checker each as a black box. We show how to check programs that compute a specific root (e.g., the largest) or a subset of roots of the given polynomial.
The checkers, in addition to never computing the root(s) themselves, strive to minimize both the running time (preferably o(deg2 p)) and the number of black box evaluations of p (preferably o(degp)). We obtain deterministic checkers when a separation bound between the roots is known and probabilistic checkers when the roots can be arbitrarily close. We then extend the checkers to handle the situations when the program II returns an approximation to the root and when the evaluation of the polynomial p is approximate. Our results translate into efficient checkers for matrix spectra computations both in the exact and approximate settings, operating in the library model of [BLR93]. Next we show that the usual characterization of norms using the triangle inequality is not suited for self-testing in the exact case, but surprisingly, could be used in the approximate case.
Our results are complementary to most of the existing results on testing polynomials. The testers in the latter have the goal of determining whether a program computes a polynomial of given degree, whereas we are interested in checking the properties of a given polynomial.
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
This work was done while the first, second, and fourth authors were visiting Sandia National Labs. The second and fourth authors are also supported by the NSF Career Award CCR-9624552, the Alfred P. Sloan Research Award, and the NSF grant DMI-91157199.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
S. Ar, M. Blum, B. Codenotti, and P. Gemmell. Checking approximate computations over the reals. Proc. 25th STOC, pp. 786–795, 1993.
S. Arora, C. Lund, R. Motwani, M. Sudan, and M. Szegedy. Proof verification and hardness of approximation problems. Proc. 33rd FOCS, pp. 14–23, 1992.
S. Arora and S. Safra. Probabilistic checking of proofs: A new characterization of NP. Proc. 33rd FOCS, pp. 2–13, 1992.
M. Blum. Designing programs to check their work. TR 88-009, ICSI, 1988.
M. Blum and S. Kannan. Program correctness checking ... and the design of programs that check their work. Proc. 21st STOC, pp. 86–97, 1989.
M. Blum, M. Luby, and R. Rubinfeld. Self-testing/correcting with applications to numerical problems. JCSS, 47(3):549–595, 1993.
B. Buchberger, G.E. Collins, and R. Loos. Computer Algebra — Symbolic and Algebraic Computation. Springer-Verlag, 1982.
J.B. Conway. Functions of One Complex Variable. Springer-Verlag, 1978.
F. Ergün. Testing multivariate linear functions: Overcoming the generator bottleneck. Proc. 27th STOC, pp. 407–416, 1995.
R. Freivalds. Fast probabilistic algorithms. Proc. 8th MFCS, LNCS 74, pp. 57–69, 1979.
F. Ergün, S. Ravi Kumar, and R. Rubinfeld. Approximate checking of polynomials and functional equations. Proc. 37th FOCS, To appear.
P. Gemmell, R. Lipton, R. Rubinfeld, M. Sudan, and A. Wigderson. Self-testing/correcting for polynomials and for approximate functions. Proc. 23rd STOC, pp. 32–42, 1991.
O. Goldreich, S. Goldwasser, and D. Ron. Property testing and its connection to learning and approximation. Proc. 37th FOCS, pp. 339–348, 1996.
G.H. Golub and C. Van Loan. Matrix Computations. Johns Hopkins U. Press, 1989.
M.A. Jenkins and J.F. Traub. Principles for testing polynomial zero-finding programs. ACM Trans. on Mathematical Software, 1:26–34, 1975.
S. Kannan. Program Result Checking with Applications. PhD thesis, U. of California at Berkeley, 1990.
R. Lipton. New directions in testing. Proc. DIMACS Workshop on Distributed Computing and Cryptography, pp. 191–202,1991.
M. Marden. Geometry of Polynomials. AMS, 1966.
W. H. Press, S. A. Teukolsky, W. T. Vetterling, and B. P. Flannery. Numerical Recipes in C. Cambridge U. Press, 1992.
R. Rubinfeld and M. Sudan. Robust characterizations of polynomials and their applications to program testing. SICOMP, 25(2):252–271, 1996.
J. H. Wilkinson. The Algebraic Eigenvalue Problem. Clarendon Press, 1966.
R.E. Zippel. Effective Polynomial Computation. Kluwer Academic Press, 1993.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Codenotti, B., Ergün, F., Gemmell, P., Kumar, S.R. (1997). Checking properties of polynomials. In: Degano, P., Gorrieri, R., Marchetti-Spaccamela, A. (eds) Automata, Languages and Programming. ICALP 1997. Lecture Notes in Computer Science, vol 1256. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-63165-8_178
Download citation
DOI: https://doi.org/10.1007/3-540-63165-8_178
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-63165-1
Online ISBN: 978-3-540-69194-5
eBook Packages: Springer Book Archive