275 Commits

Author SHA1 Message Date
Alex Ozdemir
54edb052e7 fix MPC tests to actually use MPC generation..
Also, crash if we find party annotations in proof mode
2021-06-26 00:47:39 -07:00
Alex Ozdemir
1247e2cf6f ZoKrates MPC party numbers
Adds:
* Parsing party numbers from private annotations (e.g. private<1>, private<2>, ...)
* A "mode" flag to the ZoKrates generator which is either Proof or Mpc(party_count)
* Appropriate generation
* Modifications to the circ driver
* two tests
2021-06-26 00:40:13 -07:00
Alex Ozdemir
fad440db7f Tests 2021-06-25 23:56:51 -07:00
Alex Ozdemir
ab2a687ef5 ZoKrates stdlib 2021-06-25 23:07:16 -07:00
Alex Ozdemir
edd12ca69f link to the thesis 2021-06-18 13:12:20 -07:00
Alex Ozdemir
811166cb56 Generalize Constraints to Computation.
Laying the foundation for MPC. Proofs are a special case with some
extension traits in ir::term
2021-06-18 12:38:19 -07:00
Alex Ozdemir
3e2c7a23df bg reading 2021-05-23 13:09:42 -07:00
Alex Ozdemir
ddc67dce61 fmt 2021-05-22 10:08:33 -07:00
Alex Ozdemir
f7146bdd03 term! doc 2021-05-22 09:59:32 -07:00
Alex Ozdemir
a31d0907a2 tuple note 2021-05-22 09:30:41 -07:00
Alex Ozdemir
0955b5cb62 clean up tuple stuff in R1CS 2021-05-22 00:45:58 -07:00
Alex Ozdemir
737056b686 Add header to term module 2021-05-22 00:33:48 -07:00
Alex Ozdemir
2ce8d4887e shortcuts for common compound ops 2021-05-22 00:24:20 -07:00
Alex Ozdemir
3c72c98ff5 fix flattening test 2021-05-21 22:41:58 -07:00
Alex Ozdemir
98b57a5b48 Remove Op::Let 2021-05-21 21:32:13 -07:00
Alex Ozdemir
6ab4e71964 Doc fix 2021-05-21 14:47:57 -07:00
Alex Ozdemir
0bf137a49e Better tuple support (as an IR pass) 2021-05-19 22:42:29 -07:00
Alex Ozdemir
0e2e9e10cc Fix model parsing by updating rsmt2
Apparently the most up-to-date version is here[1], not in Adrien's
repository.

[1]: https://github.com/kino-mc/rsmt2
2021-04-27 19:59:39 -07:00
Alex Ozdemir
96f5894add Doc everything. 2021-04-27 14:41:56 -07:00
Alex Ozdemir
0138e15001 more TODOs 2021-04-26 23:16:58 -07:00
Alex Ozdemir
52dc046a1b a little warning cleanup 2021-04-26 23:14:34 -07:00
Alex Ozdemir
12440bb9dd Tuple -> R1CS & simple test 2021-04-26 23:12:17 -07:00
Alex Ozdemir
6dd718eae0 Starting tuples 2021-04-26 21:40:44 -07:00
Alex Ozdemir
ae05a657a9 more README 2021-04-26 17:11:08 -07:00
Alex Ozdemir
3769b0ec31 architecture description 2021-04-14 10:49:21 -07:00
Alex Ozdemir
03a1fd9510 more ahash 2021-04-14 10:32:57 -07:00
Alex Ozdemir
c24e543507 Update all hash sets 2021-04-04 19:46:51 -07:00
Alex Ozdemir
38b6593cb9 Opts 2021-03-15 02:01:50 -07:00
Alex Ozdemir
6ce38360ef Better letifier.
It only letifies nodes with multiple parents.
2021-03-07 15:58:36 -08:00
Alex Ozdemir
3eda1991c0 Basic bellman backend 2021-02-28 15:57:32 -08:00
Alex Ozdemir
c56c78313e Add Circify::assign 2021-02-27 14:54:19 -08:00
Alex Ozdemir
fcfe7e84f0 Misc ZoKrates opts
* SHA CH function
* better Uext conversion
* better (more propagate-able) small XORs
2021-02-27 09:20:40 -08:00
Alex Ozdemir
ed3da1061d Eliminate dead 1 in mult 2021-02-26 23:43:40 -08:00
Alex Ozdemir
f564cf0dfa Zokrate & perf improvements 2021-02-26 20:26:50 -08:00
Alex Ozdemir
6c896af58f Update todos 2021-02-24 14:10:18 -08:00
Alex Ozdemir
b757b5c14c Tune optimizer 2021-02-24 14:04:33 -08:00
Alex Ozdemir
366fd9099f better inlining algorithm 2021-02-22 17:55:04 -08:00
Alex Ozdemir
23fd01f823 eq elim ckpt 2021-02-22 16:37:42 -08:00
Alex Ozdemir
984b4e915e ZoKrates: generalize builtins 2021-02-20 13:08:06 -08:00
Alex Ozdemir
8c5dfdcbbd Zokrates gen, draft 1 complete. Not really tested 2021-02-20 12:38:14 -08:00
Alex Ozdemir
5b05971808 ZoKrates: stmt span fn 2021-02-20 12:07:13 -08:00
Alex Ozdemir
3b155a7aab start interpreting ZoKrates 2021-02-19 00:56:46 -08:00
Alex Ozdemir
2a46dde869 Zokrates term finish 2021-02-17 23:12:37 -08:00
Alex Ozdemir
8157d40a00 fix test build 2021-02-17 15:31:49 -08:00
Alex Ozdemir
75b825f677 Zokrates term ckpt 2 2021-02-17 11:55:10 -08:00
Alex Ozdemir
bb16ac4e72 Zokrates term ckpt 2021-02-17 00:51:24 -08:00
Alex Ozdemir
1d020d21d6 Allow field-indexed arrays.
Also boolean indexed arrays, if that makes any sense...
2021-02-16 23:58:25 -08:00
Alex Ozdemir
3132977a23 fmt 2021-02-16 12:27:18 -08:00
Alex Ozdemir
6de075aef5 pf2bv 2021-02-16 12:26:13 -08:00
Alex Ozdemir
10ef9a4f10 R1cs optimization 2021-02-16 11:28:25 -08:00