source: CIVL/examples/analysis/abs.c@ 050ee5d

1.23 2.0 main test-branch
Last change on this file since 050ee5d was e4cc4f5, checked in by Manchun Zheng <zmanchun@…>, 11 years ago

added more tests.

git-svn-id: svn://vsl.cis.udel.edu/civl/trunk@2349 fb995dde-84ed-4084-dfe6-e5aef3e2452c

  • Property mode set to 100644
File size: 538 bytes
Line 
1#include <stdlib.h>
2#include <civlc.cvh>
3
4$input int k;
5$input int x;
6$input int y;
7$input int z;
8$assume(x<0);
9$assume(y>0);
10$assume(k!=0);
11void main(){
12 int a = 9;
13
14 a=abs(0); // 0
15 a=abs(x); // -
16 a=abs(y); // +
17 a=abs(z); // *
18 a=abs(k);
19 a=abs(x*y*z); // *
20 a=abs(x*y*k);
21 a=abs(x*y); // -
22 $assert(x*y<=0);
23
24 a=abs(x%y); //+
25 $assert(x%y>=0);
26
27 a=abs((-x)%y); // +
28 $assert((-x)%y>=0);
29
30 a=abs(z%2-1);
31 $assert((z%2-1)<=0);
32 a=abs(z%2-2);
33 $assert((z%2-2)<0);
34}
Note: See TracBrowser for help on using the repository browser.