Skip to main content
Przejdź do strony domowej Komisji Europejskiej (odnośnik otworzy się w nowym oknie)
polski polski
CORDIS - Wyniki badań wspieranych przez UE
CORDIS

Developing Correct Concurrent Software Using Types

Opis projektu

Nowe języki programowania na potrzeby współbieżności

Nowoczesne programy komputerowe wykonują wiele zadań naraz, co jest niezbędne do przetwarzania dużych zbiorów danych i obsługi wielu użytkowników jednocześnie. Jednymi z najtrudniejszych do opracowania są prawidłowo działające programy współbieżne, przez co trudno jest określić, czy posiadają one właściwości, takie jak „program zawsze odpowie” lub „prywatne dane nie mogą wyciec do atakujących”. Co więcej, nie ma gwarancji, że właściwości te zostaną zachowane po kompilacji do skutecznego kodu maszynowego. Z tego względu zespół finansowanego przez ERBN projektu COCONUT zamierza opracować podstawy nowych języków programowania, które w sposób automatyczny będą zapewniać, by ważne właściwości (takie jak te wspomniane powyżej) były utrzymywane dzięki konstrukcji. Cele te zostaną osiągnięte poprzez połączenie i rozszerzenie wyników uzyskanych na podstawie teorii języków programowania, teorii współbieżności, kompilatorów, a także systemów bezpieczeństwa i systemów wspomagających dowodzenie twierdzeń.

Cel

Modern society runs on concurrent software: different processes (threads) jointly process massive data sets and serve many clients and users simultaneously. Good methods to ensure the correctness of concurrent software are lacking due to the enormous space of concurrent executions. But it is vital to have some correctness guarantees, e.g. “every thread will eventually perform an action” (liveness) or “private data cannot leak to an attacker” (non-interference). Recent years saw an active development and industry adoption of new programming languages that automatically enforce correctness guarantees through a type system that disables programmers from writing “bad programs”. Yet, existing concurrent programming languages cannot enforce “deep” concurrency properties such as liveness and non-interference. Moreover, there is no guarantee that the good properties of high-level programs are preserved after compilation to executable machine code, because compilers perform increasingly complicated unverified optimizations.

The COCONUT project will design and verify new type systems, compilers and logical abstractions for fully-fledged concurrent programming languages that automatically enforce deep program properties. COCONUT will address this objective through rigorous machine-checked foundations, leveraging recent innovations in the development of powerful program logics for concurrency (in which I played a key role). The foundations are essential to prove the validity of our results, but they will also play a key role for experiments and to bring together recent results from the fields of programming language theory, concurrency theory, compilers, security and proof assistants.

COCONUT will impact the development of future concurrent programming languages but also the practice of concurrent programming itself, and thereby contribute towards the grand challenge of enabling software engineers to write correct and secure concurrent software.

Dziedzina nauki (EuroSciVoc)

Klasyfikacja projektów w serwisie CORDIS opiera się na wielojęzycznej taksonomii EuroSciVoc, obejmującej wszystkie dziedziny nauki, w oparciu o półautomatyczny proces bazujący na technikach przetwarzania języka naturalnego. Więcej informacji: Europejski Słownik Naukowy.

Aby użyć tej funkcji, musisz się zalogować lub zarejestrować

Słowa kluczowe

Słowa kluczowe dotyczące projektu wybrane przez koordynatora projektu. Nie należy mylić ich z pojęciami z taksonomii EuroSciVoc dotyczącymi dziedzin nauki.

Program(-y)

Wieloletnie programy finansowania, które określają priorytety Unii Europejskiej w obszarach badań naukowych i innowacji.

Temat(-y)

Zaproszenia do składania wniosków dzielą się na tematy. Każdy temat określa wybrany obszar lub wybrane zagadnienie, których powinny dotyczyć wnioski składane przez wnioskodawców. Opis tematu obejmuje jego szczegółowy zakres i oczekiwane oddziaływanie finansowanego projektu.

System finansowania

Program finansowania (lub „rodzaj działania”) realizowany w ramach programu o wspólnych cechach. Określa zakres finansowania, stawkę zwrotu kosztów, szczegółowe kryteria oceny kwalifikowalności kosztów w celu ich finansowania oraz stosowanie uproszczonych form rozliczania kosztów, takich jak rozliczanie ryczałtowe.

HORIZON-ERC - HORIZON ERC Grants

Wyświetl wszystkie projekty finansowane w ramach tego programu finansowania

Zaproszenie do składania wniosków

Procedura zapraszania wnioskodawców do składania wniosków projektowych w celu uzyskania finansowania ze środków Unii Europejskiej.

(odnośnik otworzy się w nowym oknie) ERC-2024-COG

Wyświetl wszystkie projekty finansowane w ramach tego zaproszenia

Instytucja przyjmująca

STICHTING RADBOUD UNIVERSITEIT
Wkład UE netto

Kwota netto dofinansowania ze środków Unii Europejskiej. Suma środków otrzymanych przez uczestnika, pomniejszona o kwotę unijnego dofinansowania przekazanego powiązanym podmiotom zewnętrznym. Uwzględnia podział unijnego dofinansowania pomiędzy bezpośrednich beneficjentów projektu i pozostałych uczestników, w tym podmioty zewnętrzne.

€ 2 000 000,00
Koszt całkowity

Ogół kosztów poniesionych przez organizację w związku z uczestnictwem w projekcie. Obejmuje koszty bezpośrednie i pośrednie. Kwota stanowi część całkowitego budżetu projektu.

€ 2 000 000,00

Beneficjenci (1)

Moja broszura 0 0