DESIGNING PROGRAMS THAT CHECK THEIR WORK

被引:214
作者
BLUM, M [1 ]
KANNAN, S [1 ]
机构
[1] UNIV PENN, DEPT COMP & INFORMAT SCI, PHILADELPHIA, PA 19104 USA
关键词
ALGORITHMS; DESIGN; RELIABILITY; THEORY; VERIFICATION; INTERACTIVE PROOFS; PROBABILISTIC ALGORITHMS; PROGRAM CHECKING; PROGRAM VERIFICATION; TESTING;
D O I
10.1145/200836.200880
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 [计算机科学与技术];
摘要
A program correctness checker is an algorithm for checking the output of a computation. That is, given a program and an instance on which the program is run, the checker certifies whether the output of the program on that instance is correct. This paper defines the concept of a program checker. It designs program checkers for a few specific and carefully chosen problems in the class FP of functions computable in polynomial time. Problems in FP for which checkers are presented in this paper include Sorting, Matrix Rank and GCD. It also applies methods of modern cryptography, especially the idea of a probabilistic interactive proof, to the design of program checkers for group theoretic computations. Two structural theorems are proven here. One is a characterization of problems that can be checked. The other theorem establishes equivalence classes of problems such that whenever one problem in a class is checkable, all problems in the class are checkable.
引用
收藏
页码:269 / 291
页数:23
相关论文
共 39 条
[1]
ADLEMAN L, IN PRESS INF COMPUT
[2]
ARTHUR-MERLIN GAMES - A RANDOMIZED PROOF SYSTEM, AND A HIERARCHY OF COMPLEXITY CLASSES [J].
BABAI, L ;
MORAN, S .
JOURNAL OF COMPUTER AND SYSTEM SCIENCES, 1988, 36 (02) :254-276
[3]
BARWISE J, 1989, NOTICES AMS, V36, P7
[4]
BEAVER D, 1990, LECT NOTES COMPUT SC, V415, P37
[5]
Beigel R., 1992, Computational Complexity, V2, P1, DOI 10.1007/BF01276436
[6]
SELF-TESTING CORRECTING WITH APPLICATIONS TO NUMERICAL PROBLEMS [J].
BLUM, M ;
LUBY, M ;
RUBINFELD, R .
JOURNAL OF COMPUTER AND SYSTEM SCIENCES, 1993, 47 (03) :549-595
[7]
BLUM M, 1991, 32ND P S F COMP SAN, P90
[8]
BLUM M, 1989, 21ST P ANN ACM S THE, P86
[9]
BLUM M, 1990, 22ND P ANN ACM S THE, P73
[10]
Boyer R. S., 1981, CORRECTNESS PROBLEM