This repository contains proofs of theorems from the paper "Smooth, Integrated Proofs of Cryptographic Constant Time for Nondeterministic Programs and Compilers". (TODO: add doi or something)
Here is a list of the theorems in the paper and the corresponding proofs in this repository.
- Theorem 4.3:
Lemma exec_det_equiv_nondet, fileequiv/EquivTheorem.v - Theorem 5.3:
Lemma predictor_plus_oracle_equals_trace, fileequiv/OtherTheorems.v - Corollary 5.4:
Theorem predictors_to_oraclesandTheorem predictors_to_oracles_as_in_paper, fileequiv/OtherTheorems.v, - Theorem 5.5:
Theorem predictor_from_nowhereandTheorem oracles_to_predictors_as_in_paper, fileequiv/OtherTheorems.v - claim that "predictor constant time is equivalent to constant time":
Theorem pred_ct_same_as_ct, fileequiv/OtherTheorems.v - Theorem C.3:
Theorem trace_trees_are_predictors, fileequiv/OtherTheorems.v - Theorem C.6:
Lemma predictors_are_co_trace_treesandLemma co_trace_trees_are_predictors, fileequiv/OtherTheorems.v - Lemma D.1:
Lemma append_predictors, fileequiv/OtherTheorems.v
The Coq Proof Assistant, version 8.20.0 compiled with OCaml 5.3.0