Active Computing & AI Mathematics & Statistics

Resources in Computation

In plain English

AI plain-English summary

Computer programs constantly bump up against hard limits on memory and processing power, yet computer scientists lack a single, unified way to think about these constraints. This matters because the field currently treats resource limits in two disconnected ways. One approach focuses on precise, quantitative questions—how much time or memory a program needs to run. The other deals with conceptual abstractions that underpin modern programming languages, such as how to manage data ownership or parallel tasks. These two worlds rarely talk to each other, which slows progress. A programmer who wants to write efficient code for a smartphone, for instance, cannot easily draw on theoretical insights about resource management from high-level language design. This project aims to build a unified theory of resources that bridges that gap. If it succeeds, computer scientists will gain new tools and methods that apply across both quantitative and conceptual domains. The work is fundamental science—it will not produce a new app or faster processor tomorrow. But similar foundational work on computational complexity and type theory in past decades eventually shaped everything from database systems to secure software. A deeper, more general understanding of how programs manage resources could, over time, lead to more efficient compilers, better programming languages, and systems that make smarter use of the hardware they run on.

View original technical description
Programming is intrinsically based on the use of limited resources, such as memory and processing power of computers. Various abstractions of resources play an important role throughout computer science, but they are conceptualised in very different, and apparently unrelated ways. In particular, there is a big gap between studies focussing on precise quantitative issues of what we can do and how efficiently we can do it with limited resources, and those which concern more conceptual aspects, which underpin modern high-level programming languages, and application-oriented programming. In this project, building on some recent breakthrough developments which relate these different aspects, we aim to develop a unified theory of resources which will apply to all these aspects, and allow a flow of ideas between them. This will provide new tools and methods for computer scientists, and lead both to new kinds of results, and more general versions of existing ones.

View the original record at the funder ↗

Researchers

Samson Abramsky (Principal Investigator)

Related Research

Grants with similar aims, by meaning.

Resources and co-resources: a junction between semantics and descriptive complexity
Computing with Infinite Data
Complexity and Decidability in Unconventional Computational Models
Resource Reasoning
Studying resource-limited computation from a semantic angle, utilising the differential lambda-calculus along with quantitative semantics

Original classification

Fellowship

Plain English summaries and category classifications on this site are generated by AI and may not perfectly reflect the original research.