ASTREE
| A static analyzer analyzes reactive, critical, real-time programs written in the
C programming language and looks for runtime errors. |
Abstract Interpretation in a Nutshell
| This introduction to static analysis by abstract interpretation has the objective
of being simple, intuitive and informal. More technical introductions as ... |
double-error.c float-error.c boolean.c filter.c float.c
| double-error.c · float-error.c · boolean.c ... |
filter.c */ typedef enum {FALSE = 0, TRUE = 1} BOOLEAN; BOOLEAN ...
| /* filter.c */ typedef enum {FALSE = 0, TRUE = 1} BOOLEAN; BOOLEAN INIT; float
P, X; void filter () { static float E[2], S[2]; if (INIT) { S[0] = X; P = X; ... |
boolean.c */ typedef enum {FALSE = 0, TRUE = 1} BOOLEAN; BOOLEAN B ...
| /* boolean.c */ typedef enum {FALSE = 0, TRUE = 1} BOOLEAN; BOOLEAN B; void
main () { unsigned int X, Y; while (1) { B = (X == 0); if (! ... |
float.c */ void main () { float x,y,z; if ((x < -1.0e38) || (x ...
| /* float.c */ void main () { float x,y,z; if ((x < -1.0e38) || (x > 1.0e38))
return; while (1) { y = x+1.0e21; z = x-1.0e21; x = yz; } } |
double-error.c */ int main () { double x; float y, z, r; /* x ...
| /* double-error.c */ int main () { double x; float y, z, r; /* x =
ldexp(1.,50)+ldexp(1.,26); */ x = 1125899973951488.0; y = x + 1; z = x - 1; r = y - z; ... |
float-error-fc */ int main () { float x, y, z, r; x = 1.000000019e ...
| /* float-error-fc */ int main () { float x, y, z, r; x = 1.000000019e+38; y = x
+ 1.0e21; z = x - 1.0e21; r = y - z; printf("%f\n", r); } |
Index of /examples
| Parent Directory 25-Jun-2004 17:38 - float.c 25-Feb-2004 14:11 1k float-error.c
25-Feb-2004 14:11 1k filter.c 25-Feb-2004 14:11 1k double-error.c ... |