Galois Theory of Algorithms
Many different programs are the implementation of the same algorithm. This makes the collection of algorithms a quotient
of the collection of programs. Similarly, there are many different algorithms that implement the same computable function.
This makes the collection of computable functions into a quotient of the collection of algorithms. Algorithms are intermediate
between programs and functions:
Programs -> Algorithms -> Functions.
Galois theory investigates the way that a subobject sits inside an object. We investigate how a quotient object sits inside an object. By looking at the Galois group of programs, we study the intermediate types of algorithms possible. Along the way, we formalize the intuition that one program can be substituted for another if they are the same algorithm.