当前位置:网站首页>Plookup table in appliedzkp zkevm (8)
Plookup table in appliedzkp zkevm (8)
2022-06-26 10:44:00 【mutourend】
1. introduction
appliedzkp zkevm use Halo2 Of lookup table As a primitive, Come on check table One of the lines in is really some adviced values.
Such as , following table Of a、b、c Column , among a、b As a “0,1,2” The possible combination of ,c To be right a、b Column logic AND operation :
| a | b | c |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 0 | 2 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
| 1 | 2 | 0 |
| 2 | 0 | 0 |
| 2 | 1 | 0 |
| 2 | 2 | 2 |
You can use this table To check circuit Some of them x、y Variable AND Operational constraints , To prove "x"、“y”、"x & y" In response to table One of the lines .
zkevm There is 2 Types of table:
- 1)Fixed Table
So-called Fixed Table, Means the fixed table Rows in proving time“ Before ” It has been determined that .
above AND operation table Namely fixed table. - 2)Variable Table(Dynamic Table)
So-called Variable Table, Means the variable table Rows in proving time " when " determine .
Variable Table bring Prover You can create your own table, Such as Prover can witness a key-value mapping by a variable table. Be careful , Additional checks are required to ensure that mapping key Uniqueness .
2. zkevm EVM circuit Medium tables
zkevm Of EVM circuit A variety of dynamic and fixed tables, among dynamic table The validity of the content is determined by the circuit To prove .
zkevm Medium dynamic tables Yes :
- 1)tx_table: from tx circuit prove .
- 2)rw_table: from state circuit prove .
- 3)bytecode_table: from bytecode circuit prove .
- 4)block_table: from block circuit prove .
- 5)mpt_table: from MPT(Merkle Particia Trie)circuit Provide .
zkevm Medium fixed tables Yes :
- 1)execution_state.responsible_opcode(): take execution_state mapping (map) To Generate this execution state Of opcode. So-called execution_state, Is when opcode Status of successful operation . This mapping may combine multiple similar opcode Merge into one execution state, Such as LT/GT/EQ All corresponding CMP state .
- 2)invalid_opcode(): by invalid opcodes set.
- 3)state_write_opcode(): For the meeting write state A group of opcodes.
- 4)stack_underflow_pairs: It will cause underflow Of opcodes set and stack pointer value.
- 5)stack_overflow_pairs: It will cause overflow Of opcodes set and stack pointer value.
Reference material
边栏推荐
- 工程数学概率论统计简明教程第二版复习大纲
- MySQL第十四次作业--电子商城项目
- VS或Qt编译链接过程中出现“无法解析的外部符号”的原因:
- Global and Chinese market for baked potato chips 2022-2028: Research Report on technology, participants, trends, market size and share
- MySQL Chapter 4 Summary
- 3行3列整形二维数组,求对角之和
- Redis (IV) redis association table caching
- Progressive web application PWA is the future of application development
- How QT uses quazip to compress and decompress files
- String class intern() method and string constant pool
猜你喜欢
随机推荐
MySQL 11th job - view application
Under the double reduction, the amount of online education has plummeted. Share 12 interesting uses of webrtc
Function run time
Small example of SSM project, detailed tutorial of SSM integration
MySQL第六章总结
MySQL Chapter 6 Summary
Linux下安装Mysql【详细】
六月集训(第26天) —— 并查集
Introduction to libmagic
Adaptiveavgpool2d does not support onnx export. Customize a class to replace adaptiveavgpool2d
RDB persistence validation test
Servlet learning notes II
MySQL 9th job - connection Query & sub query
Tape library simple record 1
Quantitative investment learning - Introduction to classic books
RDB持久化验证测试
Vscode environment setup: synchronous configuration
MySQL job 11 - application de la vue
Problems encountered in the application and development of Hongmeng and some roast
Jar version conflict resolution








![[echart] i. how to learn echart and its characteristic document reading notes](/img/21/5405ae302df77d2ba07d9f5e5537f3.jpg)
