Rechercher des projets européens

Testing and Correcting Programs with Applications to Codes (cortst-programs)
Date du début: 1 mai 2011, Date de fin: 21 sept. 2015 PROJET  TERMINÉ 

One of the main challenges of software engineering is verifying the correctness of software. In this proposal we focus on correctness of the code per input rather than full program verification. This methodology associates with every function to be computed a new piece of code called a checker, which given any possibly buggy program for the function and an input, “checks” whether the program on this input computes the function correctly. We further aim on correcting buggy programs using self-testers and self-correctors. A self-corrector that is given a potentially buggy program which is guaranteed to compute the function correctly on a random input, “corrects” the program on any given input. A self-tester tests whether a program is correct on a random input. The focus of the achievements in the field has been the design of efficient checkers (and self correcters/self testers) for *specific* efficiently computable functions exploiting either their algebraic or combinatorial properties. In recent works we have demonstrated relation between highly symmetric error correcting codes and testing and correcting. Moreover we managed to design checkers for functions characterized by their complexity. In light of the this new body of work we suggest to revisit the checking and correcting methodology, emphasizing a general error correcting approach and complexity theoretic approach, rather than a function specific approach.

Coordinateur

Details