Commit Graph

75 Commits

Author SHA1 Message Date
chriseth
3e3349d4f5 Add assertion function. 2024-01-23 20:29:59 +01:00
chriseth
6a19635c43 Fix test. 2024-01-15 11:44:11 +01:00
chriseth
2aabe8fd16 Documentation. 2024-01-15 10:04:42 +01:00
chriseth
8f1d77c916 Properly handle local variables in path_canonicalizer. 2024-01-15 10:04:42 +01:00
chriseth
252eaa070c Support pil at module level. 2024-01-15 10:03:38 +01:00
Georg Wiese
e5225d7bbb Introduce mstore_bootloader instruction 2024-01-11 12:08:45 +01:00
Georg Wiese
9b9cb2a831 Read/Write memory: Allow bigger diffs 2024-01-09 18:42:57 +01:00
Georg Wiese
c95e387f08 Remove m_op 2024-01-08 18:07:53 +01:00
Georg Wiese
ff2a87776e Fix memory soundness bug 2024-01-08 16:04:10 +01:00
chriseth
d98b7a76a6 Fix arith_improved. 2024-01-02 09:31:21 +01:00
chriseth
bef7d80c70 Change labels to require just a single colon. 2023-12-19 14:07:21 +01:00
Georg Wiese
54045fbcf7 Pipeline 2023-12-07 22:12:29 +01:00
chriseth
18cba16c9b Allow functions to work on constraints. 2023-11-30 12:13:55 +01:00
Leo
b8e6c2468b Merge pull request #790 from powdr-labs/support_array_elemes_in_operation
Support array elements in operations.
2023-11-28 16:53:43 +00:00
chriseth
9946b863b4 Remove macros. 2023-11-28 15:57:29 +01:00
chriseth
a381395f78 Support array elements in operations. 2023-11-24 17:32:34 +01:00
Georg Wiese
8c50681fc1 Write-Once Memory 2023-11-24 16:13:56 +01:00
chriseth
d94db64b6f Support arrays in witgen. 2023-11-08 21:31:49 +01:00
schaeff
844dd39618 get degree from namespaces 2023-11-07 10:32:41 +01:00
Leo
3f7faf19f3 Merge pull request #733 from powdr-labs/parse_next_as_operator
Parse next as operator
2023-11-02 16:31:05 +00:00
Georg Wiese
730706de0d Fix test: two_block_machine_functions.pil 2023-11-02 14:02:41 +00:00
Georg Wiese
ec8c9943f8 VM-to-VM Witness Generation 2023-11-02 11:22:25 +00:00
chriseth
b2a8960061 Test next operator in macro. 2023-11-02 11:09:08 +01:00
Georg Wiese
f26a161ae3 Add SplitBN254 machine, use queries in SplitGL machine 2023-10-31 18:27:19 +00:00
Georg Wiese
5345624947 Block machine queries 2023-10-26 16:37:36 +00:00
Georg Wiese
c1d6d04b4e Fix test by giving FixedLookup access to RowPair 2023-10-25 16:22:33 +00:00
chriseth
4beb28280c Use global constraints in fixed lookup. 2023-10-25 13:16:52 +00:00
schaeff
f71cd82d49 allow ommiting latch if no operations and operation_id if <= 1 operations 2023-10-22 09:32:37 +02:00
Georg Wiese
02b404ffe4 External Witness Generation 2023-10-18 11:32:35 +00:00
Georg Wiese
263c03d77d WrapGL machine: return both high and low values 2023-10-05 16:18:28 +00:00
schaeff
a3ebf460fd remove constraints blocks 2023-10-04 12:52:59 +02:00
chriseth
f39872d539 Merge pull request #651 from powdr-labs/block-machine-cache-miss
Bug fixes in block machine witness generation
2023-10-04 08:52:23 +00:00
Georg Wiese
5268e6fc24 Add more machines to Powdr STD 2023-10-03 18:02:01 +00:00
Georg Wiese
380b96fcf1 Bug fixes in block machine witness generation 2023-10-02 14:08:33 +00:00
Leo
e231006976 Merge pull request #632 from powdr-labs/std
Add Powdr standard library
2023-10-02 12:14:31 +00:00
Georg Wiese
c857fe08b8 Add Powdr standard library 2023-10-02 11:36:44 +00:00
Georg Wiese
499b1e5c54 Add Poseidon machine on Goldilocks field 2023-10-02 08:46:03 +00:00
Georg Wiese
8ec6bffe96 Implement Multi-return 2023-09-28 21:22:32 +00:00
Georg Wiese
57b8749aa3 Witgen: Handle Block-to-Block calls 2023-09-27 16:26:36 +00:00
Georg Wiese
5a9ef99331 Block Machine Witgen: Handle last row differently 2023-09-27 10:21:37 +00:00
chriseth
a7c65e0990 Lambda expressions 2023-09-25 17:28:38 +02:00
Georg Wiese
6f280e4c03 Implement wrapping of arbitrary field elements (Goldilocks) 2023-09-14 14:49:52 +00:00
schaeff
75e806a0d6 inline imp before witgen
inline intermediate polynomials for halo2
2023-09-14 15:28:48 +02:00
Thibaut Schaeffer
17d22ed552 Module system (#558)
* implement import system

* address review comments

* use folder in macro expansion

* use folder in file loader

* use folder in canonicalizer

* use parse_absolute_path
2023-09-13 17:47:29 +02:00
schaeff
8191e8d009 support intermediate polynomials 2023-09-12 19:26:05 +02:00
Georg Wiese
dfa4828b6a Fix typo in comment 2023-09-06 14:37:12 +00:00
chriseth
f129f80840 Make instruction bodies contain pil statements. (#531) 2023-09-05 19:59:22 +02:00
Thibaut Schaeffer
d77bb0cc6c Static to static calls (#464)
* implement static-to-static calls

* fix conflict, comment out link to make book test pass

* address review comments, fix test

* address review, fix and test display for params

* address review comments

* ban operations on vms, instructions on cms

* rewrite "powdr asm" to "powdr-asm" everywhere

* fix lint

* address review comments
2023-09-05 12:56:23 +02:00
Georg Wiese
df4cd885b5 Benchmark: Fix Keccak benchmark, remove all other
* Benchmark: Fix Keccak benchmark, remove all other

* Build Keccak PIL in benchmark

* Remove keccak.pil
2023-09-01 23:01:37 +02:00
Thibaut Schaeffer
b80686a880 VM to VM calls (#392)
* implement call from vm to vm

* address review

* reduce diff in pilgen

* address review

* address more comments

* clean up readme, fix tests

* keep only one machine type for the block enforcer readme
2023-08-21 16:23:25 +02:00