Projektbeschreibung
Ein neuartiges robustes Verifikationssystem, das maschinell geprüfte mathematische Beweise konstruiert
Programmiersprachen übermitteln Anweisungen an einen Computer. Typsysteme (Regeln, die Programmkonstrukten wie Variablen und Funktionen eine Eigenschaft, den Typ, zuweisen) werden eingesetzt, um illegale Programmzustände zu definieren, zu erkennen und zu verhindern und Ausführungsfehler während ihrer Laufzeit zu vermeiden. Verfeinerungstypen können von Programmierenden verwendet werden, um die Bedeutung eines Typs zu verfeinern oder einzugrenzen. Sie sind eine vielversprechende Verifikationstechnologie, doch sie erfüllen nicht die Sicherheitsstandards von Lösern für Erfüllbarkeitsmodulotheorien, die nur solche Programme als sicher akzeptieren, die niemals gegen ihre Spezifikationen verstoßen. Im Rahmen des EU-finanzierten Projekts CRETE wird ein solides und praktisches Verfeinerungssystem erstellt, das auf reale Anwendungen wie kryptografische Protokolle anwendbar ist.
Ziel
Refinement types are a type-based, static verification technique designed to be practical. They enrich the types of an existing programming language with logical predicates to specify program properties and automatically validate these specifications using SMT solvers. Refinement types are a promising verification technology that in the last decade has spread to mainstream languages (e.g. Haskell, C, Ruby, Scala, and the ML-family) to verify sophisticated properties of real world applications, e.g. safety of cryptographic protocols, memory and resource usage, and web security.
The weakness of refinement types is that they do not meet the soundness standards set by theorem provers. A sound verification system accepts as safe only those programs that never violate their specifications. Refinement type checkers (e.g. Liquid Haskell, F*, and Stainless) approximately report five unsoundness bugs per year, as opposed to only one reported by the Coq theorem prover. This rarity of unsoundness bugs in Coq is unsurprising since Coq is designed to soundly machine check mathematical proofs. Coq's soundness design recipe though cannot be directly applied to refinement type checkers that aim to practically verify real world programs.
The goal of CRETE is to design a sound and practical refinement type system.
This is an ambitious goal that entails the development of a verification system that is as practical as refinement types and constructs machine-checked mathematical proofs. The system will be implemented on refinement type systems for mainstream languages (i.e. Haskell and Rust) and will be evaluated on real-world code, such as web applications and cryptographic protocols.
CRETE is high-risk since it aims to develop a novel program logic in which SMT automation co-exists with real world programming. Yet, CRETE is high-gain since it proposes a low-cost, high-profit approach to formal verification that aims to be integrated in mainstream software development.
Wissenschaftliches Gebiet (EuroSciVoc)
CORDIS klassifiziert Projekte mit EuroSciVoc, einer mehrsprachigen Taxonomie der Wissenschaftsbereiche, durch einen halbautomatischen Prozess, der auf Verfahren der Verarbeitung natürlicher Sprache beruht. Siehe: Das European Science Vocabulary.
Das Projektteam hat die Klassifizierung dieses Projekts bestätigt.
CORDIS klassifiziert Projekte mit EuroSciVoc, einer mehrsprachigen Taxonomie der Wissenschaftsbereiche, durch einen halbautomatischen Prozess, der auf Verfahren der Verarbeitung natürlicher Sprache beruht. Siehe: Das European Science Vocabulary.
Das Projektteam hat die Klassifizierung dieses Projekts bestätigt.
Schlüsselbegriffe
Schlüsselbegriffe des Projekts, wie vom Projektkoordinator angegeben. Nicht zu verwechseln mit der EuroSciVoc-Taxonomie (Wissenschaftliches Gebiet).
Schlüsselbegriffe des Projekts, wie vom Projektkoordinator angegeben. Nicht zu verwechseln mit der EuroSciVoc-Taxonomie (Wissenschaftliches Gebiet).
Programm/Programme
Mehrjährige Finanzierungsprogramme, in denen die Prioritäten der EU für Forschung und Innovation festgelegt sind.
Mehrjährige Finanzierungsprogramme, in denen die Prioritäten der EU für Forschung und Innovation festgelegt sind.
-
HORIZON.1.1 - European Research Council (ERC)
HAUPTPROGRAMM
Alle im Rahmen dieses Programms finanzierten Projekte anzeigen
Thema/Themen
Aufforderungen zur Einreichung von Vorschlägen sind nach Themen gegliedert. Ein Thema definiert einen bestimmten Bereich oder ein Gebiet, zu dem Vorschläge eingereicht werden können. Die Beschreibung eines Themas umfasst seinen spezifischen Umfang und die erwarteten Auswirkungen des finanzierten Projekts.
Aufforderungen zur Einreichung von Vorschlägen sind nach Themen gegliedert. Ein Thema definiert einen bestimmten Bereich oder ein Gebiet, zu dem Vorschläge eingereicht werden können. Die Beschreibung eines Themas umfasst seinen spezifischen Umfang und die erwarteten Auswirkungen des finanzierten Projekts.
Finanzierungsplan
Finanzierungsregelung (oder „Art der Maßnahme“) innerhalb eines Programms mit gemeinsamen Merkmalen. Sieht folgendes vor: den Umfang der finanzierten Maßnahmen, den Erstattungssatz, spezifische Bewertungskriterien für die Finanzierung und die Verwendung vereinfachter Kostenformen wie Pauschalbeträge.
Finanzierungsregelung (oder „Art der Maßnahme“) innerhalb eines Programms mit gemeinsamen Merkmalen. Sieht folgendes vor: den Umfang der finanzierten Maßnahmen, den Erstattungssatz, spezifische Bewertungskriterien für die Finanzierung und die Verwendung vereinfachter Kostenformen wie Pauschalbeträge.
HORIZON-ERC - HORIZON ERC Grants
Alle im Rahmen dieses Finanzierungsinstruments finanzierten Projekte anzeigen
Aufforderung zur Vorschlagseinreichung
Verfahren zur Aufforderung zur Einreichung von Projektvorschlägen mit dem Ziel, eine EU-Finanzierung zu erhalten.
Verfahren zur Aufforderung zur Einreichung von Projektvorschlägen mit dem Ziel, eine EU-Finanzierung zu erhalten.
(öffnet in neuem Fenster) ERC-2021-STG
Alle im Rahmen dieser Aufforderung zur Einreichung von Vorschlägen finanzierten Projekte anzeigenGastgebende Einrichtung
Finanzieller Nettobeitrag der EU. Der Geldbetrag, den der Beteiligte erhält, abzüglich des EU-Beitrags an mit ihm verbundene Dritte. Berücksichtigt die Aufteilung des EU-Finanzbeitrags zwischen den direkten Begünstigten des Projekts und anderen Arten von Beteiligten, wie z. B. Dritten.
28223 Pozuelo De Alarcon
Spanien
Die Gesamtkosten, die dieser Organisation durch die Beteiligung am Projekt entstanden sind, einschließlich der direkten und indirekten Kosten. Dieser Betrag ist Teil des Gesamtbudgets des Projekts.