Skip to content
This repository has been archived by the owner on Aug 20, 2021. It is now read-only.

Commit

Permalink
acts.md: document isStatic
Browse files Browse the repository at this point in the history
  • Loading branch information
d-xo authored and xwvvvvwx committed Feb 10, 2020
1 parent adc0de8 commit edcd218
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions acts.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,13 @@ storage
#hashedLocation("Solidity", 0, Someone) |-> PreStateValue => PostStateValue
```

### Static vs Non-Static `act` Specifications

An `act` that does not specify any storage updates (i.e. the storage block contains no `=>` arrows) will generate a `K` reachability claim where the value of the `<static>` cell is set to `_`. Conversely, an `act` with a storage block containing at least one `=>` will have the `<static>` cell in the resulting reachability claim set to `false`.

When running `klab prove`, the `<static>` cell will set to `true` during a `STATICCALL` and `false` otherwise.

## Example: Token
Now we are ready to verify a (simplified) ERC20 token:
```Solidity
Expand Down

0 comments on commit edcd218

Please sign in to comment.