Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

prover2 (re-write of prover member crate) #1386

Draft
wants to merge 19 commits into
base: develop
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
.idea
*.log
*.json
*.sh
*.txt
*.srs
tmp
tmp
110 changes: 109 additions & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ members = [
"mock",
"testool",
"aggregator",
"prover"
"prover",
"prover2"
]
resolver = "2"

Expand Down
1 change: 1 addition & 0 deletions prover2/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
test_data/
30 changes: 30 additions & 0 deletions prover2/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
[package]
name = "prover2"
version.workspace = true
edition.workspace = true
license.workspace = true

[dependencies]
aggregator = { path = "../aggregator" }
eth-types = { path = "../eth-types" }
gadgets = { path = "../gadgets" }
zkevm-circuits = { path = "../zkevm-circuits" }

anyhow.workspace = true
base64.workspace = true
ethers-core.workspace = true
halo2_proofs.workspace = true
once_cell.workspace = true
rand.workspace = true
rand_xorshift.workspace = true
serde.workspace = true
serde_json.workspace = true
snark-verifier.workspace = true
snark-verifier-sdk.workspace = true

git-version = "0.3.5"
thiserror = "1.0"
tracing = "0.1"

[dev-dependencies]
tracing-subscriber = { version = "0.3", features = ["env-filter", "std"] }
13 changes: 13 additions & 0 deletions prover2/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
help: ## Display this help screen
@grep -h \
-E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | \
awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
# usage:
# make download-setup -e degree=20 dir=./test_data/.params
download-setup:
sh scripts/download_setup.sh ${degree} ${dir}

# usage:
# make setup-test-data -e dir=./test_data/.configs
setup-test-data:
sh scripts/setup_test_data.sh ${dir}
14 changes: 14 additions & 0 deletions prover2/configs/layer1.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"strategy": "Simple",
"degree": 24,
"num_advice": [
15
],
"num_lookup_advice": [
2
],
"num_fixed": 1,
"lookup_bits": 20,
"limb_bits": 88,
"num_limbs": 3
}
14 changes: 14 additions & 0 deletions prover2/configs/layer2.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"strategy": "Simple",
"degree": 25,
"num_advice": [
1
],
"num_lookup_advice": [
1
],
"num_fixed": 1,
"lookup_bits": 24,
"limb_bits": 88,
"num_limbs": 3
}
14 changes: 14 additions & 0 deletions prover2/configs/layer3.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"strategy": "Simple",
"degree": 21,
"num_advice": [
63
],
"num_lookup_advice": [
8
],
"num_fixed": 2,
"lookup_bits": 20,
"limb_bits": 88,
"num_limbs": 3
}
14 changes: 14 additions & 0 deletions prover2/configs/layer4.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"strategy": "Simple",
"degree": 26,
"num_advice": [
2
],
"num_lookup_advice": [
1
],
"num_fixed": 1,
"lookup_bits": 25,
"limb_bits": 88,
"num_limbs": 3
}
14 changes: 14 additions & 0 deletions prover2/configs/layer5.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"strategy": "Simple",
"degree": 21,
"num_advice": [
4
],
"num_lookup_advice": [
1
],
"num_fixed": 1,
"lookup_bits": 20,
"limb_bits" :88,
"num_limbs": 3
}
14 changes: 14 additions & 0 deletions prover2/configs/layer6.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"strategy": "Simple",
"degree": 26,
"num_advice": [
1
],
"num_lookup_advice": [
1
],
"num_fixed": 1,
"lookup_bits": 25,
"limb_bits": 88,
"num_limbs": 3
}
15 changes: 15 additions & 0 deletions prover2/scripts/download_setup.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
set -x
set -e

# Set degree to env SCROLL_PROVER_MAX_DEGREE, first input or default value 26.
degree="${SCROLL_PROVER_MAX_DEGREE:-${1:-26}}"

# Set the output dir to second input or default as `./integration/params`.
dir="${2:-"./test_data/.params"}"
mkdir -p "$dir"

file="$dir"/params"${degree}"
rm -f "$file"

# degree 1 - 26
axel -ac https://circuit-release.s3.us-west-2.amazonaws.com/setup/params"$degree" -o "$file"
11 changes: 11 additions & 0 deletions prover2/scripts/setup_test_data.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
set -x
set -e

dir="${1:-"./test_data/.configs"}"
mkdir -p "$dir"

for ((i = 1; i < 7; ++i)); do
template="./configs/layer${i}.config"
file="$dir/layer${i}.config"
jq ".degree = ${i}" ${template} > ${file}
done
Loading
Loading