Georg Wiese
dd81fe014a
Fix soundness bug in conversion to Halo2
2024-02-12 11:36:31 +01:00
chriseth
3880db0e62
Merge pull request #1032 from powdr-labs/evaluate-functions-in-queries
...
`QueryProcessor`: Give access to functions
2024-02-08 07:52:03 +00:00
Georg Wiese
78e328f605
QueryProcessor: Give access to functions
2024-02-07 18:23:54 +01:00
chriseth
8f6cd49969
Introduce identity operator.
2024-02-07 16:04:55 +01:00
chriseth
2765e59a9f
Add types.
2024-02-06 10:25:04 +01:00
Leandro Pacheco
39c5c62028
AST parsing and impl Display fixes
...
- `instr x = y` statements must end with semicolon
- fixed Display implementation for AST objects such that
source->AST->source->AST works properly
- tests for the above
2024-02-05 18:40:00 -03:00
chriseth
f37058acb8
Distinguish between integer and field element.
2024-01-25 17:40:23 +01:00
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
bef7d80c70
Change labels to require just a single colon.
2023-12-19 14:07:21 +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
schaeff
844dd39618
get degree from namespaces
2023-11-07 10:32:41 +01:00
Georg Wiese
ec8c9943f8
VM-to-VM Witness Generation
2023-11-02 11:22:25 +00:00
Georg Wiese
5345624947
Block machine queries
2023-10-26 16:37:36 +00:00
schaeff
f71cd82d49
allow ommiting latch if no operations and operation_id if <= 1 operations
2023-10-22 09:32:37 +02: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
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
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
Georg Wiese
2ee4a58881
Block Machine: Handle last row ( #503 )
...
* Block Machine: Handle last row
* Make Poseidon SM work with cyclic backends
* Introduce solver
* Refactor
* Format
* Comment code
* Bug fixes
* Refactor
* Fix bug fix
* Add logging
2023-08-18 10:08:21 +02:00
Georg Wiese
0425f97a0a
Refactor Poseidon example into its own machine ( #479 )
...
* Refactor Poseidon example into its own machine
* Remove degree, rename and add comment
2023-08-10 10:58:23 +02:00
Georg Wiese
653565448b
Add witness generation benchmarks #462 ( #462 )
2023-08-08 11:52:12 +02:00
schaeff
497ea636ec
vm to block machine calls
2023-08-01 11:42:24 +02:00
schaeff
e965d7f0eb
infer the assignment register when assigning the output of an instruction
2023-07-31 23:59:21 +02:00
Georg Wiese
5d78ca7b78
Add Poseidon machine for BN254 #408
2023-07-31 16:22:09 +00:00
schaeff
88dfdea0a5
create powdr book
...
Co-authored-by: Leo <me@leoa.lt >
2023-07-27 14:51:22 +02:00