Meta-Languages and Semantics for Equation-Based Modeling and Simulation
Performing computational experiments on mathematical models instead of building and testing physical prototypes can drastically reduce the develop cost for complex systems such as automobiles, aircraft, and powerplants. In the past three decades, a new category of equation-based modeling languages h...
Main Author: | |
---|---|
Format: | Doctoral Thesis |
Language: | English |
Published: |
Linköpings universitet, PELAB - Laboratoriet för programmeringsomgivningar
2010
|
Subjects: | |
Online Access: | http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-58743 http://nbn-resolving.de/urn:isbn:978-91-7393-335-3 |
id |
ndltd-UPSALLA1-oai-DiVA.org-liu-58743 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-UPSALLA1-oai-DiVA.org-liu-587432013-01-08T13:06:42ZMeta-Languages and Semantics for Equation-Based Modeling and SimulationengBroman, DavidLinköpings universitet, PELAB - Laboratoriet för programmeringsomgivningarLinköpings universitet, Tekniska högskolanLinköping : Linköping University Electronic Press2010Meta-languagesemanticsEOOModelicaequationsmodelingsimulationMKLComputer scienceDatalogiPerforming computational experiments on mathematical models instead of building and testing physical prototypes can drastically reduce the develop cost for complex systems such as automobiles, aircraft, and powerplants. In the past three decades, a new category of equation-based modeling languages has appeared that is based on acausal and object-oriented modeling principles, enabling good reuse of models. However, the modeling languages within this category have grown to be large and complex, where the specifications of the language's semantics are informally defined, typically described in natural languages. The lack of a formal semantics makes these languages hard to interpret unambiguously and to reason about. This thesis concerns the problem of designing the semantics of such equation-based modeling languages in a way that allows formal reasoning and increased correctness. The work is presented in two parts. In the first part we study the state-of-the-art modeling language Modelica. We analyze the concepts of types in Modelica and conclude that there are two kinds of type concepts: class types and object types. Moreover, a concept called structural constraint delta is proposed, which is used for isolating the faults of an over- or under-determined model. In the second part, we introduce a new research language called the Modeling Kernel Language (MKL). By introducing the concept of higher-order acausal models (HOAMs), we show that it is possible to create expressive modeling libraries in a manner analogous to Modelica, but using a small and simple language concept. In contrast to the current state-of-the-art modeling languages, the semantics of how to use the models, including meta operations on models, are also specified in MKL libraries. This enables extensible formal executable specifications where important language features are expressed through libraries rather than by adding completely new language constructs. MKL is a statically typed language based on a typed lambda calculus. We define the core of the language formally using operational semantics and prove type safety. An MKL interpreter is implemented and verified in comparison with a Modelica environment. Doctoral thesis, monographinfo:eu-repo/semantics/doctoralThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-58743urn:isbn:978-91-7393-335-3Linköping Studies in Science and Technology. Dissertations, 0345-7524 ; 1333application/pdfinfo:eu-repo/semantics/openAccess |
collection |
NDLTD |
language |
English |
format |
Doctoral Thesis |
sources |
NDLTD |
topic |
Meta-language semantics EOO Modelica equations modeling simulation MKL Computer science Datalogi |
spellingShingle |
Meta-language semantics EOO Modelica equations modeling simulation MKL Computer science Datalogi Broman, David Meta-Languages and Semantics for Equation-Based Modeling and Simulation |
description |
Performing computational experiments on mathematical models instead of building and testing physical prototypes can drastically reduce the develop cost for complex systems such as automobiles, aircraft, and powerplants. In the past three decades, a new category of equation-based modeling languages has appeared that is based on acausal and object-oriented modeling principles, enabling good reuse of models. However, the modeling languages within this category have grown to be large and complex, where the specifications of the language's semantics are informally defined, typically described in natural languages. The lack of a formal semantics makes these languages hard to interpret unambiguously and to reason about. This thesis concerns the problem of designing the semantics of such equation-based modeling languages in a way that allows formal reasoning and increased correctness. The work is presented in two parts. In the first part we study the state-of-the-art modeling language Modelica. We analyze the concepts of types in Modelica and conclude that there are two kinds of type concepts: class types and object types. Moreover, a concept called structural constraint delta is proposed, which is used for isolating the faults of an over- or under-determined model. In the second part, we introduce a new research language called the Modeling Kernel Language (MKL). By introducing the concept of higher-order acausal models (HOAMs), we show that it is possible to create expressive modeling libraries in a manner analogous to Modelica, but using a small and simple language concept. In contrast to the current state-of-the-art modeling languages, the semantics of how to use the models, including meta operations on models, are also specified in MKL libraries. This enables extensible formal executable specifications where important language features are expressed through libraries rather than by adding completely new language constructs. MKL is a statically typed language based on a typed lambda calculus. We define the core of the language formally using operational semantics and prove type safety. An MKL interpreter is implemented and verified in comparison with a Modelica environment. |
author |
Broman, David |
author_facet |
Broman, David |
author_sort |
Broman, David |
title |
Meta-Languages and Semantics for Equation-Based Modeling and Simulation |
title_short |
Meta-Languages and Semantics for Equation-Based Modeling and Simulation |
title_full |
Meta-Languages and Semantics for Equation-Based Modeling and Simulation |
title_fullStr |
Meta-Languages and Semantics for Equation-Based Modeling and Simulation |
title_full_unstemmed |
Meta-Languages and Semantics for Equation-Based Modeling and Simulation |
title_sort |
meta-languages and semantics for equation-based modeling and simulation |
publisher |
Linköpings universitet, PELAB - Laboratoriet för programmeringsomgivningar |
publishDate |
2010 |
url |
http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-58743 http://nbn-resolving.de/urn:isbn:978-91-7393-335-3 |
work_keys_str_mv |
AT bromandavid metalanguagesandsemanticsforequationbasedmodelingandsimulation |
_version_ |
1716509267619479552 |