... | @@ -12,7 +12,7 @@ Fixed circuit是在电路初始化阶段预先向fixed_table填入一些cell数 |
... | @@ -12,7 +12,7 @@ Fixed circuit是在电路初始化阶段预先向fixed_table填入一些cell数 |
|
|
|
|
|
在 Fixed Circuit 中,`Row` 结构用于定义在 `fixed_table` 中填入的每一行数据,包含以下字段:
|
|
在 Fixed Circuit 中,`Row` 结构用于定义在 `fixed_table` 中填入的每一行数据,包含以下字段:
|
|
|
|
|
|
```Rust
|
|
```rust
|
|
pub struct Row {
|
|
pub struct Row {
|
|
pub tag: Tag,
|
|
pub tag: Tag,
|
|
pub value_0: Option<U256>,
|
|
pub value_0: Option<U256>,
|
... | @@ -90,7 +90,7 @@ pub enum Tag { |
... | @@ -90,7 +90,7 @@ pub enum Tag { |
|
|
|
|
|
State Circuit 记录了栈上和内存操作的动态,当约束栈上元素时需要校验元素指向栈的指针。因为 EVM 中栈上的元素最多可以有 1024 个,指向栈的索引范围必须在 u10;EVM 的内存状态中操作是以 byte 为单位的,因此约束内存元素时所指向的值在 u8 范围。
|
|
State Circuit 记录了栈上和内存操作的动态,当约束栈上元素时需要校验元素指向栈的指针。因为 EVM 中栈上的元素最多可以有 1024 个,指向栈的索引范围必须在 u10;EVM 的内存状态中操作是以 byte 为单位的,因此约束内存元素时所指向的值在 u8 范围。
|
|
|
|
|
|
```Rust
|
|
```rust
|
|
fn new( meta: &mut ConstraintSystem<F>,
|
|
fn new( meta: &mut ConstraintSystem<F>,
|
|
Self::ConfigArgs {
|
|
Self::ConfigArgs {
|
|
q_enable, state_table, fixed_table,
|
|
q_enable, state_table, fixed_table,
|
... | | ... | |