• Erwan Jahier's avatar
    lurette 0.69 Fri, 19 Jul 2002 10:19:59 +0200 by jahier · 135fe2d5
    Erwan Jahier authored
    Parent-Version:      0.68
    Version-Log:
    
    wtree.ml,mli:   (deleted)
    automa.ml,mli:  (new files)
    control.ml,mli: (new files)
    
       Replace the [wtree] module by an [automata] module, that basically
       does the same job, but in a different way. Namely, it no more uses
       the [wtree] DS to use [graph]s instead.  Indeed, the product of
       wtrees introduces some problems, in particular to ensure its
       correctness wrt to the automata run concurrently. Now, everything a
       dead-simple wrt product: we simply perform a quasi-classical automata
       product (well, at least, much closer from a classical product, cf
       paper).
    
       The way loop counters are handled has also changed. Now, counters are
       handled via expressions of a simple arithmetic language that
       basically lets one initialise a variable to an exact or a random
       value (uniform or normal draw) and decrement it. Arcs are now
       labelled by a formula plus 2 expressions of that mini-language (no
       more weigth nor cpt_init stuff). The 1st expression is evaluated
       during the draw, basically performs any operations on counters, and
       returns a positive int that is used as the formula weigth. The second
       expression (a kind of post-condition) is evaluated if its arc is the
       one that has been elected to perform the step.
    
    At several locations long lines (< 80) are reindented.
    
    parse_env.ml:
       In the ima format, IfThenElseExpr becomes IfThenElseNum.
       Also, parse list more cleanly.
    
    graph.ml,mli:
        Add a function that test whether a transition is in the graph.
    
        Do not sort list of transitions anymore (what was the point?).
        Also do not sort nodes in any way.
    
    show_env_env.ml,mli:
       Abstract away nodes and arcs data types (so that I can display
       Automata graphs). rename generate_env_graph into ima_to_dot.
    
    lurette.ml:
    ima_exe.ml:
       Fix a bug where bbd table were filled by asserted non regression expr.
    
    lurette.ml:
       Fix a bug where incorrect data was sent to sim2chro (ie, the output of the
       previous step instead of the ones of the current step.
    
    env_state.ml:
    solver.ml:
    gne.ml:
       Fix a performance bug where I was storing formula indexes even if
       they were depending on inputs or pre, which is stupid as they generally
       won't be used again. In order to fix that, I introduced  new
       atomic_formula <-> indexes table to stote the ones that do not depend
       on inputs apart. It was also necassery to propogate the <<depend on pre>>
       flag inside Gne.gn_expr (which i renamed Gne.t BTW).
    
    Project-Description: Lurette
    135fe2d5
parse_env.ml 21.6 KB