Alonso González
f49fbc8e9b
Transactions trie support ( #1232 )
...
* Implement transactions.
* Fix receipts and transactions
* Add some fixes
* Update tests
* Remove changes added for debugging purposes only
* Clippy
* Remove additional debug changes
* Remove unused
* Apply comments
---------
Co-authored-by: Linda Guiga <lindaguiga3@gmail.com>
Co-authored-by: Robin Salen <salenrobin@gmail.com>
2023-09-27 10:00:16 -04:00
Robin Salen
acc659da07
Add type 1 and 2 txn for RLP encoding support ( #1255 )
2023-09-26 14:56:18 -04:00
Linda Guiga
5694af79f9
Merge remote-tracking branch 'mir-plonky2/main' into constrain-genesis-state
2023-09-26 12:24:48 -04:00
Linda Guiga
75c0e47a30
Apply comments.
2023-09-26 12:21:29 -04:00
Robin Salen
03a9558198
Handle additional panics ( #1250 )
...
* Remove some panic risks
* Remove more panics
* Handle jump with empty stack
* Handle last expect
* More panics
* Handle from_big_endian
* Handle from_little_endian
* Remove remaining risky as_usize()
* Remove explicit panic
* Clippy
* Handle unwrap
* Make error messages more explicit
* Simplify u256 to usize conversion
2023-09-26 11:13:57 -04:00
wborgeaud
72241ca728
Connect block_gas_used ( #1253 )
2023-09-26 15:05:45 +02:00
Linda Guiga
043d12c20e
Fix observe_block_metadata
2023-09-25 17:30:31 -04:00
wborgeaud
8c78271f5c
Add random value to block metadata and fix sys_prevrandao ( #1207 )
...
* Add random to block metadata and fix `sys_prevrandao`
* Minor
* Observe block_random
* Write block_random
* cargo fmt
* block_random: H256
* Move sys_prevrandao to metadata.asm and delete syscall_stubs.asm
* Set block_random in set_block_metadata_target
* Minor
* Minor
2023-09-25 18:20:22 +02:00
Linda Guiga
3983969ce9
Use function for genesis block connection.
2023-09-25 10:35:38 -04:00
Linda Guiga
9d0101d652
Merge branch 'main' into 'constrain-genesis-state'
2023-09-25 10:19:13 -04:00
Robin Salen
0abc3b9210
Apply comments ( #1248 )
2023-09-22 10:14:47 -04:00
Robin Salen
d6be2b987b
Remove generic_const_exprs feature from EVM crate ( #1246 )
...
* Remove const_generic_exprs feature from EVM crate
* Get a generic impl of StarkFrame
2023-09-22 09:19:13 -04:00
Robin Salen
6618cfad4a
Remove SEQUENCE_LEN in BytePackingStark ( #1241 )
2023-09-20 08:31:50 -04:00
Robin Salen
1b7207ee68
Merge pull request #1244 from topos-protocol/block_metadata_doc
...
Add some doc for BlockMetadata / ExtraBlockData
2023-09-20 06:24:38 -04:00
Robin Salen
d8874c8389
Update ranges indices
2023-09-19 18:39:25 -04:00
Robin Salen
edd3f383a1
Add some doc for BlockMetadata / ExtraBlockData
2023-09-19 15:42:23 -04:00
Hamy Ratoanina
4eb6a3b57c
Fix eval_table
2023-09-19 14:03:57 -04:00
Robin Salen
053553d4d7
Reuse new packing instructions for MLOAD and MSTORE
2023-09-18 16:31:46 -04:00
Robin Salen
b5c28bd65e
Rename utility methods for U256 conversion
...
Co-authored-by: Nicholas Ward <npward@berkeley.edu>
2023-09-18 14:29:11 -04:00
Robin Salen
f3ea95cacc
Merge branch 'main' into error_vs_panic
2023-09-18 09:59:52 -04:00
Robin Salen
c4be838af4
Typo
2023-09-18 09:59:48 -04:00
Hamy Ratoanina
15064b3aa7
Merge pull request #1229 from topos-protocol/next_row_ctls
...
Make next row available to CTLs
2023-09-18 15:19:10 +02:00
Hamy Ratoanina
1a4caaa08f
Move next row logic inside Column
...
Co-authored-by: Nicholas Ward <npward@berkeley.edu>
2023-09-15 18:59:33 -04:00
Robin Salen
8903aec129
Change padding rule for CPU ( #1234 )
...
* Change padding rule for CPU
* Disable memory channels for padding rows
* Apply some of Jacqueline's comments
* Update halt routine
* Add clarifying comment
* Redundant constraints and padding bug
* Revert "Remove is_bootstrap_kernel column"
This reverts commit 49d92cb8f1b0ae9de76872f76af4429699ff692f.
* Make halt_state implicit
* Move halting logic constraints to dedicated module
* Include new module
* Update some comments
2023-09-15 17:46:58 -04:00
Linda Guiga
d4a8026bf9
Combine mstore_general and mload_general into one flag ( #1188 )
...
* Combine mstore_general and mload_general into one flag
* Add comments and make stack constraints cleaner.
* Fix number of native instructions
* Ordering
* Cleanup
* Update calls to stack eval from latest main
---------
Co-authored-by: Robin Salen <salenrobin@gmail.com>
2023-09-14 19:51:02 -04:00
Hamy Ratoanina
27d9113feb
Merge branch 'main' into next_row_ctls
2023-09-14 18:38:49 -04:00
Hamy Ratoanina
0b5ac312c0
Merge pull request #1203 from topos-protocol/constrain_nv_stack_len
...
Constrain next row's stack length
2023-09-14 22:42:32 +02:00
Robin Salen
19220b21d7
Remove redundant Keccak sponge cols ( #1233 )
...
* Rename columns in KeccakSponge for clarity
* Remove redundant columns
* Apply comments
2023-09-14 15:27:38 -04:00
Robin Salen
06bc73f7ea
Combine arithmetic flags on the CPU side ( #1187 )
...
* Combine FP254 flags
* Combine basic binary ops together and do CTL with opcode value
* Combine ternary ops together
* Combine MUL DIV and MOD
* Combine shift operations
* Combine byte with other binary ops
* Fix tests
* Clean leftover comment
* Update from latest main
* Put the 'is_simulated' flag inside the Operation enum
* Cleaner way to handle "simulated" operations SHL and SHR.
* Fix comments.
* Minor: suggestion for re-expressing `combined_ops`.
* Update comment
---------
Co-authored-by: Hamish Ivey-Law <hamish@ivey-law.name>
2023-09-14 10:36:48 -04:00
Hamy Ratoanina
61a1c246db
Fix CTLs
2023-09-13 10:55:27 -04:00
Hamy Ratoanina
c27fc96a06
Merge branch 'main' into next_row_ctls
2023-09-13 16:46:30 +02:00
Linda Guiga
f944a08b4d
Fix self_balance_gas_cost and basic_smart_contract. ( #1227 )
...
* Fix self_balance_gas_cost and basic_smart_contract.
* Fix Clippy
2023-09-13 09:12:56 -04:00
Robin Salen
7ebbb47fcd
Swap ordering in stack macro ( #1230 )
...
* Swap ordering in stack macro
* Update comment
2023-09-13 08:39:01 -04:00
Robin Salen
5a1b05acfb
Remove risks of panic
2023-09-12 19:23:16 -04:00
Robin Salen
9508b49090
Move byte packing / unpacking to a distinct table ( #1212 )
...
* Duplicate Memory trace into BytePacking one
* Add mload_32bytes instruction
* Use dedicated ops for byte packing trace
* Change witness generation to reduce memory reads for MLOAD_32BYTES
* Remove segments
* Fix stack
* Fix extra product when fixing CTL for byte_packing
* Write output value in trace
* Add constraints for BYTE_PACKING table
* Add recursive constraints for BYTE_PACKING table
* Fix constraints
* Add address in trace and constraints
* Add timestamp and batch inputs into BytePackingOp struct
* Add extra column
* Fix BytePackingStark CTL
* Tiny fix in witness generation
* Fix the Memory CTL
* Add constraints for the new columns
* Remove 1 column
* Remove limb columns
* Fix
* Fix recursive circuit of BytePackingTable
* Fix constraints
* Fix endianness
* Add MSTORE_32BYTES instruction and move decomposition to packing table
* Add missing constraint
* Add range-check for all bytes
* Add extra constraint
* Cleanup
* Remove REMAINING_LEN column
* Add corresponding implementations in interpreter
* Fix recursive version
* Remove debug assertion because of CI
* Remove FILTER column
* Update new test from rebasing
* Reorder STARK modules to match TraceCheckPoint ordering
* Address comments
* Pacify clippy
* Add documentation to the packing module
* Fix doctest
2023-09-13 04:45:37 +10:00
Hamy Ratoanina
3c4f938f85
Make next row available to CTLs
2023-09-12 13:59:50 -04:00
Linda Guiga
4d7d9ffa3c
Constrain genesis block's state trie.
2023-09-11 19:09:12 +01:00
Nicholas Ward
d1c395ef75
Merge pull request #1202 from mir-protocol/keccak-preimage
...
Keccak STARK: constrain preimage to equal A on first round
2023-09-11 09:05:55 -07:00
Nicholas Ward
3571f09707
Merge pull request #1224 from mir-protocol/latest-nightly
...
latest nightly in CI and rust-toolchain
2023-09-08 15:18:59 -07:00
Nicholas Ward
9a8a769dc4
more clippy suggestions
2023-09-08 10:44:45 -07:00
Nicholas Ward
55d0514755
clippy suggestions
2023-09-08 10:41:22 -07:00
Nicholas Ward
a4e6c6ae90
clippy suggestions
2023-09-08 10:41:01 -07:00
Nicholas Ward
7415810f19
clippy suggestions
2023-09-08 10:40:31 -07:00
Nicholas Ward
8af3b0feb4
clippy suggestions
2023-09-08 10:40:17 -07:00
Nicholas Ward
ed8bcf9d74
clippy suggestions
2023-09-08 10:34:37 -07:00
BGluth
65917f5f23
Merge pull request #1222 from mir-protocol/internal_crate_path_stablization
...
Now refers to sub-crates using paths (and removed `patch` section)
2023-09-08 11:07:54 -06:00
Nicholas Ward
2f1ed95154
Merge pull request #1220 from mir-protocol/latest_nightly_fix
...
Latest nightly fix
2023-09-08 10:04:09 -07:00
BGluth
5936c67f59
Now refers to sub-crates using paths (and removed patch section)
...
- Previously refered to specific `crates.io` versions.
- Motivation for this is to allow external projects to be able use
specific revisions of this repo. Without this, a `[patch]` section
is almost always required in the external project in order to force
the internal plonky2 sub-crates to the same version, an approach which
comes with its own issues.
2023-09-07 16:36:38 -06:00
Linda Guiga
180c20942b
Merge pull request #1208 from topos-protocol/blockhash_opcode
...
Add blockhash opcode
2023-09-07 23:21:37 +01:00
Robin Salen
71b2ece148
Merge pull request #1216 from topos-protocol/checkpoint_lengths
...
Display actual trace lengths instead of number of ops
2023-09-07 16:01:07 -04:00