Commit Graph

49 Commits

Author SHA1 Message Date
ljedrz
e3bfcdaf84 perf(arithmetic): reuse some vectors used in mul and pow
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-12-02 12:34:47 +01:00
ljedrz
710bbc6730 perf: reduce allocations in Boolean's SignExtend impl
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 17:36:26 +02:00
ljedrz
78f98f1f26 perf: reduce allocations in signed_integer's CondSelectGadget impl
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 17:36:26 +02:00
ljedrz
f9e6b3caa8 perf: a small optimization to signed_integer equality checks
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 17:36:26 +02:00
ljedrz
63f80c0472 perf: reduce allocations in AllocGadget::{alloc, alloc_input}
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 17:36:26 +02:00
ljedrz
55d0f2e340 perf: reduce allocations in the Neg impl for Vec<Boolean>
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 17:36:26 +02:00
ljedrz
1e25738890 refactor: minor tweaks for signed_integer::div
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 17:36:26 +02:00
ljedrz
c62337e1fe perf: remove a redundant clone
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 09:36:08 +02:00
ljedrz
5fc4179e20 cleanup: remove a redundant map
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 09:36:08 +02:00
ljedrz
afe669babd perf: make signed_integer's is_constant method faster
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 09:36:08 +02:00
ljedrz
e1e22a2310 perf: vector pre-allocation and associated tweaks
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-08 11:47:03 +02:00
ljedrz
1fc9b902dd clippy: fix redundant_clone & clone_on_copy
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
266e6247e4 clippy: fix assign_op_pattern
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
c21b5ad2f3 clippy: fix useless_format
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:12:35 +02:00
ljedrz
b4ae089d29 clippy: fix double_must_use
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-05 17:18:29 +02:00
raychu86
ae10a78eb5 Add license header 2020-08-18 03:50:26 -07:00
raychu86
ce4c2977a8 Update signed integer pow impl 2020-08-14 16:10:26 -07:00
collin
279c322f2d fix division max value bug 2020-08-03 18:54:27 -07:00
howardwu
61d92ecc91 Remove revision peg for snarkOS dependency, change Leo to groth16, update to proper calling convention for snarks 2020-07-30 19:09:27 -07:00
collin
92bfad8cc3 clean up pr. remove field comparison 2020-07-17 16:14:13 -07:00
collin
6f9db500c7 add mul pseudocode 2020-07-17 14:15:22 -07:00
collin
7405a6284a rename gadgets, remove unused files 2020-07-17 13:56:13 -07:00
collin
cc33c68bea fix field tests, use num_bigint 2020-07-17 12:44:08 -07:00
collin
77d93d11bd refactor arithmetic gadgets into separate module 2020-07-16 22:35:30 -07:00
collin
2607204b79 remove unused zero extend 2020-07-16 21:07:42 -07:00
collin
402abac841 remove unnecessary clone 2020-07-16 20:35:41 -07:00
collin
2938a31aee fix int pow gadget 2020-07-16 20:19:51 -07:00
collin
d89e1c1e59 rename twos comp to negate 2020-07-16 20:12:29 -07:00
collin
d542a9716b fix uint and int comparators 2020-07-16 17:27:58 -07:00
collin
078c7e8a5a use helpers and rename errors 2020-07-15 22:44:20 -07:00
collin
2f39ecdbc3 impl infra for i type tests 2020-07-15 21:31:23 -07:00
collin
5ccda0750a add i8 i16 i32 i64 i128 types 2020-07-15 19:32:55 -07:00
collin
9ad0f34d07 impl pow for int types. add tests 2020-07-15 12:19:38 -07:00
collin
6ccc45f3d6 finish i type division and test 2020-07-15 00:10:29 -07:00
collin
f52dd77373 division i type wip 2020-07-14 20:17:37 -07:00
collin
eb5ab1fbe1 move comparator into leo-gadgets. impl cmp for i types 2020-07-14 18:32:54 -07:00
collin
a1f2366fe8 add evaluate eq gadget for i types 2020-07-14 17:37:04 -07:00
collin
6c0a5ed872 add cmp gadget 2020-07-13 09:44:40 -07:00
collin
5d25770b72 impl mul for int types. fix alloc 2020-07-11 04:00:42 -07:00
collin
615c3a763a impl cond select gadget for int types 2020-07-10 21:13:19 -07:00
collin
35cf68c01d impl sub for int types 2020-07-10 19:34:20 -07:00
collin
e9056cfd41 impl twos complement gadget 2020-07-10 19:14:59 -07:00
collin
5288134fd9 make add compatible with i128 2020-07-10 18:14:51 -07:00
collin
159e7cba9d impl binary adder, rca, addition test 2020-07-10 18:05:37 -07:00
collin
390296126b impl alloc 2020-07-10 04:04:55 -07:00
collin
5717d1f1ad impl addition for i types 2020-07-10 02:07:00 -07:00
collin
d4c8c4252d add skeleton macros for arithmetic 2020-07-10 00:33:54 -07:00
collin
192e6ba2dd add testing framework 2020-07-09 23:48:11 -07:00
collin
b032c2ce45 add signed-integers gadget member to workspace 2020-07-09 22:39:11 -07:00