Skip to content

Conversation

@msooseth
Copy link
Collaborator

@msooseth msooseth commented Dec 8, 2025

Description

Adds --early-abort option to all of: test/symbolic/equivalence. Will throw away all queued up processes and tasks when the abort flag has been set.

Needs test, probably.

Checklist

  • tested locally
  • added automated tests
  • updated the docs
  • updated the changelog

Update

No need for this

Update

Update

Faster early abort

Fixing hevm.cabal

Fixing build-depends
@msooseth
Copy link
Collaborator Author

msooseth commented Dec 18, 2025

@gustavo-grieco OK, this is now kinda working, but it has NOT been pushed to the branch yet:

cabal run --enable-shared -f run exe:hevm -- test --root /home/matesoos/development/abdk-math-64.64-verification --max-buf-size 12 --max-iterations 2 --max-depth 70 --solver bitwuzla --match prove_inv_identity --early-abort
Resolving dependencies...
Checking 1 function(s) in contract src/ABDKMath64x64PropertyTests.sol:CryticABDKMath64x64Properties
[RUNNING] prove_inv_identity(int128)
   Counterexample:   [validated]
     calldata: prove_inv_identity(-101034573947264812908054335791493761808)
     result:   Revert: 0x4e487b710000000000000000000000000000000000000000000000000000000000000001
   [FAIL] prove_inv_identity
   [WARNING] hevm was only able to partially explore the test prove_inv_identity due to:
      11x -> Aborted due to early 

It exits immediately.

@msooseth msooseth changed the title [DRAFT] Early abort flag Early abort flag Dec 18, 2025
Now immediate crash

No deadlocks?

Now it works

Fixing test

Update

Cleanup

Cleanup

Cleanup
@msooseth msooseth requested a review from blishko December 18, 2025 16:04
@msooseth msooseth marked this pull request as ready for review December 18, 2025 17:04
@gustavo-grieco
Copy link
Collaborator

Very excited to test this with the rest of the abdk examples. One question: the model should be built first or Haskell lazyness can give us the counter example before the model is complete?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants