symtransaction and its interacting transactions.
We adapted the Frama-C source for our work. If we analyze a
transaction with the original Frama-C, the PDG plugin would analyze
only the executable branches depending on the initial state,
while we would like to analyze all possible paths independent of
the initial state as these paths may be exercised in some iteration.
In our modified version, the plugin takes all branches at a branch instruction
to cover all paths of the transaction code. We now briefly
discuss the specific analyses done using PDG.