therealyingtong
1c877f3caf
ecc::chip: Introduce ScalarVar enum.
2022-05-05 21:14:21 +02:00
therealyingtong
6f2fc57b3c
Rename FixedPoint::ScalarKind -> FixedPoint::FixedScalarKind.
2022-05-05 21:14:21 +02:00
therealyingtong
5ebfe91eee
Introduce ecc::BaseFitsInScalarInstructions trait.
2022-05-05 21:14:20 +02:00
therealyingtong
cbf3d6a7f6
EccInstructions: introduce witness_scalar_var() instruction.
2022-05-05 21:14:20 +02:00
therealyingtong
6d83db719e
EccInstructions::mul: take Self::ScalarVar instead of Chip::Var.
2022-05-05 21:14:20 +02:00
str4d
72ff677776
Merge pull request #511 from zcash/dependabot/github_actions/actions/checkout-3
...
Bump actions/checkout from 2 to 3
2022-05-05 16:08:26 +01:00
str4d
377de3998c
Merge pull request #554 from zcash/dependabot/github_actions/codecov/codecov-action-3.1.0
...
Bump codecov/codecov-action from 2.1.0 to 3.1.0
2022-05-05 16:07:57 +01:00
str4d
b2e2b9b081
Merge pull request #568 from zcash/circuit-review
...
Changes from Orchard circuit review
2022-05-05 16:03:31 +01:00
str4d
506e310d37
Merge pull request #570 from zcash/ff-0.12
...
Migrate to `ff 0.12`
2022-05-05 01:06:48 +01:00
Jack Grigg
3800de5918
Rename `RangeConstrained::subset_of` to `bitrange_of`
2022-05-04 23:52:15 +00:00
Jack Grigg
e04c8bfb4b
Migrate to `ff 0.12`
2022-05-04 23:36:18 +00:00
Jack Grigg
97864d714e
halo2_gadgets: Add `MessagePiece::from_subpieces`
...
We introduce a new `RangeConstrained` newtype wrapper for tracking the
number of bits to which some type has been constrained.
2022-05-02 16:04:02 +00:00
str4d
1ccef3b30a
Merge pull request #566 from zcash/ci-2-fix-2-bench
...
halo2: Disable default benchmark harness
2022-05-01 16:25:44 +01:00
Jack Grigg
f0168cf7dc
halo2: Disable default benchmark harness
...
See 55364f0d99
for why this is necessary.
2022-04-29 00:48:44 +00:00
dependabot[bot]
1d9ca93948
Bump actions/checkout from 2 to 3
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-29 00:26:50 +00:00
str4d
c73695188b
Merge pull request #565 from zcash/ci-fix-bench
...
CI: Fix Rust version used for benchmarks
2022-04-29 01:26:09 +01:00
Jack Grigg
6ff065c58c
CI: Fix Rust version used for benchmarks
2022-04-29 00:20:58 +00:00
ebfull
0c33fa4e6e
Merge pull request #564 from zcash/482-msrv-1.56.1
...
Set MSRV to 1.56.1
2022-04-27 13:05:12 -06:00
Jack Grigg
aa4639e6e7
Temporarily revert `resolver = "2"`
...
This breaks WASM bitrot checks, because it causes the regular
dependencies to be built without the `getrandom/js` flag that we
currently only enable for dev-dependencies. We can revert this once we
have a more reliable way to test WASM compatibility.
2022-04-27 16:53:38 +00:00
Jack Grigg
fdc6c9df19
halo2_gadgets: pprof 0.8
2022-04-27 12:58:16 +00:00
Jack Grigg
f4675997bc
Fix some clippy lints
2022-04-27 12:58:16 +00:00
Jack Grigg
e3f1bf68db
halo2_gadgets: Remove usage of `array::IntoIter::new`
...
Rust 2021 implements `IntoIterator` for arrays directly, instead of only
references to arrays.
https://doc.rust-lang.org/edition-guide/rust-2021/IntoIterator-for-arrays.html
2022-04-27 12:56:54 +00:00
Jack Grigg
f830c6f7fb
Remove pins for dependencies with MSRV-incompatible point releases
2022-04-27 12:28:19 +00:00
Jack Grigg
bb1ed8288a
Set edition to 2021
...
We also set `resolver = "2"` on the workspace; this is the default for
the root package in Rust 2021, but as we use a virtual workspace we need
to explicitly set it instead.
2022-04-27 12:28:19 +00:00
Jack Grigg
7688c371f6
Bump MSRV to 1.56.1
...
Closes zcash/halo2#482 .
2022-04-27 12:24:57 +00:00
ebfull
5f867336eb
Merge pull request #556 from zcash/migrate-chip-gates-to-constraints-helper
...
halo2_gadgets: Migrate chip gates to `Constraints::with_selector`
2022-04-26 12:28:04 -06:00
ebfull
26c604ddf9
Merge pull request #561 from ebfull/proof-fixups
...
Minor typos and fixes in security proof
2022-04-25 13:43:31 -06:00
Sean Bowe
1ea7aa1b89
Fix order of \epsilon bound.
2022-04-25 13:40:31 -06:00
Sean Bowe
05b8b77500
x -> x_3 rename in zero knowledge section.
2022-04-25 13:38:58 -06:00
Sean Bowe
d420b7825a
Remove redundant mention of blinding factors
2022-04-25 13:36:28 -06:00
Sean Bowe
b46848eaa8
Fix upper bound of \epsilon.
2022-04-25 13:34:42 -06:00
ebfull
2498d65bd8
Merge pull request #560 from ebfull/soundness
...
Add draft of halo2 proofs to the formal protocol description in book
2022-04-25 12:26:43 -06:00
Sean Bowe
8e58245b75
Add draft of halo2 security proof to the formal protocol description
2022-04-25 11:59:29 -06:00
str4d
5d99f7d5a1
Merge pull request #558 from zcash/fix-rustdoc-deploy
...
CI: Pass the correct `katex-header.html` path to rustdoc
2022-04-25 01:16:50 +02:00
Jack Grigg
2cf0125c78
CI: Pass the correct `katex-header.html` path to rustdoc
...
The header was moved to fix docs.rs deployment, but the CI workflow
wasn't updated to account for this.
2022-04-24 23:14:45 +00:00
str4d
34b467b8e0
Merge pull request #557 from zcash/fix-mdbook-deploy
...
Fix Halo 2 book deployment
2022-04-25 01:06:22 +02:00
Jack Grigg
b866548c5f
Revert "CI: Pin nightly version in book workflow"
...
This reverts commit 53427d19db
.
Closes zcash/halo2#503 .
2022-04-24 22:59:39 +00:00
Jack Grigg
d43c8612a3
CI: Use `ubuntu-latest` runner for book workflow
...
The `mdbook` binaries are currently built using `ubuntu-latest`, meaning
can end up relying on newer versions of GLIBC. Until this is fixed
upstream (https://github.com/rust-lang/mdBook/issues/1779 ), we will use
the same runner configuration as them.
2022-04-24 22:57:02 +00:00
Jack Grigg
b02800466a
halo2_gadgets: Migrate chip gates to `Constraints::with_selector`
...
Only one gate couldn't be migrated without altering the Orchard circuit.
2022-04-24 22:13:38 +00:00
Daira Hopwood
66827f3df9
Merge pull request #544 from zcash/book-patch-vanishing
...
[book] Use more intuitive expression for vanishing poly degree
2022-04-22 16:46:39 +01:00
dependabot[bot]
f52d477257
Bump codecov/codecov-action from 2.1.0 to 3.1.0
...
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action ) from 2.1.0 to 3.1.0.
- [Release notes](https://github.com/codecov/codecov-action/releases )
- [Changelog](https://github.com/codecov/codecov-action/blob/master/CHANGELOG.md )
- [Commits](https://github.com/codecov/codecov-action/compare/v2.1.0...v3.1.0 )
---
updated-dependencies:
- dependency-name: codecov/codecov-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-22 10:23:09 +00:00
str4d
66b2b3ba7e
Merge pull request #414 from zcash/constraints-helper
...
Add a `Constraints` helper
2022-04-22 11:52:06 +02:00
str4d
f49f4d16f2
Merge pull request #552 from zcash/benchmark-fft
...
Add benchmark for various FFT sizes
2022-04-20 23:42:22 +02:00
Sean Bowe
a02b9e2e7e
Add benchmark for various FFT sizes.
2022-04-20 13:09:58 -06:00
Jack Grigg
d93846f8fd
Note that `Constraints::with_selector` accepts arrays from 1.53
2022-04-20 10:55:55 +00:00
Jack Grigg
78de8a5c94
Add a `Constraints` helper
...
There are two existing patterns for constructing a gate from a set of
constraints with a common selector:
- Create an iterator of constraints, where each constraint includes the
selector:
```
vec![
("foo", selector.clone() * foo),
("bar", selector.clone() * bar),
("baz", selector * bar),
]
```
This requires the user to write O(n) `selector.clone()` calls.
- Create an iterator of constraints, and then map the selector in:
```
vec![
("foo", foo),
("bar", bar),
("baz", bar),
].into_iter().map(move |(name, poly)| (name, selector.clone() * poly))
```
This looks cleaner overall, but the API is not as intuitive, and it
is messier when the constraints are named.
The `Constraints` struct provides a third, clearer API:
```
Constraints::with_selector(
selector,
vec![
("foo", foo),
("bar", bar),
("baz", bar),
],
)
```
This focuses on the structure of the constraints, and handles the
selector application for the user.
2022-04-20 10:55:50 +00:00
str4d
46ba444169
Merge pull request #480 from zcash/477-mockprover-pretty-failures
...
Add `MockProver::assert_satisfied` with pretty-printed failures
2022-04-20 12:53:16 +02:00
Daira Hopwood
a307bc4e2d
Merge pull request #551 from daira/daira-book-combining
...
[book] Add description of selector combining optimization. fixes #466
2022-04-19 15:38:11 +01:00
str4d
69c138c25c
Clarify some comments and messages
...
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2022-04-19 16:04:19 +02:00
str4d
606afb8349
Merge pull request #445 from daira/mockprover-regression
...
Fix mock prover performance regression for lookup arguments
2022-04-19 14:17:17 +02:00