COMPONENT-BASED FORMAL VERIFICATION
project PN-III-P2-2.1-PED-2019-0955, funded by UEFISCDI under contract 404PED/2020
Domain | 2. Information and communication technologies, space and security |
Subdomain | 2.1 Information and Communication Technologies |
- Project summary
- Members
- References
- Scientific reports
- Events
- Project implementation and deliverables
- Links
Project summary
The field of formal specification and verification of software and hardware systems is without alternative in safety-critical or security areas of system development where one cannot take the risk of failure. This applies to medical areas, aviation, military, etc., and in general to any area where human life cannot be compromised. One of the system-development techniques that may benefit naturally from using formal methods is component-based software engineering. This represents one of the modern realizations of the very important and all-pervading engineering principle of modularization. The goal of this project is to develop an integrated formal-specification-and-verification environment for component-based system development that includes:
- a dedicated logic-based specification language,
- tool support for the language consisting of a compiler, corresponding APIs, and a user interface,
- methodologies for using the language both in specification and for performing formal verifications,
- a library of examples and case studies.
Members
- Răzvan Diaconescu
- CS1, project director (Simion Stoilow Institute of Mathematics of the Romanian Academy – IMAR)
- Ionuț Țuțu
- CS3, member (Simion Stoilow Institute of Mathematics of the Romanian Academy – IMAR)
References
The technology of the project is based on joining two base
sub-technologies, namely the mathematical model of
behavioural specification of hierarchical object composition
and the Maude programming environment.
The base references for these are:
- Behavioural specification for hierarchical object composition, Theoretical Computer Science 343(3):305-331, Elsevier (2005)
- All About Maude - A High-Performance Logical Framework, Springer (2007)
Scientific Reports
- Scientific Report of the project for the period Oct. 2020 – Dec. 2021
- Scientific Report of the project for the period Jan. 2022 – Oct. 2022
- Final Project Report
Events
- tool presentation given by I. Țuțu at the Logic Seminar, Nov. 2021
- conference talk given by I. Țuțu at WADT 2022, Jun. 2022
Project implementation and deliverables
- Stage 1: COMP language definition (2020)
-
This includes the following planned deliverables, which have all been fully realized:
- The mathematical foundations of the language
- The syntax and semantics of the language
- Stage 2: Methodologies and code generation (2021)
-
This includes the following planned deliverables, which have all been fully realized:
- Specification and verification methodologies for using the COMP system
- The COMP toolset, including a parser, static analyser, and code generator
- The COMP reference manual, which covers all technical aspects of the language
- Stage 3: Formal verification (2022)
-
This includes the following planned deliverables, which have all been fully realized:
- Tool support for formal verification and debugging
- Documentation and examples, including the COMP user guide, a library of examples, and a medium-sized case study on the formal specification and analysis of a system of ATMs
- Dissemination, including an online tutorial, the technical website of the COMP language and toolset, and a conference talk given at WADT 2020
Links
- The COMP system (including documentation, executables, and a library of examples)
- The COMP repository (including source code for the tool support)