Nicholas Ward
6e9318c068
u32 range check gate
2022-01-31 10:31:35 -08:00
Nicholas Ward
ddf5ee5d1f
more efficient nonnative subtraction
2022-01-31 10:31:35 -08:00
Nicholas Ward
8d3662692e
fmt
2022-01-31 10:31:35 -08:00
Nicholas Ward
50c24dfe8a
more efficient nonnative add and multi-add
2022-01-31 10:31:35 -08:00
Nicholas Ward
facb5661f3
fix
2022-01-31 10:31:35 -08:00
Nicholas Ward
3bbedecddb
ECDSA merge
2022-01-31 10:31:33 -08:00
Nicholas Ward
3ba61a4e9c
ECDSA merge
2022-01-31 10:24:49 -08:00
Nicholas Ward
07b71a9613
ECDSA merge
2022-01-31 10:24:49 -08:00
Nicholas Ward
440a5bd5d9
fmt
2022-01-31 10:24:49 -08:00
Nicholas Ward
f436c14242
ECDSA merge
2022-01-31 10:24:49 -08:00
Nicholas Ward
c561333c22
ECDSA merge
2022-01-31 10:24:49 -08:00
Nicholas Ward
82ce3ea8b2
ECDSA merge
2022-01-31 10:24:49 -08:00
Nicholas Ward
08fa4031ba
ECDSA merge
2022-01-31 10:24:47 -08:00
Nicholas Ward
9cac6d3a4d
fmt
2022-01-31 10:24:09 -08:00
Nicholas Ward
b796c73e49
ECDSA gadget and test
2022-01-31 10:24:09 -08:00
Nicholas Ward
f55948a621
removed debugging prints
2022-01-31 10:24:09 -08:00
Nicholas Ward
3756294322
ECDSA rebase
2022-01-31 10:24:09 -08:00
wborgeaud
20a3683e09
Merge pull request #451 from mir-protocol/start_stark_prover
...
Start of STARK prover
2022-01-28 17:13:59 +01:00
wborgeaud
dff9a40955
Batch alphas in constraint consumer
2022-01-28 17:06:40 +01:00
wborgeaud
c73f32ef2b
Remove initial values from Fibonacci STARK state
2022-01-28 13:59:43 +01:00
wborgeaud
e78630ae81
PR feedback
2022-01-28 05:02:31 +01:00
Hamish Ivey-Law
a74ffdb898
Remove GMiMC and Rescue hash functions ( #450 )
...
* Remove GMiMC and Rescue hash functions.
* rustfmt
2022-01-28 09:08:27 +11:00
wborgeaud
b6cb72b629
Comments
2022-01-27 13:27:06 +01:00
wborgeaud
1770e83c63
Clippy
2022-01-27 13:02:36 +01:00
wborgeaud
4a2681034e
Working prover
2022-01-27 12:58:56 +01:00
wborgeaud
3e0cb36063
Added test stark
2022-01-27 07:56:22 +01:00
Jakub Nabaglo
ab48cca1f3
Merkle tree optimizations ( #433 )
...
* Merkle tree optimizations
* Replace spawn with parallel iterators
Co-authored-by: Daniel Lubarov <daniel@lubarov.com>
* Missing imports
Co-authored-by: Daniel Lubarov <daniel@lubarov.com>
2022-01-26 11:54:39 -08:00
wborgeaud
d54cc9a7c8
First try
2022-01-26 16:08:04 +01:00
Daniel Lubarov
c0ac79e2e1
Beginning of STARK implementation ( #413 )
...
* Beginning of STARK implementation
* PR feedback
* minor
* Suppress warnings for now
2022-01-26 00:09:29 -08:00
Jakub Nabaglo
483799746b
Jemalloc warnings in Readme ( #448 )
2022-01-24 13:35:26 -08:00
Daniel Lubarov
2af85ccb8d
Make set_proof_target publicly accessible ( #447 )
...
* Make `set_proof_target` publicly accessible
Same code as before, except I broke it into a few functions and renamed a couple things.
* fmt
2022-01-24 11:16:38 -08:00
Daniel Lubarov
a6e64d1c7e
Replace proof_to_proof_target ( #445 )
...
* Replace `proof_to_proof_target`
With a `add_virtual_proof_with_pis` method that uses the inner circuit data, but does not require constructing a proof.
Note that this doesn't support IVC yet. For that, I think we can add a variant of `add_virtual_proof_with_pis` that takes several parameters like FRI arities, but does not involve `CommonCircuitData` (since no circuit has been build yet). It might also be best to avoid large objects like `FriParams`, and pass just the data we need.
Then there will be some nontrivial work to do recursion with "estimated" parameters (degree, arities, etc), check if the estimates were correct, and try again if not.
* PR feedback
2022-01-23 23:27:26 -08:00
Jakub Nabaglo
04fbb05d7c
Swap loops in compute_quotient_polys ( #444 )
2022-01-21 15:55:24 -08:00
Jakub Nabaglo
5f0eee1a9b
Bit-order reversal optimizations ( #442 )
...
* Bit-order in-place reversal optimizations
* optimization/simplification
* Done modulo documentation and testing on x86
* Minor type fixes on non-ARM
* Minor x86
* Transpose docs
* Docs
* Make rustfmt happy
* Bug fixes + tests
* Minor docs + lints
2022-01-21 10:44:46 -08:00
Jakub Nabaglo
86dc4c933a
Make all FFTs in-place ( #439 )
...
* Make all FFTs in-place
* Delete leftover marker
2022-01-21 10:26:43 -08:00
Daniel Lubarov
2e3a682bde
metadata
2022-01-21 10:14:44 -08:00
Daniel Lubarov
d69220e2a7
metadata
2022-01-21 10:06:40 -08:00
wborgeaud
8df9e7ec77
Merge pull request #436 from mir-protocol/fix_ldt_degree
...
Fix degree of polynomial used in LDT
2022-01-21 06:24:28 +01:00
wborgeaud
094e35b0bb
Merge pull request #440 from mir-protocol/simplify_compute_quotient
...
Remove `compute_quotient` and update division tests
2022-01-21 06:12:37 +01:00
Jakub Nabaglo
f98a6adfbf
Bit-order reversal benchmarks ( #441 )
2022-01-19 17:51:20 -08:00
wborgeaud
5255c04c70
Remove compute_quotient and update division tests
2022-01-19 12:31:20 +01:00
wborgeaud
27ebc21faf
Add comments for LDT fix in verifier
2022-01-19 11:57:46 +01:00
Daniel Lubarov
dcf63f536e
Have hash functions take references to avoid cloning ( #438 )
...
And other tweaks to `MerkleTree::new`
2022-01-18 12:51:04 -08:00
Hamish Ivey-Law
fcdcc86569
Move profile defns to root workspace toml. ( #437 )
2022-01-18 11:41:08 +11:00
wborgeaud
2bb0c4f4e7
Fix comment
2022-01-17 06:44:05 +01:00
wborgeaud
6f65620ff2
Add fix for recursive verifier.
2022-01-17 06:33:23 +01:00
wborgeaud
ec474efe12
Minor
2022-01-17 06:25:03 +01:00
Jakub Nabaglo
2aa46e148c
Optimize + test log2 functions ( #434 )
...
* Speed up log2 functions
* Move tests to `util` crate
* Trick
2022-01-16 15:15:25 -08:00
wborgeaud
fe0c232d6d
Working (not yet for recursion)
2022-01-14 07:56:06 +01:00
Sebastien La Duca
fe5a30ede1
make HashOutTarget internals public ( #430 )
2022-01-13 12:12:59 -08:00