LiU Electronic Press
Download:
File size:
1523 kb
Format:
application/pdf
Author:
Bunus, Peter (Linköping University, Department of Computer and Information Science, PELAB - Programming Environment Laboratory) (Linköping University, The Institute of Technology)
Title:
Debugging and Structural Analysis of Declarative Equation-Based Languages
Department:
Linköping University, Department of Computer and Information Science, PELAB - Programming Environment Laboratory
Linköping University, The Institute of Technology
Publication type:
Licentiate thesis, monograph (Other academic)
Language:
English
Publisher: Institutionen för datavetenskap
Pages:
156
Series:
Linköping Studies in Science and Technology. Thesis, ISSN 0280-7971; 964
Year of publ.:
2002
URI:
urn:nbn:se:liu:diva-5727
Permanent link:
http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-5727
ISBN:
91-7373-382-2
Subject category:
Computer Science
SVEP category:
Computer science
Keywords(en) :
software development, object-oriented, debugging, computer programming, debugging kernel prototypes
Abstract(en) :

A significant part of the software development effort is spent on detecting deviations between software implementations and specifications, and subsequently locating the sources of such errors. This thesis illustrates that is possible to identify a significant number of errors during static analysis of declarative object-oriented equation-based modeling languages that are typically used for system modeling and simulation. Detecting anomalies in the source code without actually solving the underlying system of equations provides a significant advantage: a modeling error can be corrected before trying to get the model compiled or embarking on a computationally expensive symbolic or numerical solution process. The overall objective of this work is to demonstrate that debugging based on static analysis techniques can considerably improve the error location and error correcting process when modeling with equation-based languages.

A new method is proposed for debugging of over- and under-constrained systems of equations. The improved approach described in this thesis is to perform the debugging process on the flattened intermediate form of the source code and to use filtering criteria generated from program annotations and from the translation rules. Each time when an error is detected in the intermediate code and the error fixing solution is elaborated, the debugger queries for the original source code before presenting any information to the user. In this way, the user is exposed to the original language source code and not burdened with additional information from the translation process or required to inspect the intermediate code.

We present the design and implementation of debugging kernel prototypes, tightly integrated with the core of the optimizer module of a Modelica compiler, including details of the novel framework required for automatic debugging of equation-based languages.

This thesis establishes that structural static analysis performed on the underlying system of equations from object-oriented mathematical models can effectively be used to statically debug real Modelica programs. Most of our conclusions developed in this thesis are also valid for other equation-based modeling languages.

Note:
Report code: LiU-Tek-Lic-2002:37.
Presentation:
2002-09-19, 00:00 (English)
Supervisor:
Fritzson, Peter (Linköping University, Department of Computer and Information Science, PELAB - Programming Environment Laboratory) (Linköping University, The Institute of Technology)
Available from:
2003-11-11
Created:
2003-11-11
Last updated:
2009-05-07
Statistics:
660 hits
FILE INFORMATION
File size:
1523 kb
Mimetype:
application/pdf
Type:
fulltext
Statistics:
1229 hits