Alexander Weigl
Dr. rer. nat. Alexander Weigl
Executive Manager of HGF Pilot Program Core Informatics
Post-Doctoral Researcher
Building 50.34; Room 15?
Am Fasanengarten 5
DE-76131 Karlsruhe
Germany
Phone: +49 721 608 44324
Fax: +49 721 608 44021
Projects
KiKIT
In the information age, computers are a key driver in all areas of research, technology, business, and society. Therefore, high-quality software, hardware, and AI models are necessary to maintain digital sovereignty and need provisional research. Currently, research on core informatics, i.e. research on fundamental methods of informatics that can be applied in various applications and domains, is a blind spot in the Helmholtz Association, which has informatics research but mainly weaved into their specific classical research area.
Through the Pilot Program Kerninformatik am KIT (KiKIT), the research on core informatics is to become a focus of Helmholtz research. KiKIT focuses on the research of novel general methods in the fields of algorithm and software engineering, data analysis, and machine learning as well as hardware and network systems. Moreover, KiKIT pursues the goal of providing stable research tools (research software, AI models, etc.) to accelerate other research activities within Helmholtz as well as to support innovation in industry.
Currently, there are 26 PIs, and 40 researchers in 36 projects working on topics like Sustainability, Correctness, Explainability, and Performance of Software and Hardware following the goal of strengthening Germany’s sovereignty in informatics.
SofDCar
All project partners of the SofDCar Alliance are focussing their research on the challenges of future E/E & SW architecture in vehicles.
Each vehicle is seen as one piece in a network of all vehicles and the infrastructure. Its integration will be enabled via “data loops” and new-type “digital twins”, thereby paving the path to digital sustainability (of today’s and tomorrow’s vehicle generations) and enabling efficient data structures and innovative use cases throughout the whole vehicle lifetime (Re-Deployment).
This project is part of a government-sponsored research program. It is sponsored by the German Ministry of Business Affairs and Climate Control (BMWK).
CHANGE APS
KeY
The KeY System is a formal software development tool that aims to integrate design, implementation, formal specification, and formal verification of object-oriented software as seamlessly as possible. At the core of the system is a novel theorem prover for the first-order Dynamic Logic for Java with a user-friendly graphical interface. The project was started in November 1998 at the University of Karlsruhe. It is now a joint project of KIT, Chalmers University of Technology, Gothenburg, and TU Darmstadt. The KeY tool is available for download.
KASTEL
The main topics intelligent infrastructure, cloud computing and public security challenge the IT security of the future. In addition to the classical term of security one has to deal with threats from the inside as well. It is not enough anymore only to look at security issues of system components. We have to focus on transdisciplinary methods. The Kompetenzzentrum für Angewandte Sicherheits-TEchnoLogie (KASTEL) is a research center for cyber security and combine several areas of IT security and their users.
IMPROVE APS
The vision for this project is to advance technology such that regression verification methods are available that will be routinely used for ensuring correctness in the evolution processes for long-living reliable systems requiring frequent re-validation. The goal of regression verification is to formally prove that software remains correct through its evolution, changes have the desired effect, and no new bugs are introduced. Regression verification avoids the main bottleneck for the routine practical use of formal verification, namely the need to write full functional specifications (which is a huge effort). Also, given two program versions or variants that are both complex but similar to each other, the effort for verifying the relation between them mainly depends on the difference between the programs and not on their overall size and complexity.
DeduSec: Program-level Specification and Deductive Verification of Security Properties
Reliably Secure Software Systems – RS³ In recent years tremendous progress has been achieved in formal verification of functional properties of computer programs. At the same time seminal papers have been published showing that it is in principle possible to formulate information-flow problems as proof obligations in program logics. The overall goal of the project is to leverage these advances together with our own experience in formal methods for functional properties in order to specify and verify security properties. DeduSec Project
Software
CAgen — Full Refinement Approach for Design-by-Contract of Reactive System in C
cagen
is a prototypical helper for the work with contract automata.
This program offers you the construction of proof obligations based on a system description and contract automata. There are different proof obligations.
We recommend you to use nuXmv, cbmc and seahorn.
cagen at github Gecko is a graphical modelling tool for contract automata
VerifAPS — Library for the Verification of Automated Producton System Software
VerifAPS (Verifiaction for Automated Producton System) is a library for supporting the verification of software for automation manufacturing domain.
Allows the parsing and analyzation of Structured Text, Sequential Function Chart, Instruction List and Function Block Diagrams. Ladder Diagrams are incoming. This also includes reading from PCLOpenXML and Object-oriented extension (IEC 61131 2013). The library offers symbolic execution expressible in SMV or SMT files. Controller for nuXmv/nuSMV is including, e.g., parsing of counter example.
Upon VerifAPS lives geteta and stvs, which offers functionalities for *Generalized Test Tables
Generalised test tables extend the concept of test tables, which are already frequently used in quality management of reactive systems. The main idea is to allow more general table entries, thus enabling a table to capture not just a single test case but a family of similar behavioural cases. We show how generalised test tables can be encoded into verification conditions for state-of-the-art model checkers. — from the paper
stvs provides a graphical user interface for the verification of Structured Text source code against generalized test tables. It is a graphical frontend for the geteta backend, providing a useful and beautiful user interface, e.g., a visualization of specification violations. stvs is open source, provided under GNU Public License v3.
Features includes
- Verification of Structured Text against one or more specified generalized test tables
- Transform a generalized test table into a concrete test table
- Source Code Editor for Structured Text
The Backend geteta ∣ The Frontend stvs
jmltoolkit
Parser and Tools for the processing of the Java Modeling Language
- https://github.com/jmltoolkit/jmlparser
- https://github.com/jmltoolkit/vscode-jml
- https://github.com/wadoon/JJBMC
The KeY theorem prover
- smt2key – Translation of SMT files to KeY.
- key-citool – Use KeY inside your continuos integration
- key-interactionlog – log your activities during the use of KeY
- key-tacletdoc –
- Pygments support for KeY/JML files
#PI — Quantified Information Flow of C programs
sharpPI is a tool for quantified information flow analysis with support Shannon Entropy based on the SAT-based approach of Vladimir Klebanov.
QIF with sharpPI has following features:
- applicable for the C language
- support Shannon entropy (counts images and pre-images)
- deterministic and non-deterministic programs
- bounds calculation
ApproxMC-p(y)
ApproxMC-p is a (δ, ϵ)-counter for models of propositional formulas with support for projection. In short, ApproxMC-p calculates an model count M for an propositional formula φ with projection on Δ, s.t. the confidence δ and the tolerance ϵ is maintained.
Smaller Tools
flavium – an benchmarking area for performance evaluation of SAT/SMT solution during the Formal System course.
bloatcache – A re-implementation of memcache for the VerifyThis LongTermChallenge on Memcached
xorblast – A CNF preprocessor for xor constraints with support of Gauss-Jordan elimination.
#PI –
Medical Simuation Markup Language (MSML) – The medical simulation markup language (MSML) is a flexible XML-based description for the biomechanical modeling workflow and finite-element based biomechanical models. MSML helps you to create biomechanical models from tomographic data, export them to FE solvers and analyze the results. It is very flexible as already existing components (e.g. segmentation algorithms, meshers) can usually be integrated into the framework by providing a single additional XML-file. MSML was created in the SFB125 in a coorperation between KIT and DKFZ. msml at Github.
Teaching
Sommer term 2024
- Proseminar Formal System Engineering
Winter term 2023/24
- Proseminar Formal System Engineering
- Praxis der Software-Entwicklung: Graphical Editor for Contract Automata
Sommer term 2023
SS 2016: Proseminar Desasters in der Software-Sicherheit Topics are:
Verifikation von med. Richtlinien Probabilistisches Model-Checking
WS 2015/16: Proseminar Desasters in der Software-Sicherheit Topics are:
Buffer Overflow
Storing Passwords
SS 2015:Proseminar Desasters in der Software-Sicherheit Topics are:
Therac-25 Desaster
Smartcard Vunerability
Open Theses
Publications
2021
- Alexander Weigl, Mattias Ulbrich, Shmuel S. Tyszberowicz, Jonas Klamroth
Runtime Verification of Generalized Test Tables
NASA Formal Methods - 13th International Symposium, NFM 2021, Virtual Event, May 24-28, 2021, Proceedings
[doi | bib]
2020
- Alexander Weigl, Mattias Ulbrich, Suhyun Cha, Bernhard Beckert, Birgit Vogel-Heuser
Relational Test Tables: A Practical Specification Language for Evolution and Security
FormaliSE@ICSE 2020: 8th International Conference on Formal Methods in Software Engineering, Seoul, Republic of Korea, July 13, 2020
[doi | bib] - Alexander Weigl, Mattias Ulbrich, Daniel Lentzsch
Modular Regression Verification for Reactive Systems
Leveraging Applications of Formal Methods, Verification and Validation: Engineering Principles - 9th International Symposium on Leveraging Applications of Formal Methods, ISoLA 2020, Rhodes, Greece, October 20-30, 2020, Proceedings, Part II
[doi | bib] - Marieke Huisman, Raúl E. Monti, Mattias Ulbrich, Alexander Weigl
The VerifyThis Collaborative Long Term Challenge
Deductive Verification – The next 20 years - Alexander Weigl, Mattias Ulbrich, Suhyun Cha, Bernhard Beckert Birgit Vogel-Heuser
Relational Test Tables: A Practical Specification Language for Evolution and Security
n/a
2019
- Bernhard Beckert, Jakob Mund, Mattias Ulbrich, Alexander Weigl
Formal Verification of Evolutionary Changes
Managed Software Evolution
[doi | bib] - Suhyun Cha, Mattias Ulbrich, Alexander Weigl, Bernhard Beckert, Kathrin Land, Birgit Vogel-Heuser
On the Preservation of the Trust by Regression Verification of PLC software for Cyber-Physical Systems of Systems
17th IEEE International Conference on Industrial Informatics, INDIN 2019, Helsinki, Finland, July 22-25, 2019
[doi | bib] - Alexander Weigl
Provably Forgetting of Information in Manufacturing Systems: Verification of the KASTEL Industry Demonstrator
n/a
[doi] - Alexander Weigl
KASTEL Industry 4.0 Demonstrator: Provably Forgetting Information in PLC software
n/a
[doi]
2018
- Suhyun Cha, Alexander Weigl, Mattias Ulbrich, Bernhard Beckert, Birgit Vogel-Heuser
Achieving delta description of the control software for an automated production system evolution
14th IEEE International Conference on Automation Science and Engineering, CASE 2018, Munich, Germany, August 20-24, 2018
[doi | bib] - Bernhard Beckert, Timo Bingmann, Moritz Kiefer, Peter Sanders, Mattias Ulbrich, Alexander Weigl
Relational Equivalence Proofs Between Imperative and MapReduce Algorithms
Verified Software. Theories, Tools, and Experiments - 10th International Conference, VSTTE 2018, Oxford, UK, July 18-19, 2018, Revised Selected Papers
[doi | bib] - Suhyun Cha, Alexander Weigl, Mattias Ulbrich, Bernhard Beckert, Birgit Vogel-Heuser
Applicability of generalized test tables: a case study using the manufacturing system demonstrator xPPU
Automatisierungstechnik, Vol. 66, N. 10
[doi | bib] - Bernhard Beckert, Timo Bingmann, Moritz Kiefer, Peter Sanders, Mattias Ulbrich, Alexander Weigl
Proving Equivalence Between Imperative and MapReduce Implementations Using Program Transformations
Proceedings Third Workshop on Models for Formal Analysis of Real Systems and Sixth International Workshop on Verification and Program Transformation, MARS/VPT@ETAPS 2018, Thessaloniki, Greece, 20th April 2018
[doi | bib] - Sarah Grebing, An Thuy Tien Luong, Alexander Weigl
Adding Text-Based Interaction to a Direct-Manipulation Interface for Program Verification – Lessons Learned
13th International Workshop on User Interfaces for Theorem Provers (UITP 2018)
2017
- Bernhard Beckert, Suhyun Cha, Mattias Ulbrich, Birgit Vogel-Heuser, Alexander Weigl
Generalised Test Tables: A Practical Specification Language for Reactive Systems
Integrated Formal Methods - 13th International Conference, IFM 2017, Turin, Italy, September 20-22, 2017, Proceedings
[doi | bib] - Suhyun Cha, Sebastian Ulewicz, Birgit Vogel-Heuser, Alexander Weigl, Mattias Ulbrich, Bernhard Beckert
Generation of monitoring functions in production automation using test specifications
15th IEEE International Conference on Industrial Informatics, INDIN 2017, Emden, Germany, July 24-26, 2017
[doi | bib] - Alexander Weigl, Franziska Wiebe, Mattias Ulbrich, Sebastian Ulewicz, Suhyun Cha, Michael Kirsten, Bernhard Beckert, Birgit Vogel-Heuser
Generalized test tables: A powerful and intuitive specification language for reactive systems
15th IEEE International Conference on Industrial Informatics, INDIN 2017, Emden, Germany, July 24-26, 2017
[doi | bib]
2016
- Alexander Weigl
Efficient SAT-Based Pre-image Enumeration for Quantitative Information Flow in Programs
Data Privacy Management and Security Assurance - 11th International Workshop, DPM 2016 and 5th International Workshop, QASA 2016, Heraklion, Crete, Greece, September 26-27, 2016, Proceedings
[doi | bib] - Vladimir Klebanov, Alexander Weigl, Jörg Weisbarth
Sound Probabilistic #SAT with Projection
Proceedings 14th International Workshop Quantitative Aspects of Programming Languages and Systems, QAPL 2016, Eindhoven, The Netherlands, April 2-3, 2016
[doi | bib] - Sebastian Ulewicz, Mattias Ulbrich, Alexander Weigl, Michael Kirsten, Franziska Wiebe, Bernhard Beckert, Birgit Vogel-Heuser
A Verification-Supported Evolution Approach to Assist Software Application Engineers in Industrial Factory Automation
IEEE International Symposium on Assembly and Manufacturing (ISAM 2016)
[doi]
2015
- Bernhard Beckert, Mattias Ulbrich, Birgit Vogel-Heuser, Alexander Weigl
Regression Verification for Programmable Logic Controller Software
n/a - Bernhard Beckert, Mattias Ulbrich, Birgit Vogel-Heuser, Alexander Weigl
Regression Verification for Programmable Logic Controller Software
Formal Methods and Software Engineering - 17th International Conference on Formal Engineering Methods, ICFEM 2015, Paris, France, November 3-5, 2015, Proceedings
[doi | bib] - Sebastian Ulewicz, Birgit Vogel-Heuser, Mattias Ulbrich, Alexander Weigl, Bernhard Beckert
Proving equivalence between control software variants for Programmable Logic Controllers: Using Regression Verification to Reduce Unneeded Variant Diversity
IEEE International Conference on Emerging Technologies and Factory Automation, ETFA
[doi] - Alexander Sebastian Weigl
Regression Verification for Programmable Logic Controller Software
Karlsruhe Institute of Technology
2012
- Alexander Weigl
Algorithms for Forbidden Pattern Recognition in Transition Diagrams
University of Applied Science