Proofs from Algorithms, Algorithms from Proofs