Summary
This project aims at providing a mathematical understanding of software exploiting modern distributed computer architectures, through the study of type systems for concurrent programs from a logical perspective. Type systems are an essential part of modern programming languages, that have proved to be a reliable support for the development of trustworthy software in the standard setting of sequential (functional) computing. However, the mathematical foundations and associated techniques underlying the type systems of functional programming languages have not yet been transferred to the distributed setting, although this is a crucial step in the development of concurrent programming languages.
A cornerstone of the development of functional type systems was the connection between proof systems, in formal logic, and programming languages. Proof theory is a flexible tool that naturally leads to a precise, mathematical specification of type systems that can be very expressive. The goal of the project is to leverage recent work in computational logic (in particular linear logic and its extensions) to design type systems for process calculi (a mathematical representation of distributed software) that support the features necessary to the development of a programming language. Specifically, the question of the sequentiality of computing steps in this parallel setting is the major point of contention, that needs to be addressed for such a programming language to be reasonably conceived. This proof-theoretical approach to concurrency theory (the mathematical study of distributed software) is the key to the development of type systems that would validate well-behaved distributed programs: the main objectives of the project are the integration of explicit sequentiality to state-of-the-art systems, and the establishment of a precise relation between the typeability of a program (its validity according to the type system) and its implementability.
A cornerstone of the development of functional type systems was the connection between proof systems, in formal logic, and programming languages. Proof theory is a flexible tool that naturally leads to a precise, mathematical specification of type systems that can be very expressive. The goal of the project is to leverage recent work in computational logic (in particular linear logic and its extensions) to design type systems for process calculi (a mathematical representation of distributed software) that support the features necessary to the development of a programming language. Specifically, the question of the sequentiality of computing steps in this parallel setting is the major point of contention, that needs to be addressed for such a programming language to be reasonably conceived. This proof-theoretical approach to concurrency theory (the mathematical study of distributed software) is the key to the development of type systems that would validate well-behaved distributed programs: the main objectives of the project are the integration of explicit sequentiality to state-of-the-art systems, and the establishment of a precise relation between the typeability of a program (its validity according to the type system) and its implementability.
Unfold all
/
Fold all
More information & hyperlinks
Web resources: | https://cordis.europa.eu/project/id/708139 |
Start date: | 01-10-2016 |
End date: | 30-09-2018 |
Total budget - Public funding: | 159 460,80 Euro - 159 460,00 Euro |
Cordis data
Original description
This project aims at providing a mathematical understanding of software exploiting modern distributed computer architectures, through the study of type systems for concurrent programs from a logical perspective. Type systems are an essential part of modern programming languages, that have proved to be a reliable support for the development of trustworthy software in the standard setting of sequential (functional) computing. However, the mathematical foundations and associated techniques underlying the type systems of functional programming languages have not yet been transferred to the distributed setting, although this is a crucial step in the development of concurrent programming languages.A cornerstone of the development of functional type systems was the connection between proof systems, in formal logic, and programming languages. Proof theory is a flexible tool that naturally leads to a precise, mathematical specification of type systems that can be very expressive. The goal of the project is to leverage recent work in computational logic (in particular linear logic and its extensions) to design type systems for process calculi (a mathematical representation of distributed software) that support the features necessary to the development of a programming language. Specifically, the question of the sequentiality of computing steps in this parallel setting is the major point of contention, that needs to be addressed for such a programming language to be reasonably conceived. This proof-theoretical approach to concurrency theory (the mathematical study of distributed software) is the key to the development of type systems that would validate well-behaved distributed programs: the main objectives of the project are the integration of explicit sequentiality to state-of-the-art systems, and the establishment of a precise relation between the typeability of a program (its validity according to the type system) and its implementability.
Status
CLOSEDCall topic
MSCA-IF-2015-EFUpdate Date
28-04-2024
Images
No images available.
Geographical location(s)
Structured mapping
Unfold all
/
Fold all