SoVer-HySiM - Service-oriented Verification of Hybrid Simulink Models

Embedded control systems combine discrete and continuous behavior. To cope with the immense complexity of the resulting systems, they are increasingly designed with model-driven development and tools like Matlab Simulink. At the same time, application of embedded systems in safety-critical areas, like in the automotive industry or medical context, require high safety standards. In this project, we investigate a formally well-founded, service-oriented design and verification approach for Simulink. The key ideas of our approach are threefold: First, we propose a service-oriented design approach for Simulink, where we introduce services for Simulink, hybrid contracts to cleanly define these services, and feature models to model their variability. Second, we propose a transformation of Simulink models into the expressive and formally well-defined differential dynamic logic. This enables the formal verification of hybrid systems modeled in Simulink using the powerful interactive theorem prover KeYmaera X. To overcome scalability issues, we enable compositional verification by replacing the inner structure of services by their contracts for system verification.

Contact: Prof. Dr. Paula Herber, Timm Liebrenz, MSc

Access to our framework

We intend to make our framework publically available in the near future.
If you like to try out the current version of our tools, please contact us.

Example Models and Proofs

Temperature Control Service

Simulink Model Service Temperature Control

All KeYmaera X files and the Simulink model as zip ServiceTemperatureControl.zip

Temperature Control System

Simulink model Temperature Control System

All KeYmaera X files and the Simulink model as zip TemperatureControlSystem.zip

Temperature Control System (concrete)

Property to Proof KeYmaera X Model KeYmaera X Proof
Transformed Model TemperatureControlSystemConcrete.kyx
Temperature Range TemperatureControlSystemConcrete_Range.kyx TemperatureControlSystemConcrete_Range_Proof.kyp
No Rapid Switching TemperatureControlSystemConcrete_Switching.kyx ---

Temperature Control System (abstracted)

Generic Infusion Pump

Simulink Model  Gip

All KeYmaera X files and the Simulink Model as zip GIP.zip

KeyMaera X files for the Patient

Property to Proof
KeYmaera X Model
KeYmaera X Proof
Transformed Model PatientInput.kyx
Input Processing Patientinput_Processing.kyx Patientinput_Processing_Proof.kyx

KeyMaera X files for the Input Processing

Property to Proof
KeYmaera X Model
KeYmaera X Proof
Transformed Model Inputprocessing.kyx
Output 0 Inputprocessing_Out0.kyx Inputprocessing_Out0_Proof.kyx
Output 1 Inputprocessing_Out1.kyx Inputprocessing_Out1_Proof.kyx

KeyMaera X files for DrugInBlood

KeyMaera X files for the Controller

Property to Proof
KeYmaera X Model
KeYmaera X Proof
Transformed Model Controller.kyx
Valied Pumping Controller_Valid.kyx Controller_Valid_Proof.kyx
Crtical Concentration Controller_Critical.kyx Controller_Critical_Proof.kyx

KeyMaera X files for WarningGenerator

KeyMaera X files for the Pump

Property to Proof
KeYmaera X Model
KeYmaera X Proof
Transformed Model Pump.kyx
Normal Pumping Pump Normal.kyx Pump Normal Proof.kyx
No Pumping Pump Stop.kyx Pump Stop Proof.kyx
Max Pumping Pump Max.kyx Pump Max Proof.kyx

KeyMaera X files for Tank

Property to Proof
KeYmaera X Model
KeYmaera X Proof
Transformed Model Tank.kyx
No Consumption Tank Noconsumption.kyx Tank Noconsumption Proof.kyx
Normal Consumption Tank Normalconsumption.kyx Tank Normalconsumption Proof.kyx
Tank Change Tank Change.kyx Tank Change Proof.kyx

KeyMaera X files for the Power Source

Property to Proof
KeYmaera X Model
KeYmaera X Proof
Transformed Model Powersource.kyx
Positve Output Powersource Positivevoltage.kyx Powersource Positivevoltage Proof.kyx
Battery Change Powersource Change.kyx Powersource Change Proof.kyx