Alex Ozdemir
8140b1369e
reduce traversal memory usage through iterators ( #209 )
...
Previously, the traversal stack held (node, children queued) pairs.
When visiting a node without it's children queued, we would queue them
all. They take a lot of memory!
Now, the stack holds children iterators.
Also: this patch fixes many bugs introduced by the prior one.
2024-09-29 13:27:26 -07:00
Alex Ozdemir
2cdc019b86
Merge updates needed for SHA with lookups. ( #196 )
...
This is highly unoptimized, for now.
2024-06-19 13:09:43 -07:00
Alex Ozdemir
9ac4c26546
further fix OOB indices in lin ( #193 )
...
test them in lin and tr
2024-05-31 01:58:43 -07:00
Alex Ozdemir
3ba1be4653
array v->k lookups, membership assertions, and witness computation in Z# ( #186 )
...
* draft: rev-lookup, in-array, witness
* lint
* sparse examples
* fmt
2024-04-05 11:55:02 -07:00
Alex Ozdemir
0b88154ceb
Implement ROM-checking based on Haboeck's lookup argument ( #185 )
2024-02-22 22:40:11 -08:00
Alex Ozdemir
fca98ddc5a
add sample_challenge builtin ( #179 )
2023-11-15 09:59:29 -08:00
Alex Ozdemir
7a805323d0
Optimized transcript checking for covering ROMs ( #178 )
2023-11-14 18:20:39 -08:00
Alex Ozdemir
68b0b45556
User-directed transcript-based RAM checking. ( #176 )
...
* user-directed transcript-based RAM checking
when the `transcript` type qualifier is used.
* fix ram tests
* fmt & lint
* rm incomplete test
2023-11-02 23:50:16 -07:00
Alex Ozdemir
805a7f424f
RAM for non-scalar values ( #174 )
...
It is very naive. It assumes that any top-level array should be represented as a RAM, and that all internal structure should be unfolded.
2023-10-17 22:04:38 -07:00
Alex Ozdemir
4c5dafee95
A Waksman-based RAM permutation argument ( #171 )
...
This allows folks to use the RAM machinery while sticking with (non-interactive) R1CS output.
We're going to need this anyway when we benchmark our new approach.
2023-09-19 02:39:24 -07:00