viperproject / gobra

Gobra is an automated, modular verifier for Go programs, based on the Viper verification infrastructure.
https://gobra.ethz.ch
Other
111 stars 28 forks source link

Revert "Add refute statement" #787

Closed jcp19 closed 2 weeks ago

jcp19 commented 4 weeks ago

viperproject/gobra#776 introduces the refute statements, simplifies the interface between Gobra and Viper, and fixes a few long-lasting bugs. It is a step in the right direction.

Nonetheless, I'm undoing this PR for two reasons:

While the errors in the pretty printer could be easily solved with a few hacks (in silver), the issue with the chopper is a major dealbreaker. I think the proper solution to this requires promoting termination checking from a Viper plugin to a first-class feature in Viper. Maintaining termination support as a plugin will only lead to hacky solutions.

After the Viper issues are addressed, I would be happy to remerge this PR in its entirety