Basic simple type theory
QuickCheck: a lightweight tool for random testing of Haskell programs
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
Formal Equivalence Checking and Design DeBugging
Formal Equivalence Checking and Design DeBugging
Definitional interpreters for higher-order programming languages
ACM '72 Proceedings of the ACM annual conference - Volume 2
A verifying core for a cryptographic language compiler
ACL2 '06 Proceedings of the sixth international workshop on the ACL2 theorem prover and its applications
Proof producing synthesis of arithmetic and cryptographic hardware
Formal Aspects of Computing
Formal equivalence checking of software specifications vs. hardware implementations
Formal equivalence checking of software specifications vs. hardware implementations
Decision Procedures: An Algorithmic Point of View
Decision Procedures: An Algorithmic Point of View
Scaling up the formal verification of Lustre programs with SMT-based techniques
Proceedings of the 2008 International Conference on Formal Methods in Computer-Aided Design
Isabelle/HOL: a proof assistant for higher-order logic
Isabelle/HOL: a proof assistant for higher-order logic
Cryptol: high assurance, retargetable crypto development and validation
MILCOM'03 Proceedings of the 2003 IEEE conference on Military communications - Volume II
Functional correctness proofs of encryption algorithms
LPAR'05 Proceedings of the 12th international conference on Logic for Programming, Artificial Intelligence, and Reasoning
Formal verification of a SHA-1 circuit core using ACL2
TPHOLs'05 Proceedings of the 18th international conference on Theorem Proving in Higher Order Logics
A monadic approach to automated reasoning for Bluespec SystemVerilog
Innovations in Systems and Software Engineering
Using term rewriting to solve bit-vector arithmetic problems
SAT'12 Proceedings of the 15th international conference on Theory and Applications of Satisfiability Testing
Hi-index | 0.00 |
Cryptol is programming a language designed for specifying and programming cryptographic algorithms. In order to meet high-assurance requirements, Cryptol comes with a suite of formal-methods based tools allowing users to perform various program verification tasks. In the fully automated mode, Cryptol uses modern off-the-shelf SAT and SMT solvers to perform verification in a push-button manner. In the manual mode, Cryptol produces Isabelle/HOL specifications that can be interactively verified using the Isabelle theorem prover. In this paper, we provide an overview of Cryptol's verification toolset, describing our experiences with building a practical programming environment with dedicated support for formal verification.