|
[package]
|
|
name = "folding-schemes"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
|
|
[dependencies]
|
|
ark-ec = "^0.4.0"
|
|
ark-ff = "^0.4.0"
|
|
ark-poly = "^0.4.0"
|
|
ark-std = "^0.4.0"
|
|
ark-crypto-primitives = { version = "^0.4.0", default-features = false, features = ["r1cs", "sponge", "crh"] }
|
|
ark-relations = { version = "^0.4.0", default-features = false }
|
|
ark-r1cs-std = { default-features = false } # use latest version from the patch
|
|
ark-circom = { git = "https://github.com/gakonst/ark-circom.git" }
|
|
thiserror = "1.0"
|
|
rayon = "1.7.0"
|
|
num-bigint = "0.4"
|
|
color-eyre = "=0.6.2"
|
|
|
|
# tmp imports for espresso's sumcheck
|
|
ark-serialize = "^0.4.0"
|
|
espresso_subroutines = {git="https://github.com/EspressoSystems/hyperplonk", package="subroutines"}
|
|
espresso_transcript = {git="https://github.com/EspressoSystems/hyperplonk", package="transcript"}
|
|
|
|
[dev-dependencies]
|
|
ark-pallas = {version="0.4.0", features=["r1cs"]}
|
|
ark-vesta = {version="0.4.0"}
|
|
ark-bn254 = "0.4.0"
|
|
tracing = { version = "0.1", default-features = false, features = [ "attributes" ] }
|
|
tracing-subscriber = { version = "0.2" }
|
|
|
|
[features]
|
|
default = ["parallel", "nova", "hypernova"]
|
|
hypernova=[]
|
|
nova=[]
|
|
|
|
parallel = [
|
|
"ark-std/parallel",
|
|
"ark-ff/parallel",
|
|
"ark-poly/parallel",
|
|
]
|
|
|
|
# The following patch is to use a version of ark-r1cs-std compatible with
|
|
# v0.4.0 but that includes a cherry-picked commit from after v0.4.0 which fixes
|
|
# the in-circuit scalar multiplication of the zero point. The commit is from
|
|
# https://github.com/arkworks-rs/r1cs-std/pull/124, without including other
|
|
# changes done between v0.4.0 and this fix which would break compatibility.
|
|
[patch.crates-io]
|
|
ark-r1cs-std = { git = "https://github.com/arnaucube/ark-r1cs-std-cherry-picked/" }
|