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

Solve witness in Rust instead of Golang #58

Closed
wants to merge 11 commits into from
Closed

Solve witness in Rust instead of Golang #58

wants to merge 11 commits into from

Conversation

siq1
Copy link
Collaborator

@siq1 siq1 commented Dec 24, 2024

This PR requires #53.

This PR removes the Golang witness solver. Instead, in Go code, it owns a handle to a Rust witness solver, and the Rust witness solver can call Go hints.

@siq1
Copy link
Collaborator Author

siq1 commented Jan 2, 2025

This PR will not be merged.

@siq1 siq1 closed this Jan 2, 2025
siq1 added a commit that referenced this pull request Jan 2, 2025
siq1 added a commit that referenced this pull request Jan 2, 2025
siq1 added a commit that referenced this pull request Jan 2, 2025
@siq1 siq1 mentioned this pull request Jan 3, 2025
siq1 added a commit that referenced this pull request Jan 9, 2025
* update expander version

* update expander to current dev

* add default gkr config (changes from #58)
siq1 added a commit that referenced this pull request Jan 28, 2025
* add root Cargo.toml

* optimize

* fix

* fix: fix ci tests

* fix: fix clippy

* add a trivial circuit biulder

* fix lint

* fix lint

* update cargo dependencies

* update rust lib path

* update go ci

* support dynamic array in rust circuit definition

* minor changes

* remove temporary fix for public input

* update file names

* fix ci

* fix ci

* update trivial circuit code

* sync cargo updates

* Use gnark expr and fix GoBytes limit (#34)

* use gnark expr

* fix cmp

* use unsafe.Slice instead of C.GoBytes due to 2^31 limit

* update expander version

* update expander version

* add more tests

* fix compilation time of large multiply expr

* v1

* minor

* minor

* implement get random value api

* Log up Update (#40)

* simple refactor

* refactor

* fmt

* fix

* refactor logup to std (#41)

* fix bugs

* add more large add/mul expr tests (#43)

* implement mul gate fanout limit (#48)

* implement mul gate fanout limit

* fmt

* update gate order to compare input first

* clippy

* add dump circuit test

* Ecgo const variables (#51)

* ecgo const variables

* fix

* Debugging Evalution (#49)

* implement debug builder

* fmt

* Logup (#54)

* add logup std

* add logup std

---------

Co-authored-by: hczphn <[email protected]>

* Logup (#56)

* add logup std

* add logup std

* update queryhint (use map)

---------

Co-authored-by: hczphn <[email protected]>

* Cross layer circuit (#50)

* implement cross layer circuit and gates

* rewrite connect_wires to use whole circuit layout_ids

* cross layer relay

* opt and test

* support both circuit formats

* add back export to expander

* fmt

* add example

* fix

* possible opt

* fix

* Implement hints (#53)

* hints

* fmt

* allow generic hint caller (changes from #58)

* Rust const variables (#60)

* rust const variables

* clippy

* Update expander (#61)

* update expander version

* update expander to current dev

* add default gkr config (changes from #58)

* Virgo++ expander integration (#57)

* update expander version

* implement cross layer circuit export

* update expander to dev

* Efc logup (#69)

* add sha256 for m31 field

* move test to ./tests

* format

* pass clippy

* support logup new api: rangeproof, arbitrary key table

* sha256_m31 & 37bytes (#68)

* add sha256 for m31 field

* move test to ./tests

* format

* pass clippy

---------

Signed-off-by: siq1 <[email protected]>
Co-authored-by: siq1 <[email protected]>

* Change debug interface (changes from #52)

* Minor: Poseidon Mersenne-31 Width 16 circuit (#72)

* Disable 7950x3d test in CI (#76)

* Sha256-GF2 (#59)

* sha256_test

* optimize vanilla adder

* minor

* serialization

* remove scripts

* minor fix

* minor

* debugging sha256

* tmp commit

* tmp

* before switch to big endian

* switch to big endian & fix a hidden error in hash parameters

* clean up & fix brentkung

* clippy

* rename sha256 tests

* sha256 circuit in std, debugging

* update incorrect parameters

* minor

* fmt & switch to cross layer

* clippy & optimize by replacing some adds with add_const

* fmt after rebase

* fix a typo & fix a comment & clippy

* fmt..

---------

Co-authored-by: siq1 <[email protected]>

* Efc gnark (#70)

* Minor: Rust build script update (#78)

* fix race and randomness in artifact of tests

* fix clippy

* Update expander to v1.0.0

---------

Signed-off-by: siq1 <[email protected]>
Co-authored-by: Ya-wen, Jeng <[email protected]>
Co-authored-by: zhenfei <[email protected]>
Co-authored-by: Zhiyong Fang <[email protected]>
Co-authored-by: hczphn <[email protected]>
Co-authored-by: hczphn <[email protected]>
Co-authored-by: tonyfloatersu <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant