Keywords
Computer Science and Digital Science
- A2. Software
- A2.1. Programming Languages
- A2.1.1. Semantics of programming languages
- A2.1.5. Constraint programming
- A2.1.9. Synchronous languages
- A2.1.10. Domain-specific languages
- A2.2. Compilation
- A2.2.1. Static analysis
- A2.2.8. Code generation
- A2.3. Embedded and cyber-physical systems
- A2.3.1. Embedded systems
- A2.3.2. Cyber-physical systems
- A2.3.3. Real-time systems
- A2.4. Formal method for verification, reliability, certification
- A2.4.1. Analysis
- A2.4.2. Model-checking
- A2.4.3. Proofs
- A2.5. Software engineering
- A2.5.1. Software Architecture & Design
- A2.5.2. Component-based Design
- A3. Data and knowledge
- A3.1. Data
- A3.1.1. Modeling, representation
- A6. Modeling, simulation and control
- A6.1. Methods in mathematical modeling
- A6.1.1. Continuous Modeling (PDE, ODE)
- A6.1.3. Discrete Modeling (multi-agent, people centered)
- A6.1.5. Multiphysics modeling
- A6.3.4. Model reduction
- A8. Mathematics of computing
- A8.4. Computer Algebra
Other Research Topics and Application Domains
- B2. Health
- B2.4.3. Surgery
- B4. Energy
- B4.4. Energy delivery
- B4.4.1. Smart grids
- B5. Industry of the future
- B5.1. Factory of the future
- B5.2. Design and manufacturing
- B5.2.1. Road vehicles
- B5.2.3. Aviation
- B5.8. Learning and training
- B5.9. Industrial maintenance
- B8. Smart Cities and Territories
- B8.1. Smart building/home
- B8.1.1. Energy for smart buildings
- B8.2. Connected city
- B8.3. Urbanism and urban planning
1 Team members, visitors, external collaborators
Research Scientists
- Benoît Caillaud [Team leader, Inria, Senior Researcher, HDR]
- Albert Benveniste [Inria, Emeritus, HDR]
- Khalil Ghorbal [Inria, Researcher]
PhD Students
- Christelle Kozaily [Inria]
- Aurélien Lamercerie [Inria, Jan 2021]
- Joan Thibault [Univ de Rennes I]
Technical Staff
- Mathias Malandain [Inria, Engineer]
- Bertrand Provot [Inria, Engineer, until Sep 2021]
- Alexandre Rocca [Inria, Engineer, until Jul 2021]
Interns and Apprentices
- Carybe Begue [École normale supérieure de Rennes, from May 2021 until Jul 2021]
- Maxime Bridoux [Univ de Rennes I, from Feb 2021 until Jul 2021]
- Lucas De Meyer [École normale supérieure de Rennes, from May 2021 until Jul 2021]
- Inigo Incer Romeo [Inria, Dec 2021]
Administrative Assistant
- Armelle Mozziconacci [CNRS]
2 Overall objectives
Hycomes was created a local team of the Rennes - Bretagne Atlantique Inria research center in 2013 and has been created as an Inria Project-Team in 2016. The team is focused on two topics in cyber-physical systems design:
- Hybrid systems modelling, with an emphasis on the design of modelling languages in which software systems, in interaction with a complex physical environment, can be modelled, simulated and verified. A special attention is paid to the mathematical rigorous semantics of these languages, and to the correctness (wrt. such semantics) of the simulations and of the static analyses that must be performed during compilation. The Modelica language is the main application field. The team aims at contributing language extensions facilitating the modelling of physical domains which are poorly supported by the Modelica language. The Hycomes team is also designing new structural analysis methods for hybrid (aka. multi-mode) Modelica models. New simulation and verification techniques for large Modelica models are also in the scope of the team.
- Contract-based design and interface theories, with applications to requirements engineering in the context of safety-critical systems design. The objective of our research is to bridge the gap between system-level requirements, often expressed in natural, constrained or semi-formal languages and formal models, that can be simulated and verified.
3 Research program
3.1 Hybrid Systems Modeling
Systems industries today make extensive use of mathematical modeling tools to design computer controlled physical systems. This class of tools addresses the modeling of physical systems with models that are simpler than usual scientific computing problems by using only Ordinary Differential Equations (ODE) and Difference Equations but not Partial Differential Equations (PDE). This family of tools first emerged in the 1980's with SystemBuild by MatrixX (now distributed by National Instruments) followed soon by Simulink by Mathworks, with an impressive subsequent development.
In the early 90's control scientists from the University of Lund (Sweden) realized that the above approach did not support component based modeling of physical systems with reuse 1. For instance, it was not easy to draw an electrical or hydraulic circuit by assembling component models of the various devices. The development of the Omola language by Hilding Elmqvist was a first attempt to bridge this gap by supporting some form of Differential Algebraic Equations (DAE) in the models. Modelica quickly emerged from this first attempt and became in the 2000's a major international concerted effort with the Modelica Consortium. A wider set of tools, both industrial and academic, now exists in this segment 2. In the Electronic Design Automation (EDA) sector, VHDL-AMS was developed as a standard 58 and also enables the use of differential algebraic equations. Several domain-specific languages and tools for mechanical systems or electronic circuits also support some restricted classes of differential algebraic equations. Spice is the historic and most striking instance of these domain-specific languages/tools 3. The main difference is that equations are hidden and the fixed structure of the differential algebraic results from the physical domain covered by these languages.
Despite these tools are now widely used by a number of engineers, they raise a number of technical difficulties. The meaning of some programs, their mathematical semantics, is indeed ambiguous. A main source of difficulty is the correct simulation of continuous-time dynamics, interacting with discrete-time dynamics: How the propagation of mode switchings should be handled? How to avoid artifacts due to the use of a global ODE solver causing unwanted coupling between seemingly non interacting subsystems? Also, the mixed use of an equational style for the continuous dynamics with an imperative style for the mode changes and resets, is a source of difficulty when handling parallel composition. It is therefore not uncommon that tools return complex warnings for programs with many different suggested hints for fixing them. Yet, these “pathological” programs can still be executed, if wanted so, giving surprising results — See for instance the Simulink examples in 27, 19 and 20.
Indeed this area suffers from the same difficulties that led to the development of the theory of synchronous languages as an effort to fix obscure compilation schemes for discrete time equation based languages in the 1980's. Our vision is that hybrid systems modeling tools deserve similar efforts in theory as synchronous languages did for the programming of embedded systems.
3.2 Background on non-standard analysis
Non-Standard analysis plays a central role in our research on hybrid systems modeling 19, 27, 21, 20, 3, 11. The following text provides a brief summary of this theory and gives some hints on its usefulness in the context of hybrid systems modeling. This presentation is based on our paper 2, a chapter of Simon Bliudze's PhD thesis 33, and a recent presentation of non-standard analysis, not axiomatic in style, due to the mathematician Lindström 65.
Non-standard numbers allowed us to reconsider the semantics of hybrid systems and propose a radical alternative to the super-dense time semantics developed by Edward Lee and his team as part of the Ptolemy II project, where cascades of successive instants can occur in zero time by using as a time index. In the non-standard semantics, the time index is defined as a set , where is an infinitesimal and is the set of non-standard integers. Remark that (1) is dense in , making it “continuous”, and (2) every has a predecessor in and a successor in , making it “discrete”. Although it is not effective from a computability point of view, the non-standard semantics provides a framework that is familiar to the computer scientist and at the same time efficient as a symbolic abstraction. This makes it an excellent candidate for the development of provably correct compilation schemes and type systems for hybrid systems modeling languages.
Non-standard analysis was proposed by Abraham Robinson in the 1960s to allow the explicit manipulation of “infinitesimals” in analysis 75, 50, 46. Robinson's approach is axiomatic; he proposes adding three new axioms to the basic Zermelo-Fraenkel (ZFC) framework. There has been much debate in the mathematical community as to whether it is worth considering non-standard analysis instead of staying with the traditional one. We do not enter this debate. The important thing for us is that non-standard analysis allows the use of the non-standard discretization of continuous dynamics “as if” it was operational.
Not surprisingly, such an idea is quite ancient. Iwasaki et al. 59 first proposed using non-standard analysis to discuss the nature of time in hybrid systems. Bliudze and Krob 32, 33 have also used non-standard analysis as a mathematical support for defining a system theory for hybrid systems. They discuss in detail the notion of “system” and investigate computability issues. The formalization they propose closely follows that of Turing machines, with a memory tape and a control mechanism.
3.3 Structural Analysis of DAE Systems
The Modelica language is based on Differential Algebraic Equations (DAE). The general form of a DAE is given by:
where is a system of equations and is a finite list of independent real-valued, smooth enough, functions of the independent variable . We use as a shorthand for the list of first-order time derivatives of , . High-order derivatives are recursively defined as usual, and denotes the list formed by the -th derivatives of the functions . Each depends on the scalar and some of the functions as well as a finite number of their derivatives.
Let denote the highest differentiation order of variable effectively appearing in equation , or if does not appear in . The leading variables of are the variables in the set
The state variables of are the variables in the set
A leading variable is said to be algebraic if (in which case, neither nor any of its derivatives are state variables). In the sequel, and denote the leading and state variables of , respectively.
DAE are a strict generalization of ordinary differential equations (ODE), in the sense that it may not be immediate to rewrite a DAE as an explicit ODE of the form . The reason is that this transformation relies on the Implicit Function Theorem, requiring that the Jacobian matrix have full rank. This is, in general, not the case for a DAE. Simple examples, like the two-dimensional fixed-length pendulum in Cartesian coordinates 72, exhibit this behaviour.
For a square DAE of dimension (i.e., we now assume ) to be solved in the neighborhood of some , one needs to find a set of non-negative integers such that system
can locally be made explicit, i.e., the Jacobian matrix of with respect to its leading variables, evaluated at , is nonsingular. The smallest possible value of for a set that satisfies this property is the differentiation index 40 of , that is, the minimal number of time differentiations of all or part of the equations required to get an ODE.
In practice, the problem of automatically finding a ”minimal” solution to this problem quickly becomes intractable. Moreover, the differentiation index may depend on the value of . This is why, in lieu of numerical nonsingularity, one is interested in the structural nonsingularity of the Jacobian matrix, i.e., its almost certain nonsingularity when its nonzero entries vary over some neighborhood. In this framework, the structural analysis (SA) of a DAE returns, when successful, values of the that are independent from a given value of .
A renowned method for the SA of DAE is the Pantelides method; however, Pryce's -method is introduced also in what follows, as it is a crucial tool for our works.
3.3.1 Pantelides method
In 1988, Pantelides proposed what is probably the most well-known SA method for DAE 72. The leading idea of his work is that the structural representation of a DAE can be condensed into a bipartite graph whose left nodes (resp. right nodes) represent the equations (resp. the variables), and in which an edge exists if and only if the variable occurs in the equation.
By detecting specific subsets of the nodes, called Minimally Structurally Singular (MSS) subsets, the Pantelides method iteratively differentiates part of the equations until a perfect matching between the equations and the leading variables is found. One can easily prove that this is a necessary and sufficient condition for the structural nonsingularity of the system.
The main reason why the Pantelides method is not used in our work is that it cannot efficiently be adapted to multimode DAE (mDAE). As a matter of fact, the adjacency graph of a mDAE has both its nodes and edges parametrized by the subset of modes in which they are active; this, in turn, requires that a parametrized Pantelides method must branch every time no mode-independent MSS is found, ultimately resulting, in the worst case, in the enumeration of modes.
3.3.2 Pryce's Sigma-method
Albeit less renowned that the Pantelides method, Pryce's -method 73 is an efficient SA method for DAE, whose equivalence to the Pantelides method has been proved by the author. This method consists in solving two successive problems, denoted by primal and dual, relying on the -matrix, or signature matrix, of the DAE .
This matrix is given by:
where is equal to the greatest integer such that appears in , or if variable does not appear in . It is the adjacency matrix of a weighted bipartite graph, with structure similar to the graph considered in the Pantelides method, but whose edges are weighted by the highest differentiation orders. The entries denote non-existent edges.
The primal problem consists in finding a maximum-weight perfect matching (MWPM) in the weighted adjacency graph. This is actually an assignment problem, for the solving of which several standard algorithms exist, such as the push-relabel algorithm 57 or the Edmonds-Karp algorithm 52 to only give a few. However, none of these algorithms are easily parametrizable, even for applications to mDAE systems with a fixed number of variables.
The dual problem consists in finding the component-wise minimal solution to a given linear programming problem, defined as the dual of the aforementioned assignment problem. This is performed by means of a fixpoint iteration (FPI) that makes use of the MWPM found as a solution to the primal problem, described by the set of tuples :
- Initialize to the zero vector.
- For every ,
- For every ,
- Repeat Steps 2 and 3 until convergence is reached.
From the results proved by Pryce in 73, it is known that the above algorithm terminates if and only if it is provided a MWPM, and that the values it returns are independent of the choice of a MWPM whenever there exist several such matchings. In particular, a direct corollary is that the -method succeeds as long as a perfect matching can be found between equations and variables.
Another important result is that, if the Pantelides method succeeds for a given DAE , then the -method also succeeds for and the values it returns for are exactly the differentiation indices for the equations that are returned by the Pantelides method. As for the values of the , being given by , they are the differentiation indices of the leading variables in .
Working with this method is natural for our works, since the algorithm for solving the dual problem is easily parametrizable for dealing with multimode systems, as shown in our recent paper 38.
3.3.3 Block triangular decomposition
Once structural analysis has been performed, system can be regarded, for the needs of numerical solving, as an algebraic system with unknowns , . As such, (inter)dependencies between its equations must be taken into account in order to put it into block triangular form (BTF). Three steps are required:
- the dependency graph of system is generated, by taking into account the perfect matching between equations and unknowns ;
- the strongly connected components (SCC) in this graph are determined: these will be the equation blocks that have to be solved;
- the block dependency graph is constructed as the condensation of the dependency graph, from the knowledge of the SCC; a BTF of system can be made explicit from this graph.
3.4 Contract-Based Design, Interfaces Theories, and Requirements Engineering
System companies such as automotive and aeronautic companies are facing significant difficulties due to the exponentially raising complexity of their products coupled with increasingly tight demands on functionality, correctness, and time-to-market. The cost of being late to market or of imperfections in the products is staggering as witnessed by the recent recalls and delivery delays that many major car and airplane manufacturers had to bear in the recent years. The specific root causes of these design problems are complex and relate to a number of issues ranging from design processes and relationships with different departments of the same company and with suppliers, to incomplete requirement specification and testing.
We believe the most promising means to address the challenges in systems engineering is to employ structured and formal design methodologies that seamlessly and coherently combine the various viewpoints of the design space (behavior, space, time, energy, reliability, ...), that provide the appropriate abstractions to manage the inherent complexity, and that can provide correct-by-construction implementations. The following technology issues must be addressed when developing new approaches to the design of complex systems:
- The overall design flows for heterogeneous systems and the associated use of models across traditional boundaries are not well developed and understood. Relationships between different teams inside a same company, or between different stake-holders in the supplier chain, are not well supported by solid technical descriptions for the mutual obligations.
- System requirements capture and analysis is in large part a heuristic process, where the informal text and natural language-based techniques in use today are facing significant challenges 10. Formal requirements engineering is in its infancy: mathematical models, formal analysis techniques and links to system implementation must be developed.
- Dealing with variability, uncertainty, and life-cycle issues, such as extensibility of a product family, are not well-addressed using available systems engineering methodologies and tools.
The challenge is to address the entire process and not to consider only local solutions of methodology, tools, and models that ease part of the design.
Contract-based design has been proposed as a new approach to the system design problem that is rigorous and effective in dealing with the problems and challenges described before, and that, at the same time, does not require a radical change in the way industrial designers carry out their task as it cuts across design flows of different types. Indeed, contracts can be used almost everywhere and at nearly all stages of system design, from early requirements capture, to embedded computing infrastructure and detailed design involving circuits and other hardware. Contracts explicitly handle pairs of properties, respectively representing the assumptions on the environment and the guarantees of the system under these assumptions. Intuitively, a contract is a pair of assumptions and guarantees characterizing in a formal way 1) under which context the design is assumed to operate, and 2) what its obligations are. Assume/Guarantee reasoning has been known for a long time, and has been used mostly as verification mean for the design of software 70. However, contract based design with explicit assumptions is a philosophy that should be followed all along the design, with all kinds of models, whenever necessary. Here, specifications are not limited to profiles, types, or taxonomy of data, but also describe the functions, performances of various kinds (time and energy), and reliability. This amounts to enrich a component's interface with, on one hand, formal specifications of the behavior of the environment in which the component may be instantiated and, on the other hand, of the expected behavior of the component itself. The consideration of rich interfaces is still in its infancy. So far, academic researchers have addressed the mathematics and algorithmics of interfaces theories and contract-based reasoning. To make them a technique of choice for system engineers, we must develop:
- mathematical foundations for interfaces and requirements engineering that enable the design of frameworks and tools;
- a system engineering framework and associated methodologies and toolsets that focus on system requirements modeling, contract specification, and verification at multiple abstraction layers.
A detailed bibliography on contract and interface theories for embedded system design can be found in 4. In a nutshell, contract and interface theories fall into two main categories:
-
Assume/guarantee contracts.
By explicitly relying on the notions of assumptions and guarantees, A/G-contracts are intuitive, which makes them appealing for the engineer. In A/G-contracts, assumptions and guarantees are just properties regarding the behavior of a component and of its environment. The typical case is when these properties are formal languages or sets of traces, which includes the class of safety properties 61, 43, 69, 18, 45. Contract theories were initially developed as specification formalisms able to refuse some inputs from the environment 51. A/G-contracts were advocated in 25 and are is still a very active research topic, with several contributions dealing with the timed 31 and probabilistic 35, 36 viewpoints in system design, and even mixed-analog circuit design 71.
-
Automata theoretic interfaces.
Interfaces combine assumptions and guarantees in a single, automata theoretic specification. Most interface theories are based on Lynch's Input/Output Automata 68, 67. Interface Automata 14, 13, 15, 41 focus primarily on parallel composition and compatibility: Two interfaces can be composed and are compatible if there is at least one environment where they can work together. The idea is that the resulting composition exposes as an interface the needed information to ensure that incompatible pairs of states cannot be reached. This can be achieved by using the possibility, for an Interface Automaton, to refuse selected inputs from the environment in a given state, which amounts to the implicit assumption that the environment will never produce any of the refused inputs, when the interface is in this state. Modal Interfaces 74 inherit from both Interface Automata and the originally unrelated notion of Modal Transition System 63, 17, 34, 62. Modal Interfaces are strictly more expressive than Interface Automata by decoupling the I/O orientation of an event and its deontic modalities (mandatory, allowed or forbidden). Informally, a must transition is available in every component that realizes the modal interface, while a may transition needs not be. Research on interface theories is still very active. For instance, timed 16, 28, 30, 48, 47, 29, probabilistic 35, 49 and energy-aware 42 interface theories have been proposed recently.
Requirements Engineering is one of the major concerns in large systems industries today, particularly so in sectors where certification prevails 76. Most requirements engineering tools offer a poor structuring of the requirements and cannot be considered as formal modeling frameworks today. They are nothing less, but nothing more than an informal structured documentation enriched with hyperlinks. As examples, medium size sub-systems may have a few thousands requirements and the Rafale fighter aircraft has above 250,000 of them. For the Boeing 787, requirements were not stable while subcontractors were working on the development of the fly-by-wire and of the landing gear subsystems, leading to a long and cahotic convergence of the design process.
We see Contract-Based Design and Interfaces Theories as innovative tools in support of Requirements Engineering. The Software Engineering community has extensively covered several aspects of Requirements Engineering, in particular:
- the development and use of large and rich ontologies; and
- the use of Model Driven Engineering technology for the structural aspects of requirements and resulting hyperlinks (to tests, documentation, PLM, architecture, and so on).
Behavioral models and properties, however, are not properly encompassed by the above approaches. This is the cause of a remaining gap between this phase of systems design and later phases where formal model based methods involving behavior have become prevalent—see the success of Matlab/Simulink/Scade technologies. We believe that our work on contract based design and interface theories is best suited to bridge this gap.
4 Application domains
The Hycomes team contributes to the design of mathematical modeling languages and tools, to be used for the design of cyberphysical systems. In a nutshell, two major applications can be clearly identified: (i) our work on the structural analysis of multimode DAE systems has a sizeable impact on the techniques to be used in Modelica tools; (ii) our work on the verification of dynamical systems has an impact on the design methodology for safety-critical cyberphysical systems. These two applications are detailed below.
4.1 Modelica
Mathematical modeling tools are a considerable business, with major actors such as MathWorks, with Matlab/Simulink, or Wolfram, with Mathematica. However, none of these prominent tools are suitable for the engineering of large systems. The Modelica language has been designed with this objective in mind, making the best of the advantages of DAEs to support a component-based approach. Several industries in the energy sector have adopted Modelica as their main systems engineering language.
Although multimode features have been introduced in version 3.3 of the language 54, proper tool support of multimode models is still lagging behind. The reason is not a lack of interest from tool vendors and academia, but rather that multimode DAE systems poses several fundamental difficulties, such as a proper definition of a concept of solutions for multimode DAEs, how to handle mode switchings that trigger a change of system structure, or how impulsive variables should be handled. Our work on multimode DAEs focuses on these crucial issues 26.
Thanks to the experimental coupling of Dymola (Dassault Systèmes' commercial implementation of the Modelica language) with our IsamDAE prototype 39, 37, that is being tested at the time of writing of this activity report, a larger class of Modelica models are expected to be compiled and simulated correctly. This should enable industrial users to have cleaner and simpler multimode Modelica models, with dynamically changing structure of cyberphysical systems. On the longer term, our ambition is to provide efficient code-generation techniques for the Modelica language, supporting, in full generality, multimode DAE systems, with dynamically changing differentiation index, structure and dimension.
4.2 Dynamical Systems Verification
In addition to well-defined operational semantics for hybrid systems, one often needs to provide formal guarantees about the behavior of some critical components of the system, or at least its main underlying logic. To do so, we are actively developing new techniques to automatically verify whether a hybrid system complies with its specifications, and/or to infer automatically the envelope within which the system behaves safely. The approaches we developed have been already successfully used to formally verify the intricate logic of the ACAS X, a mid-air collision avoidance system that advises the pilot to go upward or downward to avoid a nearby airplane which requires mixing the continuous motion of the aircraft with the discrete decisions to resolve the potential conflict 60. This challenging example is nothing but an instance of the kind of systems we are targeting: autonomous smart systems that are designed to perform sophisticated tasks with an internal tricky logic. What is even more interesting perhaps is that such techniques can be often "reverted" to actually synthesize missing components so that some property holds, effectively helping the design of such complex systems.
5 Social and environmental responsibility
5.1 Impact of research results
The expected impact of our research is to allow both better designs and better exploitation of energy production units and distribution networks, enabling large-scale energy savings. At least, this is what we can observe in the context of the FUI ModeliScale collaborative project, which is focused on electric grids, urban heat networks and building thermal modeling.
The rationale is as follows: system engineering models are meant to assess the correctness, safety and optimality of a system under design. However, system models are still useful after the system has been put in operation. This is especially true in the energy sector, where systems have an extremely long lifespan (for instance, more than 50 years for some nuclear power plants) and are upgraded periodically, to integrate new technologies. Exactly like in software engineering, where a software and its model co-evolve throughout the lifespan of the software, a co-evolution of the system and its physical models has to be maintained. This is required in order to maintain the safety of the system, but also its optimality.
Moreover, physical models can be instrumental to the optimal exploitation of a system. A typical example are model-predictive control (MPC) techniques, where the model is simulated, during the exploitation of the system, in order to predict system trajectories up to a bounded-time horizon. Optimal control inputs can then be computed by mathematical programming methods, possibly using multiple simulation results. This has been proved to be a practical solution 56, whenever classical optimal control methods are ineffective, for instance, when the system is non-linear or discontinuous. However, this requires the generation of high-performance simulation code, capable of simulating a system much faster than real-time.
The structural analysis techniques implemented in IsamDAE 39 generate a conditional block dependency graph, that can be used to generate high-performance simulation code : static code can be generated for each block of equations, and a scheduling of these blocks can be computed, at runtime, at each mode switching, thanks to an inexpensive topological sort algorithm. Contrarily to other approaches (such as 55), no structural analysis, block-triangular decompositions, or automatic differentiation has to be performed at runtime.
6 Highlights of the year
This has been an decisive year for the Hycomes yeam, with the evaluation and the extension of the team till the end of 2025, the evaluation of Irisa by the HCERES, the completion of the FUI ModeliScale and Glose projects, the completion of Aurélien Lamercerie's PhD thesis, the publication of three papers at the Modelica'21 conference, and (last but not least) the ongoing development of the IsamDAE software.
7 New software and platforms
The development of the IsamDAE software has been an ongoing effort of the Hycomes team in 2021. This is detailed below.
7.1 New software
7.1.1 IsamDAE
-
Name:
Implicit Structural Analysis of Multimode DAE systems
-
Keywords:
Structural analysis, Differential algebraic equations, Multimode, Scheduling
-
Scientific Description:
Modeling languages and tools based on Differential Algebraic Equations (DAE) bring several specific issues that do not exist with modeling languages based on Ordinary Differential Equations. The main problem is the determination of the differentiation index and latent equations. Prior to generating simulation code and calling solvers, the compilation of a model requires a structural analysis step, which reduces the differentiation index to a level acceptable by numerical solvers.
The Modelica language, among others, allows hybrid models with multiple modes, mode-dependent dynamics and state-dependent mode switching. These Multimode DAE (mDAE) systems are much harder to deal with. The main difficulties are (i) the combinatorial explosion of the number of modes, and (ii) the correct handling of mode switchings.
The aim of the software is on the first issue, namely: How can one perform a structural analysis of an mDAE in all possible modes, without enumerating these modes? A structural analysis algorithm for mDAE systems has been designed and implemented, based on an implicit representation of the varying structure of an mDAE. It generalizes J. Pryce's Sigma-method to the multimode case and uses Binary Decision Diagrams (BDD) to represent the mode-dependent structure of an mDAE. The algorithm determines, as a function of the mode, the set of latent equations, the leading variables and the state vector. This is then used to compute a mode-dependent block-triangular decomposition of the system, that can be used to generate simulation code with a mode-dependent scheduling of the blocks of equations.
-
Functional Description:
IsamDAE (Implicit Structural Analysis of Multimode DAE systems) is a software library implementing new structural analysis algorithms for multimode DAE systems, based on an implicit representation of incidence graphs, matchings between equations and variables, and block decompositions. The input of the software is a variable dimension multimode DAE system consisting in a set of guarded equations and guarded variable declarations. It computes a mode-dependent structural index reduction of the multimode system and produces a mode-dependent graph for the scheduling of blocks of equations. It also computes the differentiation order of the latent equations and leading variables, as functions of the modes.
IsamDAE is coded in OCaml, and uses (at least partially) the following packages: MLBDD by Arlen Cox, Menhir by François Pottier and Yann Régis-Gianas, GuaCaml and Snowflake by Joan Thibault, Pprint by François Pottier, XML-Light by Nicolas Cannasse and Jacques Garrigue.
-
Release Contributions:
Versions 0.3e and 0.3f (released in July and August 2021):
New features:
• For a structurally nonsingular model, the -a option returns an XML file giving the results of the multimode structural analysis, i.e., this file describes the mode-dependent orders of differentiation (and activation conditions) of all equations and variables in the model, along with the conditions themselves.
• Option -i performs the structural analysis of the consistent initialization problem associated with a multimode model. (As it relies on the results of the structural analysis of long modes, it is only performed if this first analysis succeeds.) A warning message is returned if no initial event is declared. Either the model is deemed structurally nonsingular for all initial events and all associated modes, or the underdetermined and overdetermined subsystems of the initialization system in a given mode are displayed. Improvements of this option, including the generation of a conditional dependency graph for consistent initialization, are planned for later versions.
• Option –siconos performs the generation of simulation code for the nonsmooth numerical simulation tool Siconos. It is compatible with the -o option, that specifies a common prefix for the output C++ files, and comes with two additional options:
• –merge-systems is used for forcing the generation of a single dynamical system for the Siconos simulation, even if the system could be split into several dynamical systems. This option avoids unexpected bugs that can occur during numerical simulation.
• –force-dummy-derivatives is used for forcing the use of dummy derivatives for all time derivatives of all variables of the system. The use of this option is highly recommended for now, as disabling it may lead to out of bounds exceptions (this shall be fixed in a later version).
MEL syntax
• Modules can be declared and instantiated in the MEL language, allowing for a more component-based design. Note that, at the moment, the model is flattened before structural analysis, modular analysis is still in progress.
• Time derivatives of a variable x can now be written as x', x”, and so on. The syntax der(x), der(der(x))... can still be used.
• The n-th order derivative of an external function foo can be written as foo#n.
Performance improvement
• Transitive closure computations were made faster, observed gains vary from a few percents to several orders of magnitude depending on the structure of the model.
Syntax highlighting
• Syntax highlighters for Emacs and Visual Studio Code are now available for the MEL language in the utilities directory.
New examples
• dynamiccheckvalve: three-mode models of a check valve submitted to uncontrollable pressure drops, adapted from a model kindly provided by D. Bouskela (EDF Lab).
• modules/battery_storage_relay: a model of a battery storage with a BMS (battery management system) preventing over-/under-discharges, using a multimode parametrization of relay conditions declared in modules.
• modules/recursive: a MWE of a model with recursive module instantiation, rejected by IsamDAE.
• modules/rldc2-faulty-diode: a module-based adaptation of the RLDC2 model, in which one of the diodes will behave like a small resistor in case of a fault.
• nonsingularchair: a simple adaptation of the so-called singularchair model that solves over/underdetermination issues.
• twotanks: a two-tanks system with control.
• travelersystem: a standard traveler system (or "common" system), used for switching a load on and off from two SPDT switches.
• windkessel: an electrical circuit approximating the windkessel effect observed in the aorta during systole.
Bug fixes
• A bug in the structural analysis and diagnostics of singular models has been fixed.
• An error is returned if several equations of the same name are declared (this was uncaught until version 0.3d, leading to unexpected behavior during the structural analysis).
• The presence of a comment on the last line of a MEL model does not cause unwanted errors at parsing anymore.
• A minor bug affecting line and column counts by the MEL parser has been fixed.
• A minor bug in a function returning the size of a BDD has been fixed.
-
News of the Year:
Thanks to the improvements on the index reduction and block-triangular decomposition algorithms, it has been possible to perform the structural analysis of systems with more than 2500 equations and 10 to the power 115 modes, therefore demonstrating the scalability of the method.
A multimode initialization structural analysis method has been implemented. It decides whether the initial equations, combined with the consistency equations are structurally nonsingular, for all possible initial modes of a model.
A Siconos code generator has been implemented in IsamDAE. It supports the generation of C code, to be interfaced with the Siconos library, for the simulation of Mixed Complementarity Systems defined as the combination of a DAE with complementarity or relay conditions.
- URL:
- Publication:
-
Authors:
Benoit Caillaud, Mathias Malandain, Joan Thibault
-
Contact:
Benoit Caillaud
8 New results
8.1 Handling Multimode Models and Mode Changes in Modelica
Participants: Albert Benveniste, Benoît Caillaud, Mathias Malandain.
Since version 3.3, the Modelica language offers the possibility of specifying multimode dynamics, by describing state machines with different DAE dynamics in each different state 53. This feature enables describing large complex cyber-physical systems with different behaviors in different modes.
While being undoubtedly valuable, multimode modeling has been the source of serious difficulties for non-expert users of the current generation of Modelica tools. Indeed, while many large-scale Modelica models are properly handled, some physically meaningful models do not result in correct simulations with most Modelica tools. As such problematic models are actually easy to construct, the likelihood of such bad cases occurring in large models is significant.
It is unfortunately unclear which multimode Modelica models will be properly handled, and which ones will fail. As a consequence, quite often, end users have to ask Modelica experts, or even tool developers themselves, to tweak their models in order to make them work as expected. While it is accepted that physical modeling itself requires expertise, requiring expertise in how to get around tool idiosyncrasies is not desirable. This situation hinders a wider spreading of Modelica tools among a larger class of users, such as Simulink-trained engineers.
As our review of several examples, presented in 8 and 9, reveals, this problem is due to an inadequate structural analysis, performed during compilation. As far as we know, no industrial-strength Modelica tool implements a mode-dependent structural analysis. Worse, it is not even understood what kind of structural analysis should be associated with mode change events.
Some years ago, we started a project aiming at addressing all the above issues 24, 23, 26. In 8, we cast our approach in the context of the Modelica language, by illustrating it on two simple yet physically meaningful examples that current Modelica tools fail to properly simulate. The use of nonstandard analysis allows us to perform the analysis of both modes and mode changes in a unified framework, including the handling of transient modes and that of impulsive mode changes. Standardization techniques are then used in order to generate effective code for restarts at mode changes. As an efficient implementation of such methods in Modelica compilers would greatly expand the class of multimode models amenable to reliable numerical simulation, we hint at possible mechanizations towards the end of the paper; this aspect is developed further in both the companion paper 7 and the previously published article 38.
Another issue is the existence, in many physical models, of impulsive behaviors for some variables. With existing tools, such models give rise to failed or inaccurate simulations. Impulsive behaviors are already a problem from a mathematical standpoint, as they do not fall within the classical concepts of solutions of a DAE system, that assume the smoothness of the trajectories.
To cope with this issue, distributions were considered by some authors. To our knowledge, the most comprehensive approach was provided by Stephan Trenn. In his PhD thesis 77 and his article 78, he pointed out the difficulty in defining piecewise smooth distributions: several mathematically sound definitions of the “Dirac part” of such a distribution can be considered, so that it has no intrinsic definition. This indicates that distributions are not the ultimate answer to deal with impulsive variables in multimode DAE systems. Still, 64 were able to define complete solutions for a class of switched DAE systems in which each mode is in quasi-linear form and switching conditions are time-based, not state-based.
Another important step forward was done in 22. An interesting subclass of multimode DAE systems was identified, which possibly exhibit impulsive variables at mode changes. They extend the “quasi-linear systems” proposed by Trenn in the sense that switching conditions are no longer restricted to time-based ones, instead including state-based switching conditions. The analysis and discretization schemes proposed in 22 are mathematically sound. Building on this work, Martin Otter has developed the ModiaMath tool for semi-linear multimode DAE systems.
Since this work, this approach was refined and extended in 26, and is illustrated on examples in 8. In a nutshell, a complete structural analysis of multimode DAE systems is proposed in these papers. In particular, this approach distinguishes between long modes, in which the dynamics is continuous-time and governed by a DAE system for a strictly positive duration, and transient modes, which are zero duration events at which state-jumps may occur.
We develop in 7 another important aspect of our approach, by focusing on impulsive behaviors. To analyze this behavior, we propose a general compile-time analysis, acting as an additional step of the multimode structural analysis presented in the companion paper 8. Since distributions fail to properly handle impulsive behaviors in general, our mathematical tool for this is nonstandard analysis 75, 46, 65, which allows for a correct use of infinities and infinitesimals in mathematical analysis. We use this setting in two ways:
- First, we discretize the DAE dynamics in each long mode using an explicit first-order Euler scheme with an infinitesimal time step ; this provides us with an approximation of the DAE solutions up to an infinitesimal error. Infinitesimal time steps are also used to capture restarts at mode changes: the values of states in the new mode are computed, from values before the change, in one or several infinitesimal time steps.
- Second, we compute impulse orders, i.e., orders of magnitude of algebraic variables at mode changes, for both long and transient modes, with reference to the infinitesimal time step ; for example, an order of for an algebraic variable indicates that this variable is impulsive.
A compile-time calculus that evaluates the impulse order of algebraic variables is detailed in the paper. Finite impulse orders can be used to renormalize impulsive variables when implementing a numerical scheme that approximates the restart values for each state variable of the system.
In a third paper 9, presented at the Modelica'21 conference, we propose a systematic way of rewriting a multimode Modelica model, based on the results of an already implemented multimode structural analysis. The rewritten Modelica model is guaranteed to be correctly compiled by state-of-the-art Modelica tools. Simulation results are presented on a simple, yet meaningful, physical system whose original Modelica model is not correctly handled by state-of-the-art Modelica tools.
We demonstrate how the results of this multimode structural analysis can be used for transforming a multimode Modelica model into its RIMIS (Reduced Index Mode-Independent Structure) form, which is guaranteed to yield correct execution on state-of-the-art Modelica tools. This method is illustrated on a water tank model for which current Modelica tools fail to execute; in this model, the differentiation index depends on the mode, which is a difficulty for these tools. In particular, we explain how existing structural analysis methods fail to yield correct execution code for this model, then demonstrate the generation of a target Modelica code under RIMIS form, resulting in a correct simulation of the model. Our approach is then formalized for its broad application to a large class of Modelica multimode models.
8.2 Functional Decision Diagrams: A Unifying Data Structure For Binary Decision Diagrams
Participants: Joan Thibault, Khalil Ghorbal.
We present concise and canonical representations of Boolean functions akin to Binary Decision Diagrams, a versatile data structure with several applications beyond computer science. Our approach is functional: we encode the process that constructs the Boolean function of interest starting from the constant function zero (or False). This point of view makes the data structure more resilient to variable ordering, a well-known problem in standard representations. The experiments on both dense and sparse formulas are very encouraging and show not only a better compression rate of the final representation than all existing related variants but also a lower memory peak.
For Ordered Functional Decision Diagrams, we introduce a novel framework, termed λDD, that revisits Binary Decision Diagrams from a purely functional point of view. The framework allows to classify the already existing variants, including the most recent ones like Chain-DD and ESRBDD, as implementations of a special class of ordered models. We enumerate, in a principled way, all the models of this class and isolate its most expressive model. This new model, termed λDD-O-NUCX, is suitable for both dense and sparse Boolean functions, and is moreover invariant by negation. The canonicity of λDD-O-NUCX is formally verified using the Coq proof assistant. We furthermore give bounds on the size of the different diagrams: the potential gain achieved by more expressive models can be at most linear in the number of variables n.
8.3 Characterizing Q-matrices
Participants: Khalil Ghorbal, Christelle Kozaily.
In the context of Christelle Kozaily's PhD, we have shown that the existence of solutions for linear complementarity problems amounts to a covering of the entire space by a set of finite cones defined by the involved vectors as well as the standard basis. We give several full characterizations in dimension 2 and detail how these could be used to derive several necessary conditions for higher dimensions. The local existence of solutions is also investigated. It is shown that the positivity condition on the determinant, or equivalently, the orientation of the vectors forming the complementarity cones cannot be captured purely structurally.
8.4 Characterizing Positively Invariant Sets: Inductive and Topological Methods
Participants: Khalil Ghorbal.
In 12, we present two characterizations of positive invariance of sets for systems of ordinary differential equations. The first characterization uses inward sets which intuitively collect those points from which the flow evolves within the set for a short period of time, whereas the second characterization uses the notion of exit sets, which intuitively collect those points from which the flow immediately leaves the set. Our proofs emphasize the use of the real induction principle as a generic and unifying proof technique that captures the essence of the formal reasoning justifying our results and provides cleaner alternative proofs of known results. The two characterizations presented in this article, while essentially equivalent, lead to two rather different decision procedures (termed respectively LZZ and ESE) for checking whether a given semi-algebraic set is positively invariant under the flow of a system of polynomial ordinary differential equations. The procedure LZZ improves upon the original work by Liu, Zhan and Zhao 66. The procedure ESE, introduced in this article, works by splitting the problem, in a principled way, into simpler sub-problems that are easier to check, and is shown to exhibit substantially better performance compared to LZZ on problems featuring semi-algebraic sets described by formulas with non-trivial Boolean structure.
9 Bilateral contracts and grants with industry
9.1 Bilateral contracts with industry
Glose (2018–2021)
Participants: Benoît Caillaud, Mathias Malandain.
In the context of a framework agreement between Safran Tech. of the Safran aeronautic group and Inria, the Hycomes team, jointly with the KAIROS and DIVERSE teams, contributed to the Glose research grant funded by Safran. In 2021, Benoît Caillaud and Mathias Malandain have contributed an hybrid systems extension of CosApp, an open-source modeling and simulation framework developed in Python, supporting system design activities. This extension implements the main language features advocated in 19 and previously experimented in the Zélus hybrid systems modeling language. There are significant differences between Zélus and CosApp though, in part related to the fact that CosApp supports dynamic reconfigurations of the model at runtime. One difference is that, unlike in the Zélus language, the segregation between continuous-time and discrete-time dynamics is achieved by distinguishing continuous-time and discrete-time variables. A common feature of both languages is the introduction of the concept of events, defined as the zero-crossing of a numerical expression. The CosApp hybrid systems extension is currently being tested within Safran and is expected to be merged in the master distribution branch of the framework in 2022.
10 Partnerships and cooperations
10.1 International research visitors
10.1.1 Visits of international scientists
Participants: Albert Benveniste, Benoît Caillaud.
Other international visits to the team
Íñigo Íncer Romeo
-
Status
PhD
-
Institution of origin:
U. California at Berkeley
-
Country:
USA
-
Dates:
13-12-2021 until 30-03-2022
-
Context of the visit:
The topic of the internship is on contract-based design theories, methodologies and support tools, with a special emphasis on the synthesis of observers for checking, contract satisfaction and refinement, in a compositional manner
-
Mobility program/type of mobility:
Internship, funded by a Chateaubriand grant of the French Consulate in San Francisco, USA
10.2 National initiatives
10.2.1 Inria Challenge ModeliScale, Languages and Compilation for Cyber-Physical System Design
Participants: Albert Benveniste, Benoît Caillaud, Khalil Ghorbal, Christelle Kozaily, Mathias Malandain, Alexandre Rocca, Joan Thibault.
The project gathers researchers from three Inria teams (Hycomes, Parkas and Tripop), and from three other research labs in Paris area (ENSTA Paris-Tech, L2S-CNRS and LIX, École Polytechnique).
The main objective of ModeliScale is to advance modeling technologies (languages, compile-time analyses, simulation techniques) for CPS combining physical interactions, communication layers and software components. We believe that mastering CPS comprising thousands to millions of components requires radical changes of paradigms. For instance, modeling techniques must be revised, especially when physics is involved. Modeling languages must be enhanced to cope with larger models. This can only be done by combining new compilation techniques (to master the structural complexity of models) with new mathematical tools (new numerical methods, in particular).
ModeliScale gathers a broad scope of experts in programming language design and compilation (reactive synchronous programming), numerical solvers (nonsmooth dynamical systems) and hybrid systems modeling and analysis (guaranteed simulation, verification). The research program is carried out in close cooperation with the Modelica community as well as industrial partners, namely, Dassault Systèmes as a Modelica/FMI tool vendor, and EDF and Engie as end users.
In 2021, one general meeting and a final review meeting have been organized at the Inria Paris research center premises, with presentations of the partners on new results related to hybrid systems modeling and verification.
Two PhDs are funded by the ModeliScale Challenge. Both started in October 2018:
- Christelle Kozaily has started a PhD, under the supervision of Vincent Acary (TRIPOP team at Inria Grenoble), Benoît Caillaud, Khalil Ghorbal on the structural and numerical analysis of non-smooth DAE systems. She is located in the Hycomes team at Inria Rennes. Her PhD defense is planned for the fall 2022.
- Ismail Lahkim-Bennani has started a PhD under the supervision of Goran Frehse (ENSTA ParisTech.) and Marc Pouzet (PARKAS team, INRIA/ENS Paris). His PhD topic is on random testing of hybrid systems, using techniques inspired by QuickCheck 44. Unfortunately, Ismail Lahkim-Bennani has resigned in mid-2021 from his PhD position, for personal reasons.
10.2.2 FUI ModeliScale: Scalable Modeling and Simulation of Large Cyber-Physical Systems
Participants: Albert Benveniste, Benoît Caillaud, Mathias Malandain, Bertrand Provot, Alexandre Rocca.
FUI ModeliScale was a French national collaborative project coordinated by Dassault Systèmes. The partners of this project are: EDF and Engie as main industrial users; DPS, Eurobios and PhiMeca are SME providing mathematical modeling expertise; CEA INES (Chambéry) and Inria are the academic partners. The project started in 2018 and has been completed in September 2021. Three Inria teams have contributed to the project : Hycomes, Parkas (Inria Paris / ENS) and Tripop (Inria Grenoble / LJK).
The focus of the project was on the scalable analysis, compilation and simulation of large Modelica models. The main contributions expected from Inria have been:
- A novel structural analysis algorithm for multimode DAE systems, capable of handling large systems of guarded equations, that do not depend on the enumeration of a possibly exponential number of modes.
- The partitioning and high-performance distributed co-simulation of large Modelica models, based on the results of the structural analysis.
In 2021, the effort has been put on the first objective, and in particular the improvement of the scalability of the algorithms implemented in the IsamDAE software. The performance of the tool has been improved by two orders of magnitude on some examples. This has allowed us to perform the structural analysis of multimode models of more than 2500 equations and 10 to the power 115 modes.
A multimode initialization structural analysis method has been released in version v0.3f of IsamDAE. It decides whether the initial equations, combined with the consistency equations are structurally nonsingular, for all possible initial modes of a model.
A Siconos code generator has also been implemented in version v0.3f of IsamDAE. It supports the generation of C code, to be interfaced with the Siconos library, for the simulation of Mixed Complementarity Systems defined as the combination of a DAE with complementarity or relay conditions.
A coupling of IsamDAE with Dymola (Dassault Système's commercial implementation of the Modelica language) has been implemented by Dassault Systèmes AB (Lund, Sweden), and has been successfully tested on several Modelica models.
Contributing to the broad dissemination of the results of the FUI ModeliScale project, Albert Benveniste, Benoît Caillaud and Mathias Malandain have coauthored three papers 7, 8, 9 on the topic of multimode model handling by Modelica tools. These papers have been presented at the Modelica'21 conference.
Benoît Caillaud has contributed, jointly with Patrick Chombart (Dassault Systèmes) and Luis Corona (EDF), to a talk at the 1DCAE MBD Symposium of the Japan Society of Mechanical Engineers, presenting the main results of the FUI ModeliScale project.
11 Dissemination
Participants: Albert Benveniste, Benoît Caillaud, Khalil Ghorbal, Christelle Kozaily.
11.1 Promoting scientific activities
11.1.1 Scientific events: selection
Member of the conference program committees
In 2021, Benoît Caillaud has served on the program committee of the FDL'21 (Forum on specification and Design Languages) conference. He chaired a panel on cyberphysical systems modeling and simulation.
Reviewer - reviewing activities
In 2021, Benoît Caillaud has reviewed papers for the following journals: Applied Mathematics and Computation, Discrete Event Dynamic Systems.
11.1.2 Scientific expertise
Albert Benveniste is member of the French National Academy of Technology. He also serves of the Scientific Advisory Board of the aeronautic company Safran.
11.1.3 Research administration
Benoît Caillaud has been head of the Language and Software Engineering department of IRISA and member of the Scientific Board of IRISA, until the successful evaluation of the laboratory by the HCERES, in February 2021. He then passed the responsability, after five years of duty, to Nicolas Markey.
11.2 Teaching - Supervision - Juries
11.2.1 Teaching
- Master : Khalil Ghorbal, Category Theory, Monads, and Computation, M2, (enseignant principal), 30h EqTD, ENS Rennes, France
- Master : Khalil Ghorbal, Modeling Physics with Differential-Algebraic Equations, M2, (enseignant principal), 25h EqTD, Ecole Polytechnique, Palaiseau, France
11.2.2 Supervision
Benoît Caillaud has co-supervised (with Annie Forêt) Aurélien Lamercerie's PhD, defended in April 2021. In a nutshell Aurélien Lamercerie's PhD thesis focuses on the combined use of natural language processing techniques and formal methods, to support formal reasoning on reactive systems behavioral requirements, expressed in a fragment of the English language.
Benoît Caillaud and Khalil Ghorbal are co-supervising Joan Thibault's PhD work. Joan Thibault is focusing on compositional computation techniques for concise and canonical representations of Boolean functions akin to Binary Decision Diagrams.
Benoît Caillaud and Khalil Ghorbal are co-supervising (with Vincent Acary) Christelle Kozaily's PhD. Christelle Kozaily is working on the characterization, by geometric methods, of the existence of solution of Linear Complementarity Problems.
11.2.3 Juries
Benoît Caillaud has been external examiner of Stefano Centomo's PhD thesis (U. Verona, Italy).
12 Scientific production
12.1 Major publications
- 1 articleBuilding a Hybrid Systems Modeler on Synchronous Languages Principles.Proceedings of the IEEE1069September 2018, 1568--1592
- 2 articleNon-standard semantics of hybrid systems modelers.Journal of Computer and System Sciences783This work was supported by the SYNCHRONICS large scale initiative of INRIA2012, 877-910
- 3 articleThe mathematical foundations of physical systems modeling languages.Annual Reviews in Control502020, 72-118
- 4 articleContracts for System Design.Foundations and Trends in Electronic Design Automation122-32018, 124-400
- 5 articleA Formally Verified Hybrid System for Safe Advisories in the Next-Generation Airborne Collision Avoidance System.International Journal on Software Tools for Technology Transfer196November 2017, 717-741
- 6 articleOperational Models for Piecewise-Smooth Systems.ACM Transactions on Embedded Computing Systems (TECS)165sOctober 2017, 185:1--185:19
12.2 Publications of the year
International peer-reviewed conferences
Doctoral dissertations and habilitation theses
Reports & preprints
12.3 Cited publications
- 13 inproceedingsGame Models for Open Systems.Verification: Theory and Practice2772Lecture Notes in Computer ScienceSpringer2003, 269-289
- 14 inproceedingsInterface automata.Proc. of the 9th ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE'01)ACM Press2001, 109--120
- 15 inproceedingsInterface-based design.In Engineering Theories of Software Intensive Systems, proceedings of the Marktoberdorf Summer SchoolKluwer2004
- 16 inproceedingsTimed Interfaces.Proc. of the 2nd International Workshop on Embedded Software (EMSOFT'02)2491Lecture Notes in Computer ScienceSpringer2002, 108--122
- 17 article20 Years of Modal and Mixed Specifications.Bulletin of European Association of Theoretical Computer Science1942008
- 18 bookPrinciples of Model Checking.MIT Press, Cambridge2008
- 19 articleBuilding a Hybrid Systems Modeler on Synchronous Languages Principles.Proceedings of the IEEE1069September 2018, 1568--1592
- 20 miscA Type-Based Analysis of Causality Loops In Hybrid Systems Modelers.Deliverable D3.1_1 v 1.0 of the Sys2soft collaborative project ''Physics Aware Software''December 2013
- 21 miscSemantics of multi-mode DAE systems.Deliverable D.4.1.1 of the ITEA2 Modrio collaborative projectAugust 2013
- 22 incollectionMulti-Mode DAE Models - Challenges, Theory and Implementation.Computing and Software Science: State of the Art and Perspectives10000Lecture Notes in Computer ScienceSpringerOctober 2019, 283-310
- 23 incollectionMulti-Mode DAE Models: Challenges, Theory and Implementation.Lecture Notes in Computer Science Celebrates 10,000th Manuscript!10000Lectures Notes in Computer Scienceto appearSpringer2019
- 24 inproceedingsStructural Analysis of Multi-Mode DAE Systems.Proceedings of the 20th International Conference on Hybrid Systems: Computation and Control, HSCC 2017Pittsburgh, PA, United StatesApril 2017
- 25 inproceedingsMultiple Viewpoint Contract-Based Specification and Design.Proceedings of the Software Technology Concertation on Formal Methods for Components and Objects (FMCO'07)5382Revised Lectures, Lecture Notes in Computer ScienceAmsterdam, The NetherlandsSpringerOctober 2008
- 26 articleThe mathematical foundations of physical systems modeling languages.Annual Reviews in Control502020, 72-118
- 27 inproceedingsA type-based analysis of causality loops in hybrid modelers.HSCC '14: International Conference on Hybrid Systems: Computation and ControlProceedings of the 17th international conference on Hybrid systems: computation and control (HSCC '14)Berlin, GermanyACM PressApril 2014, 13
- 28 inproceedingsA Compositional Approach on Modal Specifications for Timed Systems.11th International Conference on Formal Engineering Methods (ICFEM'09)5885LNCSRio de Janeiro, BrazilSpringerDecember 2009, 679-697URL: http://hal.inria.fr/inria-00424356/en
- 29 articleModal event-clock specifications for timed component-based design.Science of Computer Programming2011, URL: http://dx.doi.org/10.1016/j.scico.2011.01.007
- 30 inproceedingsRefinement and Consistency of Timed Modal Specifications.3rd International Conference on Language and Automata Theory and Applications (LATA'09)5457LNCSTarragona, SpainSpringerApril 2009, 152-163URL: http://hal.inria.fr/inria-00424283/en
- 31 inproceedingsA proposal for real-time interfaces in SPEEDS.Design, Automation and Test in Europe (DATE'10)IEEE2010, 441-446
- 32 articleModelling of Complex Systems: Systems as Dataflow Machines.Fundam. Inform.9122009, 251--274
- 33 phdthesisUn cadre formel pour l'étude des systèmes industriels complexes: un exemple basé sur l'infrastructure de l'UMTS.Ecole Polytechnique2006
- 34 articleGraphical Versus Logical Specifications.Theor. Comput. Sci.10611992, 3-20
- 35 inproceedingsCompositional design methodology with constraint Markov chains.QEST 2010Williamsburg, Virginia, United StatesSeptember 2010, URL: http://hal.inria.fr/inria-00591578/en
- 36 articleConstraint Markov Chains.Theoretical Computer Science41234May 2011, 4373-4404URL: http://hal.inria.fr/hal-00654003/en
- 37 miscDemo: IsamDAE, an Implicit Structural Analysis Tool for Multimode DAE Systems.PosterApril 2020, 1
- 38 inproceedingsImplicit Structural Analysis of Multimode DAE Systems.23rd ACM International Conference on Hybrid Systems: Computation and Control (HSCC 2020)to appearSydney, AustraliaApril 2020
- 39 inproceedingsImplicit structural analysis of multimode DAE systems.HSCC 2020 - 23rd ACM International Conference on Hybrid Systems: Computation and ControlSydney New South Wales Australia, FranceACMApril 2020, 1-11
- 40 articleThe index of general nonlinear DAEs.Numerische Mathematik722dec 1995, 173--196URL: http://dx.doi.org/10.1007/s002110050165
- 41 phdthesisA Framework for Compositional Design and Analysis of Systems.EECS Department, University of California, BerkeleyDec 2007, URL: http://www.eecs.berkeley.edu/Pubs/TechRpts/2007/EECS-2007-174.html
- 42 inproceedingsResource Interfaces.EMSOFT2003, 117-133
- 43 inproceedingsCharacterization of Temporal Property Classes.ICALP1992, 474-486
- 44 inproceedingsQuickCheck: a lightweight tool for random testing of Haskell programs.Proceedings of the Fifth ACM SIGPLAN International Conference on Functional Programming (ICFP '00), Montreal, Canada, September 18-21, 2000.2000, 268--279URL: https://doi.org/10.1145/351240.351266
- 45 bookModel Checking.MIT Press1999
- 46 bookN. J.N. J. CutlandNonstandard analysis and its applications.Cambridge Univ. Press1988
- 47 inproceedingsECDAR: An Environment for Compositional Design and Analysis of Real Time Systems.Automated Technology for Verification and Analysis - 8th International Symposium, ATVA 2010, Singapore, September 21-24, 2010. Proceedings2010, 365-370
- 48 inproceedingsTimed I/O automata: a complete specification theory for real-time systems.Proceedings of the 13th ACM International Conference on Hybrid Systems: Computation and Control, HSCC 2010, Stockholm, Sweden, April 12-15, 20102010, 91-100
- 49 inproceedingsAbstract Probabilistic Automata.VMCAI2011, 324-339
- 50 bookAnalyse non standard.Hermann1989
- 51 bookTrace Theory for Automatic Hierarchical Verification of Speed-Independent Circuits.ACM Distinguished DissertationsMIT Press1989
- 52 articleTheoretical improvements in algorithmic efficiency for network flow problems.Journal of the ACM1921972, 248--264URL: http://dx.doi.org/10.1145/321694.321699
- 53 inproceedingsState Machines in Modelica.Proc. of the Int. Modelica ConferenceModelica AssociationMunich, Germany09 2012, 37--46
- 54 inproceedingsModelica extensions for Multi-Mode DAE Systems.Proceedings of the 10th International Modelica Conference, March 10-12, 2014, Lund, SwedenLinköping University Electronic Pressmar 2014
- 55 inproceedingsModia-dynamic modeling and simulation with julia.Juliacon'18University College London, UKAugust 2018
- 56 inproceedingsSurvey of industrial applications of embedded model predictive control.2016 European Control Conference (ECC)2016, 601-601
- 57 inproceedingsA new approach to the maximum flow problem.Proceedings of the eighteenth annual ACM symposium on Theory of computing (STOC'86)1986, URL: http://dx.doi.org/10.1145/12130.12144
- 58 miscIEEE Standard VHDL Analog and Mixed-Signal Extensions, Std 1076.1-1999.1999, URL: http://dx.doi.org/10.1109/IEEESTD.1999.90578
- 59 inproceedingsModeling Time in Hybrid Systems: How Fast Is ``Instantaneous''?IJCAI1995, 1773--1781
- 60 inproceedingsFormal verification of ACAS X, an industrial airborne collision avoidance system.2015 International Conference on Embedded Software, EMSOFT 2015, Amsterdam, Netherlands, October 4-9, 20152015, 127--136
- 61 articleProving the Correctness of Multiprocess Programs.IEEE Trans. Software Eng.321977, 125-143
- 62 inproceedingsOn Modal Refinement and Consistency.Proc. of the 18th International Conference on Concurrency Theory (CONCUR'07)Springer2007, 105--119
- 63 inproceedingsA Modal Process Logic.Proceedings of the Third Annual Symposium on Logic in Computer Science (LICS'88)IEEE1988, 203-210
- 64 articleSwitched nonlinear differential algebraic equations: Solution theory, Lyapunov functions, and stability.Automatica4852012, 954--963
- 65 incollectionAn Invitation to Nonstandard Analysis.Nonstandard Analysis and its ApplicationsCambridge Univ. Press1988, 1--105
- 66 inproceedingsComputing semi-algebraic invariants for polynomial dynamical systems.Proceedings of the 11th International Conference on Embedded Software, EMSOFT 2011, part of the Seventh Embedded Systems Week, ESWeek 2011, Taipei, Taiwan, October 9-14, 2011ACM2011, 97--106URL: https://doi.org/10.1145/2038642.2038659
- 67 inproceedingsInput/Output Automata: Basic, Timed, Hybrid, Probabilistic and Dynamic.CONCUR2003, 187-188
- 68 articleA Proof of the Kahn Principle for Input/Output Automata.Inf. Comput.8211989, 81-92
- 69 bookTemporal verification of reactive systems: Safety.Springer1995
- 70 articleApplying "Design by Contract".Computer2510October 1992, 40--51URL: http://dx.doi.org/10.1109/2.161279
- 71 articleMethodology for the Design of Analog Integrated Interfaces Using Contracts.IEEE Sensors Journal1212Dec. 2012, 3329--3345
- 72 articleThe consistent initialization of differential-algebraic systems.SIAM J. Sci. Stat. Comput.921988, 213--231
- 73 articleA Simple Structural Analysis Method for DAEs.BIT Numerical Mathematics412March 2001, 364--394URL: http://dx.doi.org/10.1023/a:1021998624799
- 74 articleA Modal Interface Theory for Component-based Design.Fundamenta Informaticae1081-22011, 119-149URL: http://hal.inria.fr/inria-00554283/en
- 75 bookNon-Standard Analysis.ISBN 0-691-04490-2Princeton Landmarks in Mathematics1996
- 76 articleIndustry needs and research directions in requirements engineering for embedded systems.Requirements Engineering172012, 57--78URL: http://link.springer.com/article/10.1007/s00766-011-0144-x
- 77 phdthesisDistributional Differential Algebraic Equations.Technischen Universität Ilmenau2009
- 78 articleRegularity of distributional differential algebraic equations.MCSS2132009, 229--264