Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision Last revision Both sides next revision | ||
sav08:simple_programming_language_for_abstract_interpretation [2008/05/07 10:37] vkuncak created |
sav08:simple_programming_language_for_abstract_interpretation [2008/05/07 10:40] vkuncak |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Simple Programming Language for Abstract Interpretation ====== | ====== 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. | ||