-
Notifications
You must be signed in to change notification settings - Fork 33
Open
Description
From https://github.com/runtimeverification/iele-semantics/blob/master/data.md you get the following:
- bitsInWords converts a number of bits to a number of words.
- bytesInWords converts a number of bytes to a number of words.
syntax Int ::= bitsInWords ( Int ) [function]
// ---------------------------------------------
rule bitsInWords(I) => I up/Int 256
syntax Int ::= bytesInWords ( Int ) [function]
// ----------------------------------------------
rule bytesInWords(I) => I up/Int 8
However the two definitions cannot both be true and also the 'bitsInWords' definition does not match the definition of Sha3 in https://github.com/runtimeverification/iele-semantics/blob/master/iele-gas.md
// Result size of SHA3 is 256 bits, i.e., 4 words.
rule #memory [ REG = sha3 _ ] => #registerDelta(REG, bitsInWords(256))
Changing this to up/Int 64 causes some of the tests/iele/ERC20/transfer_Caller-Zero.iele.json.test test to fail.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels