At the patch validation step, automatic bug-fixing techniques rely on either formal specifications or a test suite to validate generated candidate patches.
Another way to validate candidate patch is to verify the patched program against formal specifications which specify the correct behavior of the program [REF] [REF].