heptagon/compiler/heptagon
Gwenaël Delaval 63e090633c Corrected bug in causality analysis
The following node was accepted by the causality analysis:

node m(x:int) = (y,z:int)
let
    automaton
    state A
    do
      y = x + z;
      z = x + 1;
    until x = 3 then B
    state B
    do
      y = x + 3;
      z = y * x;
    until x = 10 then A
    end
tel

Each state is indeed causal, but once the automaton is translated to equations
(which is the systematic way in the current version), the node is not
schedulable.

Correction: all "Or" of dependency constraints translated to "And".

This constraint could be relaxed if code generation is done from Heptagon code,
before translation to minils equations.
2017-05-23 10:56:50 +02:00
..
analysis Corrected bug in causality analysis 2017-05-23 10:56:50 +02:00
ctrln Switch to non-deprecated String functions 2017-03-14 12:24:29 +01:00
main Fixed warnings & documentation comments. 2013-11-08 18:51:06 +01:00
parsing Switch to non-deprecated String functions 2017-03-14 12:24:29 +01:00
transformations Switch to non-deprecated String functions 2017-03-14 12:24:29 +01:00
_tags New tool `ctrl2ept' for translating ReaX's output functions into Heptagon 2014-10-22 17:46:05 +02:00
hept_mapfold.ml Added syntax for reachability and attractivity in contracts 2015-01-06 00:26:59 +01:00
hept_printer.ml Added syntax for reachability and attractivity in contracts 2015-01-06 00:26:59 +01:00
hept_utils.ml Fixed warnings. 2014-03-18 11:01:56 +01:00
heptagon.ml Added syntax for reachability and attractivity in contracts 2015-01-06 00:26:59 +01:00