Foundational work for cs1231 prover