Skip to main content

What is an Algorithm? Extensional and Intensional Equivalences between Programs

Periodic Reporting for period 1 - Walgo (What is an Algorithm? Extensional and Intensional Equivalences between Programs)

Reporting period: 2015-09-01 to 2017-08-31

Walgo focuses on the notion of Algorithms. While it is a central notion in computer science, we do not have any scientifically sound definition of an Algorithm.
Starting from a re-reading of Rice's Theorem, Walgo consider an algorithm to be an equivalence class for a specific but yet unknown equivalence (the algorithmic equivalence). In order to find this specific equivalence, or at least to get clues about it, Walgo studies all equivalences between programs and uses standard mathematical tols to discover properties of this well defined set. Walgo thus hopes to shed some light on the notion of Algorithm and direct future research toward more precise goals.
"I did an in-depth study of the order-theoretic properties of the lattice of equivalences between programs. This result in three published (or under revision) results:
- a complete characterisation of the possible cardinalities of chains, anti-chains and sets of complement in this lattice;
- a study of the interaction between the order-theoretic properties and the decidability of set, a cornerstone property of computer science;
- a strong intentional version of Rice's Theorem, setting hard boundaries on what is and isn't possible to study.

I co-supervised a PhD. thesis, during which we transfered the very theoretical research in Implicit Complexity into the more applied research of Compilers design. We developed a pass for the LLVM compiler which is able to detect possible optimisations that are currently not done, including, in some case, optimisations creating a superlinear speedup. These resulted in three published papers.

I submitted my Habilitation thesis, ""Implicit Complexity in Theory and Practice"", summing up my work in the past 15 years. The dissertation focuses on the notion of Quasi-Interpretation, that I introduced earlier, and on the work done during Walgo.

I obtained a strong intentional version of Rice's Theorem, thus pushing further away the boundary of undecidable properties of programs.

Together with my PhD. student, we initiated technological transfer of the Implicit Complexity theory into the mainstream compiler LLVM and suggest new optimisations that can create a superlinear speedup.