Rule coverage and configuration well-formedness
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 25/100
- issue の種類
- 機能追加
- 明瞭さ
- 説明が足りない
- 活発さ
- 停滞
- 領域
- compilers
調査の方向性
Issue に示されている 2 つの checkBalanceUnderflow ルールと、周辺の EVM セマンティクスを確認してください。まず、整形式の設定でアカウントが欠落していることが許可されるかどうかを判断し、次に、同様のルールセットが不完全でないかを調べてください。結論を文書化し、定義の作成によってそのようなケースを自動的に検出できるかどうかを評価できれば完了です。
索引モデルが issue の本文から書いたものです。
説明
The rules for checkBalanceUnderflow:
rule <k> #checkBalanceUnderflow ACCT VALUE => #refund GCALL ~> #pushCallStack ~> #pushWorldState ~> #end EVMC_BALANCE_UNDERFLOW ... </k>
<output> _ => .Bytes </output>
<callGas> GCALL </callGas>
<account>
<acctID> ACCT </acctID>
<balance> BAL </balance>
...
</account>
requires VALUE >Int BAL
rule <k> #checkBalanceUnderflow ACCT VALUE => . ... </k>
<account>
<acctID> ACCT </acctID>
<balance> BAL </balance>
...
</account>
requires VALUE <=Int BAL
only consider configurations in which the account with identifier ACCT is present.
Is this:
- an omission, in the sense that there should be a third rule when the account is not present; or
- a consequence of having a well-formed EVM configuration, in the sense that an account with identifier
ACCTmust always be present when there is an#checkBalanceUnderflowcheck?
Perhaps it would be a good idea if we went through the semantics to see if there are other sets of rules that are incomplete in this sense. Is there a way of understanding this automatically, perhaps on definition creation? @ehildenb @jberthold
- 主要言語
- KCL
- スター
- 592
- フォーク
- 156
- 平均マージ
- 2時間 19分
- マージ済み PR(30日)
- 1
環境構築
このプロジェクトの環境構築ファイルはまだ確認していません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
runtimeverification/evm-semantics のほかの issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 78/100
runtimeverification/evm-semantics#1190 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
runtimeverification/evm-semantics#2879 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
runtimeverification/evm-semantics#2869 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
runtimeverification/evm-semantics#2832 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 30/100
runtimeverification/evm-semantics#2824 ·
runtimeverification/evm-semantics の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
objectionary/jeo-maven-plugin#1827 ·
メンテナーはふだん 4 日以内に返信
-
forwarded-to-js-devs
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
-
backend:DirectX
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
llvm/llvm-project#227530 ·
メンテナーはふだん 1 日以内に返信
-
`enzymexla.linalg.lu` lowering fails for a tall matrix: the permutation is built with the pivot typeオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
EnzymeAD/Enzyme-JAX#3286 ·
メンテナーはふだん 1 日以内に返信
-
The unsafe/foreign gate misses an @unsafe dependency that appears only in a datatype's is Kind(..)オープンbug
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
HigherOrderCO/Bend#1205 ·