Commit Graph

25 Commits

Author SHA1 Message Date
Sean Bowe 36a6b5fd90
Implementation of SHA256 majority operation for Boolean. 2018-03-21 19:21:16 -06:00
Sean Bowe abca61401e
Implementation of SHA256 choice operation for Boolean. 2018-03-21 19:21:16 -06:00
ebfull 39f1152e16
Merge pull request #53 from ebfull/circuit-improvements
Minor circuit improvements
2018-03-15 12:47:26 -06:00
Sean Bowe 52eb59766b
Optimize UInt32::addmany/BLAKE2s to combine equality constraints. (Closes #5) 2018-03-15 12:31:10 -06:00
Jason Davies 661f318eb7
Optimise Boolean::enforce_equal.
Use a single constraint instead of two.

Fixes #6.
2018-03-09 23:53:28 +00:00
Sean Bowe 3971ecd375
Abstract away the boolean conversion of field witnessing. 2018-03-05 10:52:56 -07:00
Sean Bowe 543f5cd49c
Change bit-endianness of into_bits/into_bits_strict. 2018-03-05 10:27:14 -07:00
Sean Bowe 3e15751fd1
Allocate the note value directly in little-endian bit order. 2018-03-05 09:37:13 -07:00
Sean Bowe 7a7774d8af
Remove unused imports in Boolean. 2018-02-23 11:28:17 -07:00
Sean Bowe 8c37212645
Remove kary_and from Boolean. 2018-02-23 11:25:59 -07:00
Sean Bowe a45986ff97
Remove enforce_nand. 2018-02-23 11:24:42 -07:00
Sean Bowe 0d56c7a902
Remove enforce_in_field. 2018-02-23 11:18:39 -07:00
Sean Bowe 69abd0391f
Optimize into_bits_strict. 2018-02-23 11:15:14 -07:00
Sean Bowe ec7323159c
Booleanize u64 objects. 2018-02-20 15:11:29 -07:00
Sean Bowe 1df7fbeeff
Refactor "booleanization" of objects. 2018-02-20 15:11:29 -07:00
Sean Bowe 2f95a9094a
Refactor to handle changes to ConstraintSystem API (no more Variable associated type, one is now static method). 2018-02-16 08:45:18 -07:00
Sean Bowe 814cfef769
Use more descriptive synthesis errors now available in bellman. 2018-02-16 08:45:17 -07:00
Sean Bowe 683aa93b44
Account for change in bellman's API for enforcement to use closures. 2018-02-16 08:44:27 -07:00
Sean Bowe e1ab3be3cc
Implementation of conditional negation for AllocatedNum. 2017-12-22 11:52:13 -07:00
Sean Bowe 031ae638ce
Tidy up the codebase (TODOs into github issues). 2017-12-18 22:08:57 -07:00
Sean Bowe 1e56289f19
Implementation of group hash in the circuit. 2017-12-18 11:34:15 -07:00
Sean Bowe 068fbbc2be
Implementation of `into_bits` for `Num`. 2017-12-17 09:12:04 -07:00
Sean Bowe d04c5acdb8
Implement `enforce_in_field` and `enforce_nand` for Boolean. 2017-12-16 16:01:13 -07:00
Sean Bowe dfd82439de
Implementation of k-ary AND. 2017-12-15 14:12:38 -07:00
Sean Bowe 86619c7334
Implementation of fundamental circuitry and primitive Jubjub curve arithmetic. 2017-12-06 10:06:34 -07:00