Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
145 commits
Select commit Hold shift + click to select a range
248bc8c
chore: added .idea to .gitignore
nikitamasych Sep 3, 2024
3d25e95
feat(zkevm_opcode_defs): added addresses for modexp, ecadd, ecmul, ec…
nikitamasych Sep 3, 2024
8c6203f
feat(zk_evm_abstractions): added modexp, ecadd, ecmul, ecpairing; exp…
nikitamasych Sep 4, 2024
5db81ba
feat(zk_evm): added tests for modexp, ecadd, ecmul, ecpairing
nikitamasych Sep 4, 2024
2f8c6b3
feat(zkevm_circuits): added modexp, ecadd, ecmul, ecpairing
nikitamasych Sep 4, 2024
8573d07
feat(zkevm_circuits): added modexp, ecadd, ecmul, ecpairing to demux_…
nikitamasych Sep 4, 2024
e9573fc
feat(zkevm_circuits): added modexp, ecadd, ecmul, ecpairing to scheduler
nikitamasych Sep 4, 2024
67ecbcd
feat(circuit_definitions): added modexp, ecadd, ecmul, ecpairing to b…
nikitamasych Sep 4, 2024
fd2a7bd
feat(circuit_sequencer_api): added modexp, ecadd, ecmul, ecpairing to…
nikitamasych Sep 4, 2024
572eade
feat(zkevm_test_harness): added modexp, ecadd, ecmul and ecpairing
nikitamasych Sep 5, 2024
f5728f7
fix(zkevm_circuits): changed validation exceptions to reverse in bn254
nikitamasych Sep 23, 2024
5ef6412
fix: removed redundant validation in ecpairing
nikitamasych Sep 26, 2024
dd28762
fix(zkevm_circuits): ecmul implementation
nikitamasych Oct 1, 2024
4f0ff72
fix: capacity estimator working to ecadd
nikitamasych Oct 1, 2024
3e075bd
fix: capacity estimator working to ecmul
nikitamasych Oct 1, 2024
950dcc2
fix: capacity estimator working to modexp
nikitamasych Oct 2, 2024
448acc2
fix: capacity estimator working to ecpairing
nikitamasych Oct 3, 2024
345f298
feat(zk_evm_abstractions): enable ecpairing for arbitrary amount of p…
nikitamasych Oct 3, 2024
4662170
feat: implemented ecpairing witness in test-harness
nikitamasych Oct 4, 2024
c81f2a8
feat: optimized modexp
nikitamasych Oct 4, 2024
460afd5
fix(zkevm_test_harness): fixed stuff to run ecpairing capacity estima…
nikitamasych Oct 4, 2024
aa74269
fix: corrected path to save geometry config and run estimation
nikitamasych Oct 4, 2024
65e1c10
fix(zk_evm_abstractions): remove unnecessary reads for b, e, m sizes …
nikitamasych Oct 9, 2024
d041f15
fix: correct ecpairing witness formation in abstractions + cargo fmt
nikitamasych Oct 9, 2024
8e44907
fix: correct modexp expected memory queries amount
nikitamasych Oct 10, 2024
7362311
fix: correct amount of queries in asserts for witnesses
nikitamasych Oct 10, 2024
eea8810
feat: removed unnecessary modexp success query
nikitamasych Oct 11, 2024
774ba9b
fix(zkevm_circuits): added zero exp handling
nikitamasych Oct 11, 2024
a3210b2
fix: ecpairing witness in memory_related + removed unnecessary comput…
nikitamasych Oct 14, 2024
fd12533
feat: updated basic_test.json
nikitamasych Oct 14, 2024
a242508
perf(circuit_definitions): update ecpairing's CircuitBuilder
nikitamasych Oct 17, 2024
0c8975f
fix: resolve warnings
nikitamasych Oct 17, 2024
28815e9
feat(zkevm_test_harness): update basic_test.json
nikitamasych Oct 17, 2024
809958a
fix: rollback BASE_LAYER_CAP_SIZE to 16
nikitamasych Oct 30, 2024
a024cd2
fix: resolve some issues around ecpairing witness formation
nikitamasych Oct 31, 2024
ba3fbf4
fix: rollback RECURSION_LAYER_CAP_SIZE to 16
nikitamasych Oct 31, 2024
193a52a
fix: resolve prover_utils after rebase
nikitamasych Nov 15, 2024
1d604b7
tmp
nikitamasych Nov 19, 2024
9ac39e5
tmp: removed all precomputed vks and other meta
nikitamasych Nov 19, 2024
6a2ffc1
pairing with affine coordinates
Dec 5, 2024
81171c9
oracle update
Dec 10, 2024
9240e36
before integration
Dec 11, 2024
6d32557
chore: added .idea to .gitignore
nikitamasych Sep 3, 2024
e7d6dd7
feat(zkevm_opcode_defs): added addresses for modexp, ecadd, ecmul, ec…
nikitamasych Sep 3, 2024
a2a4cec
feat(zk_evm_abstractions): added modexp, ecadd, ecmul, ecpairing; exp…
nikitamasych Sep 4, 2024
2716404
feat(zk_evm): added tests for modexp, ecadd, ecmul, ecpairing
nikitamasych Sep 4, 2024
2c713f2
feat(zkevm_circuits): added modexp, ecadd, ecmul, ecpairing
nikitamasych Sep 4, 2024
ff16146
feat(zkevm_circuits): added modexp, ecadd, ecmul, ecpairing to demux_…
nikitamasych Sep 4, 2024
53ed5ee
feat(zkevm_circuits): added modexp, ecadd, ecmul, ecpairing to scheduler
nikitamasych Sep 4, 2024
96d7bf0
feat(circuit_definitions): added modexp, ecadd, ecmul, ecpairing to b…
nikitamasych Sep 4, 2024
bcf40f3
feat(circuit_sequencer_api): added modexp, ecadd, ecmul, ecpairing to…
nikitamasych Sep 4, 2024
1fb62b6
feat(zkevm_test_harness): added modexp, ecadd, ecmul and ecpairing
nikitamasych Sep 5, 2024
46d7a67
fix(zkevm_circuits): changed validation exceptions to reverse in bn254
nikitamasych Sep 23, 2024
deeb541
fix: removed redundant validation in ecpairing
nikitamasych Sep 26, 2024
07469dd
fix(zkevm_circuits): ecmul implementation
nikitamasych Oct 1, 2024
315a125
fix: capacity estimator working to ecadd
nikitamasych Oct 1, 2024
144d1e1
fix: capacity estimator working to ecmul
nikitamasych Oct 1, 2024
b5c5006
fix: capacity estimator working to modexp
nikitamasych Oct 2, 2024
4a342df
fix: capacity estimator working to ecpairing
nikitamasych Oct 3, 2024
426e29d
feat(zk_evm_abstractions): enable ecpairing for arbitrary amount of p…
nikitamasych Oct 3, 2024
3040ae0
feat: implemented ecpairing witness in test-harness
nikitamasych Oct 4, 2024
ba7bcba
feat: optimized modexp
nikitamasych Oct 4, 2024
297f231
fix(zkevm_test_harness): fixed stuff to run ecpairing capacity estima…
nikitamasych Oct 4, 2024
75391e6
fix: corrected path to save geometry config and run estimation
nikitamasych Oct 4, 2024
cb2d29d
fix(zk_evm_abstractions): remove unnecessary reads for b, e, m sizes …
nikitamasych Oct 9, 2024
a4442a3
fix: correct ecpairing witness formation in abstractions + cargo fmt
nikitamasych Oct 9, 2024
29acaa9
fix: correct modexp expected memory queries amount
nikitamasych Oct 10, 2024
40e7625
fix: correct amount of queries in asserts for witnesses
nikitamasych Oct 10, 2024
5f1aab7
feat: removed unnecessary modexp success query
nikitamasych Oct 11, 2024
529ebbe
fix(zkevm_circuits): added zero exp handling
nikitamasych Oct 11, 2024
da8ff1f
fix: ecpairing witness in memory_related + removed unnecessary comput…
nikitamasych Oct 14, 2024
b47f72c
feat: updated basic_test.json
nikitamasych Oct 14, 2024
dc2e152
perf(circuit_definitions): update ecpairing's CircuitBuilder
nikitamasych Oct 17, 2024
89e3c75
fix: resolve warnings
nikitamasych Oct 17, 2024
887daa9
feat(zkevm_test_harness): update basic_test.json
nikitamasych Oct 17, 2024
e9c8da0
fix: rollback BASE_LAYER_CAP_SIZE to 16
nikitamasych Oct 30, 2024
72b7fab
fix: resolve some issues around ecpairing witness formation
nikitamasych Oct 31, 2024
0a465ca
fix: rollback RECURSION_LAYER_CAP_SIZE to 16
nikitamasych Oct 31, 2024
b87df44
fix: resolve prover_utils after rebase
nikitamasych Nov 15, 2024
f9e7a7f
fix: compute setup in harness includes up to ecpairing now
nikitamasych Dec 11, 2024
920c6ed
fix: ecpairing fsm placeholder state defaults to 1
nikitamasych Dec 11, 2024
a76e983
tmp: removed all harness artifacts, increased nextest timeout, custom…
nikitamasych Dec 11, 2024
e3fda92
fix: post-review fixes
nikitamasych Dec 11, 2024
ca1d8a3
tests
Dec 12, 2024
33b7d77
resolving stack overflow: wip
Dec 12, 2024
f0c6388
on the finish line
Dec 13, 2024
aa74bed
with fully functional robust version
Dec 17, 2024
22ce285
final exp
Fitznik Dec 17, 2024
ead2190
refactoring
Fitznik Dec 18, 2024
bce8b4d
fin exp integration
Fitznik Dec 18, 2024
713a374
fixing bug with points at infty
Dec 18, 2024
a1fdc67
Merge branch 'kp' of https://github.com/distributed-lab/zksync-protoc…
Dec 18, 2024
1e9eb27
with point at infty working
Dec 18, 2024
59c0a4d
working naive multipairing + tests
Fitznik Jan 7, 2025
1f7ae46
entry point for the naive multipairing
Fitznik Jan 9, 2025
98fcdcb
partial integration
Fitznik Jan 11, 2025
331b3d5
out of circuit implementation
Fitznik Jan 14, 2025
669c39a
finished the rest
Fitznik Jan 15, 2025
9f18572
small fix
Fitznik Jan 15, 2025
c733bd4
Merge remote-tracking branch 'origin/main' into mmzk_0125_precompiles…
mm-zk Jan 25, 2025
48c4ed2
fixing issues in ecAdd and ecMul
mm-zk Jan 26, 2025
ecc1f67
put back computation internal status into circuits
mm-zk Jan 27, 2025
7e59c5e
updated dependencies
mm-zk Jan 27, 2025
ea175a8
fix: Fixing bugs found in EC precompile circuits (#93)
mm-zk Jan 29, 2025
3fb0560
fix: cargo fmt, tests and warnings (#95)
mm-zk Feb 4, 2025
a58322c
Merge branch 'main' into mmzk_0402_merge_main
mm-zk Feb 4, 2025
7c6f1e5
updated iterator
mm-zk Feb 4, 2025
568c2fe
fix: Fixing issue with scheduler function (#96)
mm-zk Feb 4, 2025
782ebf1
chore: Merged main & updated base circuit iterator (#98)
mm-zk Feb 4, 2025
a10189f
fix: updated geometry, added missing basic circuits (#99)
mm-zk Feb 4, 2025
b85cedd
chore: Adding verification keys & small fixes (#100)
mm-zk Feb 4, 2025
0cfa7c4
chore: Added tests from other crates & fixed (#102)
mm-zk Feb 5, 2025
2dbbcd3
feat: Added tests for in&out circuit ecpairing (#108)
mm-zk Feb 6, 2025
f253027
feat: Bug fixing + tests (#111)
Fitznik Feb 7, 2025
3a5bb33
chore: warnings cleanups (#112)
mm-zk Feb 7, 2025
db41e5e
fix: Added subgroup check in out-of-circuit for DL & more tests (#114)
mm-zk Feb 7, 2025
90fbb2a
feat: Changing in-circuit to use 'naive' multipairing (#115)
mm-zk Feb 7, 2025
505e683
refactor: common code in precompiles (#105)
koloz193 Feb 10, 2025
a08dd8b
chore: Updated basic_test.json (#104)
mm-zk Feb 10, 2025
ad87ed9
chore: Removing ecmultipairing naive (#116)
mm-zk Feb 10, 2025
6d3012b
Merge remote-tracking branch 'origin/main' into mmzk_0210_main_merge_v2
mm-zk Feb 10, 2025
15aba19
Merge remote-tracking branch 'origin/main' into mmzk_0210_main_merge_v2
mm-zk Feb 10, 2025
6f933bc
renamed entry in basic_test.json
mm-zk Feb 10, 2025
de7a691
Merge remote-tracking branch 'origin/main' into mmzk_0210_main_merge_v2
mm-zk Feb 10, 2025
5e93cb4
chore: merging main branch (#117)
mm-zk Feb 10, 2025
9bba625
fix: updated geometry config, and fixed issue in ECPairing (#120)
mm-zk Feb 11, 2025
0c892f8
chore: remove unused implementation of ECPairing (#121)
mm-zk Feb 11, 2025
f6d1a61
chore: balancing circuit capacity (#123)
mm-zk Feb 12, 2025
9bad25c
chore: removed test that were moved to zksync-crypto (#124)
mm-zk Feb 12, 2025
5c47797
Merge remote-tracking branch 'origin/main' into mmzk_0212_merge_main
mm-zk Feb 12, 2025
94db080
chore: merge origin/main (#125)
mm-zk Feb 12, 2025
b18028e
chore: Remove unused modexp for larger amounts of bits (#127)
mm-zk Feb 12, 2025
5df481b
feat: precompile tests and fixes (#126)
koloz193 Feb 21, 2025
97162cc
chore: Add precompiles tests (#130)
vladbochok Feb 21, 2025
35c89b6
refactor: remove rudimentary code (#133)
Fitznik Mar 14, 2025
dd4a44a
Merge remote-tracking branch 'origin/main' into feature/ec_precompiles
mm-zk Mar 18, 2025
4c44b9f
chore: Merging main branch (#134)
mm-zk Mar 18, 2025
5dd731e
fix: update recursive leaf iter (#142)
koloz193 Apr 2, 2025
030b6f7
fix: update 1.5.2 geometry (#145)
koloz193 Apr 2, 2025
644a6f3
fix: update vk and geometry (#147)
koloz193 Apr 3, 2025
8974834
fix!: removed redundant code (#140)
Fitznik Apr 9, 2025
18972dd
Optimization for evm_abstractions (#148)
Fitznik Apr 9, 2025
7aefdd3
refactore code: fmt + remove debug lines (#149)
Fitznik Apr 10, 2025
9c5e9f7
updated vk + minor stuff (#151)
Fitznik Apr 11, 2025
882bab4
chore: merge main into precompiles (#152)
koloz193 Apr 14, 2025
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
2 changes: 1 addition & 1 deletion .config/nextest.toml
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
[profile.default]
slow-timeout = { period = "180s", terminate-after = 5, grace-period = "30s" }
slow-timeout = { period = "5h", terminate-after = 5, grace-period = "30s" }

2 changes: 1 addition & 1 deletion .github/release-please/manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.151.3"
".": "0.151.5"
}
10 changes: 10 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,16 @@ jobs:
run: cargo nextest run --release --no-tests=pass --manifest-path crates/circuit_definitions/Cargo.toml
- name: Kzg tests
run: cargo nextest run --release --manifest-path crates/kzg/Cargo.toml
- name: Circuit tests
run: cargo nextest run --release --manifest-path crates/zkevm_circuits/Cargo.toml --test-threads 2
- name: ZKEVM tests
run: cargo nextest run --release --manifest-path crates/zk_evm/Cargo.toml
- name: ZKEVM abstractions tests
run: cargo nextest run --release --manifest-path crates/zk_evm_abstractions/Cargo.toml
- name: ZKEVM assembly tests
run: cargo nextest run --release --manifest-path crates/zkEVM-assembly/Cargo.toml
- name: ZKEVM opcode
run: cargo nextest run --release --manifest-path crates/zkevm_opcode_defs/Cargo.toml

formatting:
name: cargo fmt
Expand Down
41 changes: 41 additions & 0 deletions .github/workflows/publish-crates.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Publish crates

# Manual workflow to publish crates to crates.io
# can be used in case of failed release-please workflow
# to release crates after a bugfix

on:
workflow_dispatch:
inputs:
run-build:
type: boolean
description: 'Build the workspace before release.'
required: false
default: true
run-tests:
type: boolean
description: 'Run tests before release.'
required: false
default: false
org-owner:
type: string
description: 'Organization to add as owner of the crates.'
required: false
default: 'github:matter-labs:crates-io'


jobs:

publish-crates:
name: Publish to crates.io
runs-on: matterlabs-ci-runner-highdisk
steps:
- name: Publish crates
uses: matter-labs/zksync-ci-common/.github/actions/publish-crates@v1
with:
slack_webhook: ${{ secrets.SLACK_WEBHOOK_RELEASES }} # Slack webhook for notifications
cargo_registry_token: ${{ secrets.CRATES_IO_TOKEN }} # Crates.io token for publishing
org_owner: ${{ inputs.org-owner }}
run_build: ${{ inputs.run-build }}
run_tests: ${{ inputs.run-tests }}
gh_token: ${{ secrets.GITHUB_TOKEN }}
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
target/
**/*.rs.bk
Cargo.lock
.vscode
*.log
tmp_copy*
Expand Down
14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,19 @@
# Changelog

## [0.151.5](https://github.com/matter-labs/zksync-protocol/compare/v0.151.4...v0.151.5) (2025-04-02)


### Bug Fixes

* Remove num_words check for EVM bytecode decommitment ([#141](https://github.com/matter-labs/zksync-protocol/issues/141)) ([1af8ee5](https://github.com/matter-labs/zksync-protocol/commit/1af8ee585917caca7d0409252c3fff2cb3d15ba3))

## [0.151.4](https://github.com/matter-labs/zksync-protocol/compare/v0.151.3...v0.151.4) (2025-03-21)


### Bug Fixes

* **prover:** Changed circuit resolver for NodeLayer, Scheduler & RecursionTip ([#136](https://github.com/matter-labs/zksync-protocol/issues/136)) ([191c24d](https://github.com/matter-labs/zksync-protocol/commit/191c24de7edc38319844c66343acb2377a3cb2ee))

## [0.151.3](https://github.com/matter-labs/zksync-protocol/compare/v0.151.2...v0.151.3) (2025-02-20)


Expand Down
Loading