Download Latest Version cryptol-3.5.0-windows-2022-X64-with-solvers.tar.gz (121.7 MB)
Email in envelope

Get an email when there's a new version of Cryptol

Home / 3.5.0
Name Modified Size InfoDownloads / Week
Parent folder
cryptol-3.5.0-windows-2022-X64.tar.gz.sig 2026-01-28 566 Bytes
cryptol-3.5.0-windows-2022-X64-with-solvers.tar.gz.sig 2026-01-28 566 Bytes
cryptol-3.5.0-windows-2022-X64.tar.gz 2026-01-28 80.5 MB
cryptol-3.5.0-ubuntu-24.04-X64.tar.gz.sig 2026-01-28 566 Bytes
cryptol-3.5.0-windows-2022-X64-with-solvers.tar.gz 2026-01-28 121.7 MB
cryptol-3.5.0-ubuntu-24.04-X64.tar.gz 2026-01-28 58.3 MB
cryptol-3.5.0-ubuntu-22.04-X64.tar.gz.sig 2026-01-28 566 Bytes
cryptol-3.5.0-ubuntu-22.04-X64-with-solvers.tar.gz.sig 2026-01-28 566 Bytes
cryptol-3.5.0-ubuntu-22.04-X64.tar.gz 2026-01-28 58.4 MB
cryptol-3.5.0-macos-15-intel-X64.tar.gz.sig 2026-01-28 566 Bytes
cryptol-3.5.0-ubuntu-22.04-X64-with-solvers.tar.gz 2026-01-28 100.9 MB
cryptol-3.5.0-macos-15-intel-X64-with-solvers.tar.gz.sig 2026-01-28 566 Bytes
cryptol-3.5.0-macos-15-intel-X64.tar.gz 2026-01-28 31.1 MB
cryptol-3.5.0-macos-15-ARM64.tar.gz.sig 2026-01-28 566 Bytes
cryptol-3.5.0-macos-15-intel-X64-with-solvers.tar.gz 2026-01-28 65.3 MB
cryptol-3.5.0-macos-15-ARM64-with-solvers.tar.gz.sig 2026-01-28 566 Bytes
cryptol-3.5.0-macos-15-ARM64.tar.gz 2026-01-28 96.8 MB
cryptol-3.5.0-macos-15-ARM64-with-solvers.tar.gz 2026-01-28 127.4 MB
3.5.0 source code.tar.gz 2026-01-27 30.9 MB
3.5.0 source code.zip 2026-01-27 31.5 MB
README.md 2026-01-27 2.0 kB
Totals: 21 Items   803.0 MB 1

Administrative changes

  • The binary builds are now built with GHC 9.6 rather than 9.4.

Language changes

  • User-defined newtype and enum types can now derive instances for standard constraints like Eq and Cmp. This means you can use standard operations like == with your custom types. See the manual section for more information.
  • The built-in types Option and Result now have derived instances for Eq, Cmp, and SignedCmp.
  • We can now infer that a = Bit, from the constraint Integral [n][a].

Bug fixes

  • Fix incorrect defaulting during type inference. (#1957)

  • Make comparison operators lazy so that they do not evaluate any more of the data structure than is required to determine the comparison result, matching the behavior of the reference evaluator. (#1925)

  • Modify project loading to update the cache after each module is validated, and make saving the cache atomic on file systems where renaming a file to an existing file is atomic. This is useful because we get partial results if the validation process is interrupted.

  • Change the default behavior of -p/--project. The new behavior is that it will check all files that have changed, and also files that have not been previously verified. The old behavior would only validate files that have changed since last time.

  • Add a new flag, --modified-project which gives us the old -p behavior (i.e., check only files that have changed).

  • Replace the --untested-project flag with the --unsuccessful-project flag. This will run validation on all files that have not been successfully validated, including ones that perviously failed, and have not changed.

  • Allow user to specify how many satisfying results satProve (from IR/Prove.hs) produces

Source: README.md, updated 2026-01-27