Repair of Boolean Programs with an Application to C
Repair of Boolean Programs with an Application to C
复制标题
应用 C 语言修复布尔程序
DOI:
10.1007/11817963_33
复制
发表时间:
2006
期刊:
影响因子:
--
通讯作者:
B. Cook
中科院分区:
文献类型:
--
作者:
Andreas Griesmayer;R. Bloem;B. Cook
We show how to find and fix faults in Boolean programs by extending the program to a game. In the game, the protagonist can select an alternative implementation for an incorrect statement. If the protagonist can do so successfully using a memoryless strategy that does not depend on the stack contents, we have found a correction for the Boolean program. We present a symbolic algorithm that localizes possibly faulty statements and provides corrections.
If the Boolean program is an abstraction of a C program, the repair for the Boolean program suggests a repair for the original C program. This yields a correct but incomplete approach to repairing C programs. We have applied this approach to Boolean programs that are produced as abstractions by SLAM and have thus successfully patched several faulty Windows device drivers.