Skip to content

Frama-C/WP "forgets" a proven assertion

ID0001751: This issue was created automatically from Mantis Issue 1751. Further discussion may take place here.


Id Project Category View Due Date Updated
ID0001751 Frama-C Plug-in > wp public 2014-04-11 2015-03-17
Reporter jens Assigned To patrick Resolution fixed
Priority high Severity major Reproducibility always
Platform - OS - OS Version -
Product Version Frama-C Neon-20140301 Target Version - Fixed in Version Frama-C Sodium

Description :

In the following function

void strange_after_shift(unsigned int x) { unsigned int y = x & 1; //@ assert y == 0 || y == 1; //@ assert 0 <= y <= 1; }

the first assertion is discharged by Qed but the second assertion (which should also hold) is not discharged with Alt-Ergo. Moreover, when I try to prove it with Coq, then I cannot see any hypothesis that represents the first assertion.

Attachments

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information