[SMTChecker] Verify AMM invariant
Open
smt
- Dominant language
- C++
- Stars
- 25.7k
- Forks
- 6.2k
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 21
Description
https://github.com/xwvvvvwx/symtest-examples/blob/main/src/AMM.sol
The invariant of course depends on the token implementation.
There could be two ways to verify this:
- Add requires around the token calls to represent the post conditions of the token functions
- Trust a token implementation and use that
Contributor guide
Research direction
Start by reading the linked src/AMM.sol example and identify the AMM invariant and the token calls it relies on. Compare the two stated approaches—postcondition requires around token calls or trusting a token implementation—and define verification as complete only when the invariant can be checked under an explicit token assumption.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- solidity
- Domain
- blockchain, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100