LARA

This is an old revision of the document!


Simple Programming Language for Abstract Interpretation

Even simpler than before. We flatten expressions.

 c ::=  x=T | (if (F) c else c) | c ; c | (while (F) c)
 T ::= K | V | (V + V) | (V * V)
 F ::= (V=0) | (0 < V)
 V ::= x | y | z | ...
 K ::= 0 | 1 | 2 | ...

We represent programs as control-flow graphs, so we have 'assume' and brances instead of conditional statements.