38 Commits

Author SHA1 Message Date
enrico.eth
7b26995f9c Update README.md 2024-03-20 12:21:36 +01:00
enrico.eth
36b873558e General Refactor (#18)
* chore: fix dependency

* chore: replace `compute_rlc` with `compute_rlc_fixed_len`

* feat: partial refactor

* chore: further refactor

* chore: further refactor

* chore: further refactor

* chore: further refactor

* chore: further refactor

* chore: further refactor

* chore: remove binding to `DEG` from PolyChip

* chore: further refactor

* chore: further refactor

* feat: refactor

* chore: modify function visibility

* chore: minor fixes

* feat: minor efficiency improvement

* feat: minor efficiency improvement

* feat: minor efficiency improvement

* feat: minor efficiency improvement

* chore: minor fixes

* feat: minor efficiency improvement

* chore: fix comments

* chore: readme

* chore: fix deps

* chore: minor fixes
2024-01-04 12:40:20 +01:00
Enrico Bottazzi
5c9376d0f3 chore: minor fixes 2023-12-05 14:09:32 +01:00
Enrico Bottazzi
698db006a2 chore: fix deps 2023-12-02 18:41:09 +01:00
enrico.eth
d11665aab4 Efficiency on poly_divide_by_cyclo (#12)
* chore: fix comments

* chore: assign `cyclo` from `bfv.in`

* fix: modify `poly_mul` signature

* feat: update `utils`

* fix: `bfv` example

* feat: add precompute phase

* feat: added further constraints

* feat: update constraints

* chore: rename `poly_reduce_by_modulo_q` and `poly_reduce_by_cyclo`

* fix: replace `poly_reduce_by_cyclo` by `constraint_poly_reduction_by_cyclo`

* chore: fix comments

* chore: fixes

* chore: fix comments

* chore: update json parsing to `BigInt`

* chore: further fixing and guidance

* feat: remove unnecessary operations `poly_reduce_by_modulo_q`

* chore: further fixing

* chore: update benches
2023-12-01 01:59:31 +09:00
enrico.eth
1e345e0a30 Update README.md 2023-11-16 18:26:54 +01:00
enrico.eth
378fe40330 feat: add constrain_poly_mul using Challenge API (#10)
* feat: add `constrain_poly_mul` using Challenge API

* chore: fix conflicts merging errors

* feat: added polynomials to `make_public` and enforced equality constraint on `c0` and `c1`

* feat: remove `poly_mul_equal_deg`

* chore: add further explanation on `Challenge API`

* fix: constraints on polynomial length

* chore: update `README`

* fix: overflow bug on `poly_mul`

* chore: update `benches`
2023-11-16 18:26:36 +01:00
enrico.eth
da6cb27d3f Update README.md 2023-11-15 14:25:44 +01:00
Enrico Bottazzi
b7bc70d617 chore: add benchmarks 2023-11-15 12:51:05 +03:00
Enrico Bottazzi
0a16c151b2 fix: overflow bug on binary_representation 2023-11-14 13:11:56 +03:00
Enrico Bottazzi
242d4ef9d8 chore: update rust-toolchain 2023-11-14 12:26:16 +03:00
enrico.eth
4a400d77c6 Add constraints on m (#9)
* feat: add constraint on `m`

* fix: `poly_distribution` and `poly_operations` take references to AssignedCell

* chore: update `README`
2023-11-08 18:27:21 +09:00
enrico.eth
b676653d24 Update README.md 2023-10-26 14:18:17 +02:00
enrico.eth
c1337efaa8 Merge pull request #3 from yuriko627/feat-poly-reduce
add circuit full flow
2023-10-06 13:08:44 +02:00
Enrico Bottazzi
1930a1c2a8 chore: update README 2023-10-06 12:54:11 +02:00
Enrico Bottazzi
44f8d250d7 fix: security analysis reviwe 2023-10-06 12:48:26 +02:00
Enrico Bottazzi
15281b86a0 fix: num_bits range in poly_divide_by_cyclo 2023-10-05 17:55:47 +02:00
Enrico Bottazzi
696226c99f fix: bug on range of coefficients of pk0_u and pk1_u 2023-10-05 17:39:54 +02:00
Enrico Bottazzi
f0d266533f fix: parsing of m 2023-10-05 16:27:13 +02:00
Enrico Bottazzi
e065e83f2a fix: div_euclid if dividend is equal to 0 2023-10-05 15:42:58 +02:00
Enrico Bottazzi
c5548425aa fix: num_bits assumption 2023-10-05 15:31:04 +02:00
Enrico Bottazzi
2e2b059f65 feat: complete bfv circuit 2023-10-05 14:54:11 +02:00
YURIKO NISHIJIMA
4dc1589959 fix: change N u64 to DEG usize 2023-10-05 08:06:07 -04:00
Enrico Bottazzi
3af8951859 fix: remainder padding and DEG type from u64 to usize 2023-10-05 11:27:25 +02:00
Enrico Bottazzi
e4ad7a6657 fix: poly_reduce and poly_divide_by_cyclo 2023-10-05 10:05:24 +02:00
Enrico Bottazzi
61a1e8e81c Merge branch 'master' into pr/3 2023-10-05 08:35:15 +02:00
enrico.eth
788db2eba0 Merge pull request #2 from enricobottazzi/Enrico/feat-poly-operations
Added features
2023-10-05 08:31:21 +02:00
YURIKO NISHIJIMA
3230404694 add poly_divide_by_cyclo 2023-10-05 00:29:44 -04:00
YURIKO NISHIJIMA
c76bb19f4d add poly_reduce 2023-10-04 23:21:13 -04:00
Enrico Bottazzi
b4ce8c23a2 chore: modify poly representation => last element = constant term 2023-10-04 14:48:08 +02:00
Enrico Bottazzi
e9f98a031b chore: rename distribution to poly_distribution 2023-10-02 15:41:05 +02:00
Enrico Bottazzi
ae37cacdee feat: added missing constraint on coeff within check_poly_from_distribution_chi_error 2023-10-02 15:40:36 +02:00
Enrico Bottazzi
ad564cea4d chore: bfv circuit comment 2023-10-02 15:09:54 +02:00
Enrico Bottazzi
2662b51afd fix: fetch q_bits operation 2023-10-02 15:08:30 +02:00
Enrico Bottazzi
03db449070 feat: add poly_mul_diff_deg 2023-10-02 12:40:45 +02:00
Enrico Bottazzi
baf6660833 feat: add check_poly_from_distribution_chi_error and check_poly_from_distribution_chi_key chips" 2023-10-01 15:16:45 +02:00
enrico.eth
110e54f98e Feature/init (#1)
* feat: add `poly_utils` and `poly_operations`

* fix: `poly_operations`

* feat: added `bfv` example compatible with halo2 scaffold

* feat: add `bfv.rs` circuit

* chore: add instructions to `bfv` circuit

* chore: add further instructions

* chore: update guidance

* chore: fix guidance

* fix: degree of `e1`

* feat: add input data

* chore: remove `poly_utils.rs` and ark dependencies

* feat: update `bfv` example
2023-10-01 21:13:50 +09:00
enrico.eth
050464bcee Initial commit 2023-09-25 08:43:29 +02:00