Semantics guided filtering of combinatorial graph transformations in declarative equation-based languages

This paper concerns the use of static analysis for debugging purposes of declarative object-oriented equation-based modeling languages. It proposes a framework where over- and under-constraining situations present in simulation models specified in such languages are detected by combinatorial graph transformations performed on the flattened intermediate code and filtered by the semantic transformation rules derived from the original language. This is powerful enough to statically detect a broad range of errors without having to execute the simulation model. Debuggers associated with simulation environments for such languages can provide efficient error-fixing strategies based on the graph-based representation of the intermediate code. The emphasis, in this paper, is on detecting and debugging over-constraining equations, which are present in some simulation model specifications. The paper discusses various ways in which the approach is extended to allow static global analysis of the original modeling source code.

[1]  Martín Abadi,et al.  A Theory of Objects , 1996, Monographs in Computer Science.

[2]  M. Otter,et al.  Modelica - A Unified Object-Oriented Language for Physical Systems Modeling - Language Specification , 2000 .

[3]  Peter Fritzson,et al.  Modelica - A Unified Object-Oriented Language for System Modelling and Simulation , 1998, ECOOP.

[4]  Peter Fritzson,et al.  Modelica - a general object-oriented language for continuous and discrete-event system modeling and simulation , 2002, Proceedings 35th Annual Simulation Symposium. SS 2002.

[5]  Michael Tiller,et al.  Introduction to Physical Modeling with Modelica , 2001 .

[6]  Martin Otter,et al.  Modelica-a language for physical system modeling, visualization and interaction , 1999, Proceedings of the 1999 IEEE International Symposium on Computer Aided Control System Design (Cat. No.99TH8404).

[7]  N. S. Mendelsohn,et al.  Coverings of Bipartite Graphs , 1958, Canadian Journal of Mathematics.