Minimum hardware constant multiplication with integer linear programming [Available for September 2026]

In some applications, such as many cryptography algorithms, multiplication by a known integer constant is a common operation. It’s well known that integer multiplication with a constant can be computed with a sequence of shifts and adds. Most modern processors already have fast integer multiplication units, so in software it is usually faster to use … Read more

In-place matrix multiplication for rectangular matrices [Available for September 2026]

Matrix multiplication is one of the commonly-used computations across a wide range of applications. For example, most implementations of neural networks implement very large numbers of matrix multiplications. Almost all processor and GPU manufacturers provide libraries with carefully hand-tuned fast matrix multiplication routines. All the best-known algorithms matrix multiplication are out-of-place; that is, the result … Read more

(Allocated) Microworld to teach about solutions to the housing crisis

Microworlds are a type of computer simulation which have proven to be very powerful tools with which to create effective learning experiences. For example a previous project developed one to teach about nati0nal waste management. This project will involve developing a microworld to help teach about the challenges involved in tackling the housing crisis. The … Read more

(Allocated) Microworld to teach about finance

Microworlds are a type of computer simulation which have proven to be very powerful tools with which to create effective learning experiences. For example a previous project developed one to teach about nati0nal waste management. This project will involve developing a microworld to help teach about managing personal finances. The tool is aimed at Transition … Read more

Using Promela/SPIN to verify RTEMS (TAKEN)

TAKEN RTEMS (https://www.rtems.org/) is an open-source real-time operating system widely used in aircraft and spacecraft. It offers a comprehensive API, mostly defined in terms of “managers” that provide calls to perform specific kinds of services or provide specific infrastructure. As part of an activity sponsored by the European Space Agency (ESA) we have developed a … Read more