Question

Can we establish a useful theory and collection of design patterns for lightweight checking?

Summary

For many problems it is easier to check if an answer is correct than to compute an answer (e.g. multiplying a set of numbers together is easier than factoring, polynomial evaluation is easier than root finding, validating a proposed satisfying assignment is easier than finding a satisfying assignment). Such checks can be used to guard the correctness of a computation instead of brute force replicated computation. While there are numerous, useful examples where this is true, it is not clear when we can find such lightweight checks or how to do so.

Subquestions

Relevant Scenarios

Workshop Materials

Existing Work

Comments

Questions/Q4 (last edited 2009-03-31 18:08:23 by NikilMehta)