diff --git a/bellman/Cargo.toml b/bellman/Cargo.toml index 81ec8cdd3..a6f02b3a4 100644 --- a/bellman/Cargo.toml +++ b/bellman/Cargo.toml @@ -6,7 +6,7 @@ homepage = "https://github.com/ebfull/bellman" license = "MIT/Apache-2.0" name = "bellman" repository = "https://github.com/ebfull/bellman" -version = "0.6.0" +version = "0.7.0" edition = "2018" [dependencies] diff --git a/bellman/README.md b/bellman/README.md index d64dd9c1e..850f2e3e6 100644 --- a/bellman/README.md +++ b/bellman/README.md @@ -4,13 +4,16 @@ and primitive structures, as well as basic gadget implementations such as booleans and number abstractions. +`bellman` uses the `ff` and `group` crates to build circuits generically over a +scalar field type, which is used as the "word" of a circuit. Arithmetic +operations modulo the scalar field's prime are efficient, while other operations +(such as boolean logic) are implemented using these words. + ## Roadmap -`bellman` is being refactored into a generic proving library. Currently it is -pairing-specific, and different types of proving systems need to be implemented -as sub-modules. After the refactor, `bellman` will be generic using the `ff` and -`group` crates, while specific proving systems will be separate crates that pull -in the dependencies they require. +Currently `bellman` bundles an implementation of the Groth16 proving system. +This will be moved into a separate crate in the future, and `bellman` will +contain any utilities that make implementing proving systems easier. ## License diff --git a/zcash_proofs/Cargo.toml b/zcash_proofs/Cargo.toml index 472d8d153..6e4f7773d 100644 --- a/zcash_proofs/Cargo.toml +++ b/zcash_proofs/Cargo.toml @@ -15,7 +15,7 @@ edition = "2018" all-features = true [dependencies] -bellman = { version = "0.6", path = "../bellman", default-features = false, features = ["groth16"] } +bellman = { version = "0.7", path = "../bellman", default-features = false, features = ["groth16"] } blake2b_simd = "0.5" bls12_381 = { version = "0.2", path = "../bls12_381" } byteorder = "1"