Compositional Higher-Order Reasoning about Distributed Systems
CHORDS aims to develop new theories and methods for compositional verification of distributed systems to enhance software correctness and security through rigorous mathematical reasoning.
Projectdetails
Introduction
Software systems are critical for the infrastructure of modern society, and software errors and security breaches pose enormous costs and risks. The traditional method of testing software systems is famously inadequate for guaranteeing the absence of errors and security breaches since not all execution paths are covered by testing. This is especially true for concurrent and distributed systems, where there are simply too many execution paths to test. This inadequacy has motivated research in formal methods for program verification that can offer mathematical proofs that all system behaviors meet some desirable property.
Importance of Abstraction Levels
To formally analyze and reason about software systems, it is important to consider models at many different levels of abstraction. Since many real software errors and security breaches stem from subtle problems in implementations of software systems, we focus on detailed, so-called semantic models of program execution.
Challenges in Compositional Verification
While there has been much research on abstract models for reasoning about distributed systems, there has been very little work on compositional verification of implementations of distributed systems. Compositional verification enables:
- Specification of individual software modules
- Verification of individual software modules
- Verification of their composition
This approach is key to achieving scalable methods that apply to large programs, but the development of logics and methods for compositional reasoning is hard.
Progress in Concurrent Programs
For concurrent, non-distributed programs, there has been tremendous progress in the last decade on program logics for compositional verification, particularly through the development of so-called higher-order concurrent separation logics.
Goals of CHORDS
Leveraging this progress, CHORDS will research and develop new theories, program logics, and methods for mathematically rigorous compositional reasoning about implementations of distributed systems. This initiative aims to lay the foundation for tools that will help programmers create more correct and secure distributed systems.
Financiële details & Tijdlijn
Financiële details
Subsidiebedrag | € 2.470.023 |
Totale projectbegroting | € 2.470.023 |
Tijdlijn
Startdatum | 1-9-2023 |
Einddatum | 31-8-2028 |
Subsidiejaar | 2023 |
Partners & Locaties
Projectpartners
- AARHUS UNIVERSITETpenvoerder
Land(en)
Vergelijkbare projecten binnen European Research Council
Project | Regeling | Bedrag | Jaar | Actie |
---|---|---|---|---|
Choreographies for Distributed Systems: Reasoning, Expressivity, and DevelopmentThis project aims to enhance choreographic programming by developing new constructs, verification logics, and a toolchain for effective compilation and deployment of distributed applications. | ERC Consolid... | € 1.999.498 | 2024 | Details |
LEARN: Learning Efficient Automated Reasoning on the NetLEARN automates reasoning and proof strategies for software certification, providing a web-based framework to enhance safety and security in complex computer systems, reducing costs from software errors. | ERC Proof of... | € 150.000 | 2025 | Details |
Resilient and Sustainable Software SecurityThe RS³ project aims to enhance software security by developing resilient and sustainable countermeasures through innovative testing, secure compilers, attack mitigation, and hardware improvements. | ERC Consolid... | € 1.998.851 | 2023 | Details |
Theoretical Foundations of Advanced SynthesisThis project aims to develop advanced synthesis methods for complex systems by enhancing quality measures, incorporating game-theoretic aspects, and addressing unpredictable environments. | ERC Advanced... | € 2.328.750 | 2022 | Details |
Finite-state abstractions of infinite-state systemsThis project aims to develop methods for abstracting infinite-state systems using finite-state overapproximations to enhance software verification, particularly in concurrent settings. | ERC Starting... | € 1.482.500 | 2023 | Details |
Choreographies for Distributed Systems: Reasoning, Expressivity, and Development
This project aims to enhance choreographic programming by developing new constructs, verification logics, and a toolchain for effective compilation and deployment of distributed applications.
LEARN: Learning Efficient Automated Reasoning on the Net
LEARN automates reasoning and proof strategies for software certification, providing a web-based framework to enhance safety and security in complex computer systems, reducing costs from software errors.
Resilient and Sustainable Software Security
The RS³ project aims to enhance software security by developing resilient and sustainable countermeasures through innovative testing, secure compilers, attack mitigation, and hardware improvements.
Theoretical Foundations of Advanced Synthesis
This project aims to develop advanced synthesis methods for complex systems by enhancing quality measures, incorporating game-theoretic aspects, and addressing unpredictable environments.
Finite-state abstractions of infinite-state systems
This project aims to develop methods for abstracting infinite-state systems using finite-state overapproximations to enhance software verification, particularly in concurrent settings.