668 Commits

Author SHA1 Message Date
Nicholas Ward
af62688bd7 fixes 2021-07-27 10:19:46 -07:00
Nicholas Ward
d7a9274fef updated for add_gate changes 2021-07-23 20:06:00 -07:00
Nicholas Ward
da9017bcbc Merge branch 'main' into exp_gate 2021-07-23 20:01:58 -07:00
Nicholas Ward
b06d7bc8f5 cargo fmt 2021-07-23 15:56:25 -07:00
Nicholas Ward
0c4a1bc5af fixes 2021-07-23 15:56:14 -07:00
Nicholas Ward
8e2f33bd42 fix 2021-07-23 15:52:37 -07:00
Nicholas Ward
64d8a44320 cargo fmt 2021-07-23 15:47:03 -07:00
Nicholas Ward
1c8015b93d finished tests (don't pass yet) 2021-07-23 15:46:52 -07:00
Nicholas Ward
9932517e86 cargo fmt 2021-07-23 15:11:53 -07:00
Nicholas Ward
40055dc45d basic tests 2021-07-23 15:11:42 -07:00
Nicholas Ward
6d22ad6ee0 initial version of exponentiation gate 2021-07-23 15:08:54 -07:00
wborgeaud
6f8053cc37 Forgot to exponentiate from bits in computation of subgroup_x. Saves 80 gates. 2021-07-23 08:53:00 +02:00
Daniel Lubarov
bcf524bed0
Have add_gate take a generic type instead of GateRef (#125)
* Have add_gate take a generic type instead of GateRef

There are a couple advantages
- Users writing their own gates won't need to know about the `GateRef` wrapper; it's more of an internal thing now.
- Easier access to gate methods requiring `self` -- for example, `split_le_base` can just call `gate_type.limbs()` now.

* Update comment

* Always insert
2021-07-22 23:48:03 -07:00
wborgeaud
d435720d04
Merge pull request #123 from mir-protocol/remove_acc_in_gmimc
Remove accumulator in `GMiMCGate` and only use bits in the recursive FRI verifier
2021-07-23 08:22:16 +02:00
wborgeaud
a70e97befc Fix merge issues 2021-07-23 08:21:55 +02:00
wborgeaud
9a1c289f8e Merge branch 'main' into remove_acc_in_gmimc
# Conflicts:
#	src/gadgets/arithmetic.rs
2021-07-23 08:16:23 +02:00
wborgeaud
47b9936487 PR feedback 2021-07-23 08:15:13 +02:00
wborgeaud
d8b8161cb9
Merge pull request #122 from mir-protocol/eval_unfilterd_base
Manually implement `eval_unfiltered_base` for all gates
2021-07-23 08:12:01 +02:00
wborgeaud
981ed47867
Merge pull request #121 from mir-protocol/simplify_interpolation_test
Simplify overly complicated function in interpolation test
2021-07-23 08:11:02 +02:00
wborgeaud
a625774984
Merge pull request #120 from mir-protocol/clean_select
Remove rotation gadgets and clean up selection gadgets.
2021-07-23 08:04:11 +02:00
Nicholas Ward
907f1e9147
Merge pull request #124 from mir-protocol/order_bigint
Field order as BigUint
2021-07-22 14:50:14 -07:00
Nicholas Ward
0af5c3bdb8 addressed nit 2021-07-22 14:49:24 -07:00
Nicholas Ward
9c287aac79 fixed nits 2021-07-22 14:12:49 -07:00
Nicholas Ward
3612b9f05e Merge branch 'main' into order_bigint 2021-07-22 13:28:48 -07:00
Nicholas Ward
ff055b6466 cargo fmt 2021-07-22 13:27:40 -07:00
Nicholas Ward
3425bd0078 replaced some clones with refs 2021-07-22 13:26:38 -07:00
Nicholas Ward
57da32fb82 fixes to use references 2021-07-22 13:16:12 -07:00
Nicholas Ward
ffc90e902b exp_biguint test 2021-07-22 13:08:14 -07:00
Nicholas Ward
b6e74b8244 cargo fmt 2021-07-22 10:57:08 -07:00
Nicholas Ward
5d30124101 moved specific tests to prime_field_arithmetic 2021-07-22 10:56:20 -07:00
Daniel Lubarov
6bd197e9cf
Observe public inputs (#119)
* Observe public inputs

* Observe the hash instead
2021-07-22 10:27:10 -07:00
wborgeaud
e87aa2c90b Renaming 2021-07-22 16:25:47 +02:00
wborgeaud
0541956942 Remove useless clone 2021-07-22 16:22:23 +02:00
wborgeaud
1d92191227 Make exp_complement_bits take an iterator to avoid cloning. 2021-07-22 16:18:13 +02:00
wborgeaud
ca3a2fcfc8 Clippy 2021-07-22 16:09:54 +02:00
wborgeaud
c729a3c235 Remove all non-bits indices in the FRI verifier 2021-07-22 16:07:07 +02:00
wborgeaud
22fcc3bc06 Pass bits around 2021-07-22 15:10:55 +02:00
wborgeaud
15a64017dc We need only 126 wires now 2021-07-22 14:42:42 +02:00
wborgeaud
467485c3f0 Remove accumulator wires in GMiMCGate 2021-07-22 14:33:02 +02:00
wborgeaud
3a24e8f4c1 Manually implement eval_unfiltered_base for all gates 2021-07-22 14:00:55 +02:00
wborgeaud
b68be57615 Simplify interpolation test 2021-07-22 13:33:57 +02:00
wborgeaud
b65e792ff3 - Remove useless rotation gadgets
- rotate.rs -> select.rs
- Added `select()` and `select_ext`
- Optimize to use just one gate
2021-07-22 11:58:29 +02:00
wborgeaud
1d5cd4430e
Merge pull request #118 from mir-protocol/avoid_rotating
Avoid rotating in `compute_evaluation`
2021-07-22 11:23:45 +02:00
wborgeaud
be2e870aee PR feedback 2021-07-22 06:50:07 +02:00
Daniel Lubarov
01461ce388 Update a TODO 2021-07-21 21:25:52 -07:00
Nicholas Ward
1322b8d0d2 fixes 2021-07-21 14:59:14 -07:00
Nicholas Ward
59efe6a8fe added test_arithmetic for extension fields 2021-07-21 14:39:39 -07:00
Nicholas Ward
292a28e6e3 fixed tests 2021-07-21 14:34:01 -07:00
Nicholas Ward
b17dabefeb more fixes 2021-07-21 14:27:30 -07:00
Nicholas Ward
3e00a5819f fix: endian-ness 2021-07-21 14:12:33 -07:00