SMTChecker: Add support for block.blobbasefee and blobhash() #15796
+270
−237
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We overapproximate the behaviour here in the same way as for
block.basefeeandblockhash.For the first we only add the basic domain constraints and the second is modelled as an uninterpreted function.
We also model the fact that the number of blobs in transaction is limited by returning 0 from blobhash() if the argument is greater or equal to the limit. The current limit is 6, but it will soon be increased to 9 in pectra update.
Since we overapproximate the behaviour anyway, we can use the pectra limit immediately.
This PR is split into two commits, where the first one just consolidates information related to
blockin one place, instead of keeping the information in two separate places as was done before.This makes the consequent additions easier.
Resolves #14780 and #14786.