Working with constraints #112
Replies: 1 comment 7 replies
-
|
Hi Simone, it looks like the assertion of p2/2 is not well-formed. We do not and compile-time checking works as expected: However, I see from your message that it seems that the polyhedra If that does not work, please let us know what system you're working on Best, |
Beta Was this translation helpful? Give feedback.

Uh oh!
There was an error while loading. Please reload this page.
-
Hello, I am trying to figure out how to perform verification of assertions in presence of linear constraints.
Consider the following simple piece of code:
There are two assumptions: (1) when p1 is called, X is in [5,10], and, (2) when p2 is called and returns, Y = X+3. The first assumption uses an 'entry' assertion, while the second assumption uses a 'trust' status.
I would expect this information sufficient to prove that, when p1 returns, Y is in [8,13].
However, the output puzzles me.
First, towards the beginning, the output reports:
I have installed the latest full CiaoPP version, and even the Parma Polyhedra library, so I do not understand the reason for the warning. Note that the warning message appears also when analyzing the above code in the Ciao Playground.
Second, the outcome of the analysis is:
The tool is not able to prove the 'check calls' assertion; nothing changes if the two 'use_module' predicates are commented away.
Can you please help me understand what I am getting wrong and how to make this example work?
Thanks,
Simone
Beta Was this translation helpful? Give feedback.
All reactions