Closed lag47 closed 2 years ago
To avoid accidentally adding .DS_Store
files in the future, you can put a .gitignore
file in your home directory and it will apply to everything on your machine.
These additions seem big enough to warrant releasing them as a new package. We can still keep everything in the same repository.
The final of three pull requests intended to bring the secure branch into master. This pull request contains all of the code included in the trace and dijkstra_pull_request branches, but it focuses on a mechanization of two information flow indistinguishability relations over ITrees, eqit_secure and pi_eqit_secure. The former formalizes progress sensitive indistinguishability and the latter formalizes progress insensitive indistinguishability.
This pull request also formalizes a bunch of meta theory about these relations, for instance progress sensitive indistinguishability lifts PERs over return types to PER's over ITrees. It also includes two verified information flow type systems for Imp (with print + exceptions) and a proof that a compiler from Imp to Asm preserves noninterference.