Commit graph

773 commits

Author SHA1 Message Date
Jack Grigg
825cb944de Remove FieldExt trait
One, two! One, two! And through and through
    The vorpal blade went snicker-snack!
He left it dead, and with its head
    He went galumphing back.

Closes zcash/pasta_curves#42.
2022-11-25 05:05:54 +00:00
Jack Grigg
56b73e32ce Move Ord bound from FieldExt to CurveAffine::{Base, Scalar}
This helps with the `FieldExt` removal while deferring the decision on
whether to add an `Ord` bound to `ff::PrimeField`.
2022-11-25 05:05:54 +00:00
Jack Grigg
9862b247d2 Migrate remaining FieldExt constants and methods into ff 2022-11-25 05:05:54 +00:00
Jack Grigg
bedaa0055c Remove unnecessary FieldExt bounds in crate::hashtocurve 2022-11-24 20:48:23 +00:00
Jack Grigg
fbce21598d Remove crate::arithmetic::Group trait
It was only present to enable an FFT implementation in `halo2_proofs`
that is generic over fields and groups, but we can replace it with an
equivalent trait in `halo2_proofs` that can have a blanket impl.
2022-11-24 20:48:23 +00:00
Jack Grigg
4c86de5e10 Remove FieldExt bound from SqrtHasher generic argument 2022-11-24 11:37:41 +00:00
Jack Grigg
0559163953 Remove unused bounds and methods from FieldExt 2022-11-24 11:37:41 +00:00
str4d
1bd803d57b
Merge pull request #53 from lurk-lang/serde-ep-eq
Implement serde for Ep, Eq
2022-11-23 08:57:08 +00:00
str4d
a5ac51d64e
Merge pull request #52 from zcash/field-trait-changes
Migrate to `ff` revision with square root backports
2022-11-21 17:45:49 +00:00
Samuel Burnham
5e7d16b811 Implement serde for Ep, Eq 2022-11-20 14:17:08 -05:00
Jack Grigg
1c21a8944c Migrate to ff revision with trait constants 2022-11-19 12:16:10 +00:00
Jack Grigg
6921efd8fd Migrate to ff revision with square root backports 2022-11-19 12:03:54 +00:00
str4d
f8ba48de4e
Merge pull request #48 from filecoin-project/impl-serde
Implement Serde for fields and curves
2022-11-19 12:02:52 +00:00
str4d
191c416a76
Merge pull request #45 from filecoin-project/ec-gpu-020
Update to ec-gpu 0.2 release
2022-11-19 11:58:45 +00:00
Volker Mische
025362ad5a Address code review 2022-10-17 10:18:09 +02:00
Volker Mische
52902e6fdf Implement Serde for fields and curves
Currently Serde is only implemented for `Fp`, `Fq`, `EpAffine` and `EqAffine`.
Support can be enabled with the `serde` feature.
2022-10-14 15:32:57 +02:00
str4d
db8305723d
Merge pull request #51 from zcash/release-0.4.1
Release 0.4.1
2022-10-13 22:07:04 +01:00
Sean Bowe
e48f641f76
Release 0.4.1 2022-10-13 14:58:44 -06:00
str4d
ede7f88784
Merge pull request #47 from jarys/uninline-portable
Add `uninline-portable` feature
2022-10-13 21:47:44 +01:00
Tomas Krnak
b889295e31 fixup! Add uninline-portable feature 2022-10-13 11:07:19 +02:00
Tomas Krnak
52af8293a8 fixup! Add uninline-portable feature 2022-10-13 10:54:30 +02:00
Volker Mische
fb04f7ad99 Update to ec-gpu 0.2 release
The traits of ec-gpu changed a bit, there's now also a `GpuName`
trait that needs to be implemented.

BREAKING CHANGE: `ec-gpu` v0.2 traits are not compatible with v0.1

All dependencies that use `ec-gpu` need to be on v0.2.
2022-09-07 15:44:48 +02:00
Tomas Krnak
378f5cfd08 Add uninline-portable feature 2022-08-17 17:39:04 +02:00
str4d
682a0e65b8
Merge pull request #40 from zcash/release-0.4.0
Release 0.4.0
2022-05-05 00:26:41 +01:00
Jack Grigg
94a5039b13 pasta_curves 0.4.0 2022-05-04 23:22:15 +00:00
Jack Grigg
0b8ed00c84 Migrate to Rust 2021 2022-05-04 23:22:15 +00:00
Jack Grigg
3329b4de85 Migrate to ff 0.12, group 0.12
MSRV is now 1.56.0.
2022-05-04 23:22:15 +00:00
str4d
6aa6882bda
Merge pull request #39 from zcash/38-fix-book-workflow
Fix book deployment
2022-05-05 00:05:07 +01:00
Jack Grigg
c2500bd999 Fix book deployment 2022-05-04 23:04:30 +00:00
ebfull
c9f5f90229
Merge pull request #37 from zcash/release-0.3.1
`pasta_curves 0.3.1`
2022-04-20 12:05:43 -06:00
Jack Grigg
94d6a8be03 pasta_curves 0.3.1 2022-04-20 11:15:43 +00:00
str4d
43d4496d6b
Merge pull request #23 from daira/dual-license
Ensure that GitHub's "View license" link points to complete license information
2022-04-19 16:10:07 +02:00
ebfull
a80ed3e8aa
Merge pull request #30 from dot-asm/repr-c
Add 'repr-c' feature to facilitate FFI.
2022-04-19 08:04:29 -06:00
Andy Polyakov
1bee4d2989 fixup! Document recent changes in CHANGELOG.md. 2022-04-19 08:13:51 +02:00
Andy Polyakov
73eb83d52d Document recent changes in CHANGELOG.md. 2022-04-19 00:12:55 +02:00
Andy Polyakov
ef39fba64c Simplify $name_affine.ct_eq().
By @ebfull's suggestion.
2022-04-18 19:04:03 +02:00
Andy Polyakov
3507ba6ffe Omit 'infinity' field from affine coordinates structure. 2022-04-13 22:23:23 +02:00
str4d
2796b6b65e
Merge pull request #31 from vmx/ec-gpu
Implement ec_gpu:GpuField for Fp/Fq
2022-03-24 17:08:37 +00:00
Daira Hopwood
cc57a3b75b
Merge pull request #34 from davidnevadoc/coordinates-pub
Add constructor for `Coordinates`
2022-03-24 11:19:46 +00:00
Volker Mische
678cd40419 chore: fix source formatting 2022-03-15 16:25:18 +01:00
David Nevado
8b101d67c4
Add Coordinates constructor 2022-03-12 15:46:43 +01:00
David Nevado
8a3643682f
Change Coordinates attrs back to pub(crate) 2022-03-12 15:44:46 +01:00
Volker Mische
b1f03fbc9c Document helper function 2022-03-11 17:47:17 +01:00
Volker Mische
cc51340dc5
fix: less allocations
Co-authored-by: str4d <thestr4d@gmail.com>
2022-03-11 17:37:47 +01:00
David Nevado
8042906484
Change Coordinates fields to pub 2022-03-07 11:19:15 +01:00
Volker Mische
870939ab03 Implement ec_gpu:GpuField for Fp/Fq
This commit introduces a new feature called "gpu", which enables an
`ec_gpu:GpuField` implementation of `Fp` and `Fq`. This enables the
field arithmetics to be run on a GPU.

The code to convert from a u64 to a u32 vector was taken from
07a84f9727/src/lib.rs (L102-L108)
2022-03-02 14:44:11 +01:00
Andy Polyakov
872065c8a1 Add 'repr-c' feature to facilitate FFI. 2022-02-17 17:06:02 +01:00
Daira Hopwood
ac5acca3b4 Ensure that GitHub's "View license" link points to complete license information.
refs https://github.com/zcash/librustzcash/issues/443

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2022-01-04 17:30:00 +00:00
ebfull
de99732e20
Merge pull request #29 from zcash/release-0.3.0
Release 0.3.0
2022-01-04 08:55:36 -07:00
Jack Grigg
6b2090ff2c pasta_curves 0.3.0 2022-01-03 13:57:42 +00:00