On Labor Day Weekend, the highway patrol sets up spotchecka nt random points on the freeways with the intention of deterring a large fraction of motorists from driving incorrectly, WC explore a very similar idea in the context of program checking to ascertain with minimal overhead that a program output is reasonably correct. Our model of spotchecking requires that the spot-checker must run asymptotically much faster than the combined length of the input and output, We then show that the spot-checking model can be applied to problems in a wide range of areas, including problems regarding graphs, sets, and algebra. In particular, we present spot-checkers for sorting, element distinctness, set containment, set equality, total orders, and correctness of group operations. All of our spot-checkers are very simple to state and rely on testing that the input and/or output have certain simple properties that depend on very few bits.Our sorting spot-checker runs in O(logn) time to check the correctness of the output produced by a sorting algorithm on an input consisting of n numbers. We also show that there lo an O(1) spot-checker to check a program that determines whether a given relation is close to a total order. We present a technique for testing in almost linear time whether a given operation is close to an associative cancellative operation.In this extended abstract we show the checker under the assumption that the input operation is cancellative and leave the general case for the full version of the paper. In contrast, [RaS96] show that quadratic time is necessary and sufficient to test that a given cancellative operation is associative. This method yields a very efficient tester (over small domains) for all functions satisfying associative functional equations [Acz66]. We also extend this result to test in almost linear time whether the given operation is close to a group operation.