1661 Commits

Author SHA1 Message Date
Daniel Lubarov
8d699edf21
Move some methods outside impl System (#484)
I didn't really have a good reason for putting there; seems more idiomatic to make them global since they don't need `self`/`Self`.
2022-02-14 13:47:33 -08:00
Nicholas Ward
96c9a2385b
Merge pull request #488 from mir-protocol/ecdsa_pub_hash
Impled `Hash` for `AffinePoint`
2022-02-14 11:57:22 -08:00
BGluth
1467732616 Impled Hash for AffinePoint 2022-02-14 12:41:24 -07:00
Nicholas Ward
983c066b80
Merge pull request #487 from mir-protocol/ecdsa_more_derive
Derived more traits for ecdsa types
2022-02-14 10:36:21 -08:00
BGluth
c9171517a4 Derived more traits for ecdsa types 2022-02-14 10:55:11 -07:00
Daniel Lubarov
55ca718a77 Test no longer ignored 2022-02-13 10:51:27 -08:00
wborgeaud
59d4e04bce
Merge pull request #480 from mir-protocol/fix_mul_sub_typo
Fix `mul_add` -> `mul_sub` typo
2022-02-11 19:12:00 +01:00
wborgeaud
7c71eb6690 Fix mul_add -> mul_sub typo 2022-02-11 10:25:51 +01:00
Daniel Lubarov
645d45f227
Column definitions for addition, range checks & lookups (#477)
* Column definitions for addition, range checks & lookups

I implemented addition (unsigned for now) as an example of how the arithmetic unit can interact with the 16-bit range check unit.

Range checks and lookups aren't implemented yet.

* Missing constraints

* Tweaks to get tests passing

* Reorg registers into files

* Minor
2022-02-10 12:05:04 -08:00
BGluth
387ce463fe
Merge pull request #478 from mir-protocol/from_partial_use_slice
`from_partial` now takes in a slice
2022-02-10 07:48:55 -08:00
BGluth
b2c747b171 Also did the same to the circuit version
- And removed the `debug_assert!`.
2022-02-09 23:38:35 -07:00
Daniel Lubarov
cfe52ad604
Add PrimeField, PrimeField64 traits (#457)
* Add PrimeField, PrimeField64 traits

* fix

* fixes

* fix

* `to_biguint` -> `to_canonical_biguint`
2022-02-09 21:50:18 -08:00
BGluth
adf5444f3f from_partial (non-target) now takes in a slice
- Doesn't need to take in a `Vec`.
2022-02-09 18:31:58 -07:00
BGluth
fe89fa949e
Merge pull request #476 from mir-protocol/ecdsa_derive
Added `Debug`, `Clone`, and `Copy` to ecdsa types
2022-02-09 13:35:52 -08:00
BGluth
8262389edd Added Debug, Clone, and Copy to ecdsa types 2022-02-09 14:22:13 -07:00
Jakub Nabaglo
efb1365021
Split system_zero::column_layout into submodules (#475) 2022-02-07 14:29:31 -08:00
wborgeaud
8a07d7af41
Merge pull request #474 from mir-protocol/match_recursive_verifier
Match native and recursive verifier structures
2022-02-07 22:24:03 +01:00
wborgeaud
0cc776922a Make get_challenges private. 2022-02-07 22:11:37 +01:00
wborgeaud
a10cd49b29
Merge pull request #473 from mir-protocol/standardize_set_method_order
Standardize `set_*` method parameter order
2022-02-07 22:06:21 +01:00
wborgeaud
415da246a5 Naming 2022-02-07 12:10:14 +01:00
wborgeaud
02746d8a0f Minor 2022-02-07 12:03:52 +01:00
wborgeaud
f39352896f Unused 2022-02-07 12:02:37 +01:00
wborgeaud
d7bdc75082 Further cleaning 2022-02-07 11:56:16 +01:00
wborgeaud
61fcc9048e Working 2022-02-07 11:47:58 +01:00
wborgeaud
afe89a61f4 Add methods 2022-02-07 11:23:49 +01:00
Daniel Lubarov
b40827e655
trim_to_len helper function (#472)
* trim_to_len helper function

Seems a little nicer IMO to only remove a certain number of zeros, vs removing all trailing zeros then re-adding some.

* PR feedback
2022-02-06 23:35:46 -08:00
wborgeaud
0a96d33f78 Standardize set_* method parameters order 2022-02-07 08:33:13 +01:00
Daniel Lubarov
a43e138f57
Move some FRI stuff into the FRI module (#471)
I think it would be nice to eventually have separate crates for IOP, FRI, PLONK, etc. This is one step toward that.
2022-02-06 23:13:12 -08:00
Daniel Lubarov
8f21fddd04
Add a PolynomialValues::selector method for convenience (#470)
Also adds a test for `eval_l_1_and_l_last`.
2022-02-06 23:06:04 -08:00
Daniel Lubarov
a51c517b5f Update doc 2022-02-06 12:07:42 -08:00
Jakub Nabaglo
83a572717e
Implement Poseidon in system_zero/permutation_unit (#459)
* Implement Poseidon in system_zero/permutation_unit

* Minor cleanup

* Daniel PR comments

* Update dependencies
2022-02-04 16:50:57 -08:00
Daniel Lubarov
b6a60e721d
Separate methods for hashing with or without padding (#458)
* Separate methods for hashing with or without padding

This should be a tad better for for performance, and lets us do padding in a generic way, rather than each hash reimplementing it.

This also disables padding for public inputs. It seems unnecessary since the number of public inputs is fixed for any given instance.

* PR feedback

* update
2022-02-04 13:08:57 -08:00
Jakub Nabaglo
659f1337f2
Permit small circuits in compute_quotient_polys (#469)
* Permit small circuits in `compute_quotient_polys`

* PR comments
2022-02-04 12:41:29 -08:00
wborgeaud
9eb9bac0db
Merge pull request #468 from mir-protocol/stark_constraint_degree
Stark constraint degree
2022-02-04 21:06:44 +01:00
wborgeaud
511cb863fc s/max_degree_bits/quotient_degree_bits 2022-02-04 20:42:49 +01:00
wborgeaud
fc502add01 Add quotient_degree_factor function 2022-02-04 20:24:58 +01:00
wborgeaud
9c6b2394f1 PR feedback 2022-02-04 20:20:12 +01:00
wborgeaud
1c30a5a84e Typo 2022-02-04 17:16:18 +01:00
wborgeaud
431bde2c72 Fix number of quotient polys 2022-02-04 17:04:07 +01:00
Jakub Nabaglo
0df1545f0c
Merkle tree bugfixes + tests (#467)
* Merkle tree bugfixes + tests

* Minor: Clippy + lints
2022-02-04 07:59:05 -08:00
wborgeaud
01f065b812 Minor 2022-02-04 16:46:33 +01:00
wborgeaud
f5ddf32490 Add file 2022-02-04 16:42:22 +01:00
wborgeaud
978e14030c Fix degree 2022-02-04 16:39:34 +01:00
wborgeaud
6b2b8b6e5d Use stark degree in compute_quotient 2022-02-04 16:36:22 +01:00
wborgeaud
1011c302ac Add test for system zero 2022-02-04 16:02:45 +01:00
wborgeaud
d99cabded9 Working 2022-02-04 15:56:59 +01:00
wborgeaud
588911f156
Merge pull request #461 from mir-protocol/fix_reducing_tests
Fix reducing tests
2022-02-03 21:05:15 +01:00
wborgeaud
77af9fa4cb
Merge pull request #462 from mir-protocol/disallow_degree_1
Disallow `quotient_degree_factor = 1`
2022-02-03 18:11:45 +01:00
wborgeaud
c1d519806d
Merge pull request #464 from mir-protocol/observe_fri_openings
Replace `observe_opening_set` by `observe_openings` taking a `FriOpenings`
2022-02-03 18:11:28 +01:00
wborgeaud
edc6b234d8
Merge pull request #465 from mir-protocol/change_ignored_tests
Ignore `test_curve_mul` and unignore recursive tests
2022-02-03 18:11:12 +01:00