Results 1  10
of
26
Proof verification and hardness of approximation problems
 IN PROC. 33RD ANN. IEEE SYMP. ON FOUND. OF COMP. SCI
, 1992
"... We show that every language in NP has a probablistic verifier that checks membership proofs for it using logarithmic number of random bits and by examining a constant number of bits in the proof. If a string is in the language, then there exists a proof such that the verifier accepts with probabilit ..."
Abstract

Cited by 797 (39 self)
 Add to MetaCart
We show that every language in NP has a probablistic verifier that checks membership proofs for it using logarithmic number of random bits and by examining a constant number of bits in the proof. If a string is in the language, then there exists a proof such that the verifier accepts with probability 1 (i.e., for every choice of its random string). For strings not in the language, the verifier rejects every provided “proof " with probability at least 1/2. Our result builds upon and improves a recent result of Arora and Safra [6] whose verifiers examine a nonconstant number of bits in the proof (though this number is a very slowly growing function of the input length). As a consequence we prove that no MAX SNPhard problem has a polynomial time approximation scheme, unless NP=P. The class MAX SNP was defined by Papadimitriou and Yannakakis [82] and hard problems for this class include vertex cover, maximum satisfiability, maximum cut, metric TSP, Steiner trees and shortest superstring. We also improve upon the clique hardness results of Feige, Goldwasser, Lovász, Safra and Szegedy [42], and Arora and Safra [6] and shows that there exists a positive ɛ such that approximating the maximum clique size in an Nvertex graph to within a factor of N ɛ is NPhard.
A SubConstant ErrorProbability LowDegree Test, and a SubConstant ErrorProbability PCP Characterization of NP
 IN PROC. 29TH ACM SYMP. ON THEORY OF COMPUTING, 475484. EL PASO
, 1997
"... We introduce a new lowdegreetest, one that uses the restriction of lowdegree polynomials to planes (i.e., affine subspaces of dimension 2), rather than the restriction to lines (i.e., affine subspaces of dimension 1). We prove the new test to be of a very small errorprobability (in particular, ..."
Abstract

Cited by 324 (20 self)
 Add to MetaCart
We introduce a new lowdegreetest, one that uses the restriction of lowdegree polynomials to planes (i.e., affine subspaces of dimension 2), rather than the restriction to lines (i.e., affine subspaces of dimension 1). We prove the new test to be of a very small errorprobability (in particular, much smaller than constant). The new test enables us to prove a lowerror characterization of NP in terms of PCP. Specifically, our theorem states that, for any given ffl ? 0, membership in any NP language can be verified with O(1) accesses, each reading logarithmic number of bits, and such that the errorprobability is 2 \Gamma log 1\Gammaffl n . Our results are in fact stronger, as stated below. One application of the new characterization of NP is that approximating SETCOVER to within a logarithmic factors is NPhard. Previous analysis for lowdegreetests, as well as previous characterizations of NP in terms of PCP, have managed to achieve, with constant number of accesses, error...
Improved NonApproximability Results
, 1994
"... We indicate strong nonapproximability factors for central problems: N^{1/4} for Max Clique; N^{1/10} for Chromatic Number; and 66/65 for Max 3SAT. Underlying the Max Clique result is a proof system in... ..."
Abstract

Cited by 110 (13 self)
 Add to MetaCart
We indicate strong nonapproximability factors for central problems: N^{1/4} for Max Clique; N^{1/10} for Chromatic Number; and 66/65 for Max 3SAT. Underlying the Max Clique result is a proof system in...
Regular Languages are Testable with a Constant Number of Queries
 SIAM Journal on Computing
, 1999
"... We continue the study of combinatorial property testing, initiated by Goldreich, Goldwasser and Ron in [7]. The subject of this paper is testing regular languages. Our main result is as follows. For a regular language L 2 f0; 1g and an integer n there exists a randomized algorithm which always acc ..."
Abstract

Cited by 87 (18 self)
 Add to MetaCart
(Show Context)
We continue the study of combinatorial property testing, initiated by Goldreich, Goldwasser and Ron in [7]. The subject of this paper is testing regular languages. Our main result is as follows. For a regular language L 2 f0; 1g and an integer n there exists a randomized algorithm which always accepts a word w of length n if w 2 L, and rejects it with high probability if w has to be modified in at least n positions to create a word in L. The algorithm queries ~ O(1=) bits of w. This query complexity is shown to be optimal up to a factor polylogarithmic in 1=. We also discuss testability of more complex languages and show, in particular, that the query complexity required for testing contextfree languages cannot be bounded by any function of . The problem of testing regular languages can be viewed as a part of a very general approach, seeking to probe testability of properties defined by logical means. 1
Selftesting/correcting for polynomials and for approximate functions
 in Proceedings of the 23rd Annual Symposium on Theory of Computing (STOC
, 1991
"... The study of selftesting/correcting programs was introduced in [8] in order to allow one to use program P to compute function f without trusting that P works correctly. A selftester for f estimates the fraction of x for which P (x) = f(x); and a selfcorrector for f takes a program that is correc ..."
Abstract

Cited by 69 (14 self)
 Add to MetaCart
The study of selftesting/correcting programs was introduced in [8] in order to allow one to use program P to compute function f without trusting that P works correctly. A selftester for f estimates the fraction of x for which P (x) = f(x); and a selfcorrector for f takes a program that is correct on most inputs and turns it into a program that is correct on every input with high probability 1. Both access P only as a blackbox and in some precise way are not allowed to compute the function f. Selfcorrecting is usually easy when the function has the random selfreducibility property. One class of such functions that has this property is the class of multivariate polynomials over finite fields [4] [12]. We extend this result in two directions. First, we show that polynomials are random selfreducible over more general domains: specifically, over the rationals and over noncommutative rings. Second, we show that one can get selfcorrectors even when the program satisfies weaker conditions, i.e. when the program has more errors, or when the program behaves in a more adversarial manner by changing the function it computes between successive calls. Selftesting is a much harder task. Previously it was known how to selftest for a few special examples of functions, such as the class of linear functions. We show that one can selftest the whole class of polynomial functions over Zp for prime p.
FaultBased Testing Without the Need of Oracles
 Information and Software Technology
, 2003
"... There are two fundamental limitations in software testing, known as the reliable test set problem and the oracle problem. Faultbased testing is an attempt by Morell to alleviate the reliable test set problem. In this paper, we propose to enhance faultbased testing to alleviate the oracle problem a ..."
Abstract

Cited by 46 (16 self)
 Add to MetaCart
There are two fundamental limitations in software testing, known as the reliable test set problem and the oracle problem. Faultbased testing is an attempt by Morell to alleviate the reliable test set problem. In this paper, we propose to enhance faultbased testing to alleviate the oracle problem as well. We present an integrated method that combines metamorphic testing with faultbased testing using real and symbolic inputs.
Some Improvements to Total Degree Tests
, 1995
"... A lowdegree test is a collection of simple, local rules for checking the proximity of an arbitrary function to a lowdegree polynomial. Each rule depends on the function’s values at a small number of places. If a function satisfies many rules then it is close to a lowdegree polynomial. Lowdegree ..."
Abstract

Cited by 41 (9 self)
 Add to MetaCart
A lowdegree test is a collection of simple, local rules for checking the proximity of an arbitrary function to a lowdegree polynomial. Each rule depends on the function’s values at a small number of places. If a function satisfies many rules then it is close to a lowdegree polynomial. Lowdegree tests play an important role in the development of probabilistically checkable proofs. In this paper we present two improvements to the efficiency of lowdegree tests. Our first improvement concerns the smallest field size over which a lowdegree test can work. We show how to test that a function is a degree d polynomial over prime fields of size only d + 2. Our second improvement shows a better efficiency of the lowdegree test of [ 141 than previously known. We show concrete applications of this improvement via the notion of “locally checkable codes”. This improvement translates into better tradeoffs on the size versus probe complexity of probabilistically checkable proofs than previously known.
Highly FaultTolerant Parallel Computation (Extended Abstract)
 IN PROCEEDINGS OF THE 37TH ANNUAL IEEE CONFERENCE ON FOUNDATIONS OF COMPUTER SCIENCE
, 1996
"... We reintroduce the coded model of faulttolerant computation in which the input and output of a computational device are treated as words in an errorcorrecting code. A computational device correctly computes a function in the coded model if its input and output, once decoded, are a valid input a ..."
Abstract

Cited by 33 (0 self)
 Add to MetaCart
We reintroduce the coded model of faulttolerant computation in which the input and output of a computational device are treated as words in an errorcorrecting code. A computational device correctly computes a function in the coded model if its input and output, once decoded, are a valid input and output of the function. In the coded model, it is reasonable to hope to simulate all computational devices by devices whose size is greater by a constant factor but which are exponentially reliable even if each of their components can fail with some constant probability. We consider finegrained parallel computations in which each processor has a constant probability of producing the wrong output at each time step. We show that any parallel computation that runs for time t on w processors can be performed reliably on a faulty machine in the coded model using w log O(1) w processors ...
Checking Linked Data Structures
, 1994
"... In the program checking paradigm, the original program is run on the desired input, and its output is checked by another program called achecker. Recently, the notion of program checking has been extended from its original formulation of checking functions to checking a sequence of operations which ..."
Abstract

Cited by 27 (0 self)
 Add to MetaCart
(Show Context)
In the program checking paradigm, the original program is run on the desired input, and its output is checked by another program called achecker. Recently, the notion of program checking has been extended from its original formulation of checking functions to checking a sequence of operations which query and alter the state of an object external to the program, e.g., checking the interactions between a client and the manager (server) of a data structure. In this expanded paradigm, the checker acts as an intermediary between the client, which generates the requests, and the server, which processes them. The checker is allowed a small amount of reliable memory and may provide a probabilistic guarantee of correctness for the client. We present offline and online checkers for data structures such as linked lists, trees, and graphs. Previously, the only data structures for which such checkers existed were random access memories, stacks, and queues.
WitnessBased Cryptographic Program Checking and Robust Function Sharing
, 1996
"... We suggest a new methodology for "result checking" that enables us to extend the notion of Blum's program result checking to the online checking of cryptographic functions. In our model, the checker not only needs to be assured of the correctness of the result but the owner of the pr ..."
Abstract

Cited by 25 (4 self)
 Add to MetaCart
We suggest a new methodology for "result checking" that enables us to extend the notion of Blum's program result checking to the online checking of cryptographic functions. In our model, the checker not only needs to be assured of the correctness of the result but the owner of the program needs to be sure not to give away anything but the requested result on the (authorized) input. The existing approaches for program result checking of numerical problems often ask the program a number of extra queries (different from the actual input). In the case of cryptographic functions, this may be in contradiction with the security requirement of the program owner. Additional queries, in fact, may be used to gain unauthorized advantage (for example, imagine the implications of the online checking of a decryption device that requires the decryption of extra ciphertexts). In [Blum88], the notion of a simple checker was introduced where, for the purpose of efficiency, extra queries are not allowed...