v0.3.0
Pre-release
Pre-release
ICICLE Integration to Tachyon
Highlights
Optimizations
MSM
andFFT
is optimized with icicle. See MSM Gpu benchmark and FFT Gpu benchmark.- Circom proof generation becomes 4x faster using icicle.
- Parsing
zkey
andwtns
files becomes 3x faster.
New Features
Poseidon2
BinaryField
FieldMerkleTreeMMCS
ChaCha20Rng
What's Changed
- feat: implement poseidon2 by @chokobole in #413
- build: support building with clang on ubuntu by @chokobole in #414
- refac: generalize example circuit tests by @ashjeong in #415
- test: implement fibonacci circuits by @TomTaehoonKim in #279
- feat(circom): enable circom proof generation without compilation by @chokobole in #419
- refac(math): refactor prime fields by @chokobole in #422
- perf: prepare to skip zkey parsing by @chokobole in #425
- docs: add zip to Ubuntu prerequisites by @Insun35 in #427
- refac: fix zero case for inverse and div by @ashjeong in #424
- feat(math): implement binary field initially by @chokobole in #416
- test: add
no_zk
andverify
flag for circom benchmarking by @TomTaehoonKim in #423 - refac(math): move binary fields by @chokobole in #429
- feat: add initial template two adic fri pcs by @chokobole in #428
- refac: improve #424 by @chokobole in #431
- feat(math): add simd int by @chokobole in #432
- feat(math): impl remove zeros for sparse univariate poly by @batzor in #430
- feat: support openmp on mac by @batzor in #434
- feat: implement LogUp scheme by @Insun35 in #420
- feat: implement hash wrappers by @chokobole in #433
- perf(zk): optimize log derivative halo2 lookup by @chokobole in #437
- feat(math): enable poseidon to hash packed prime fields by @chokobole in #435
- refac: apply c type traits to point types by @chokobole in #438
- feat!(math): improve prime field (de)serialization by @chokobole in #440
- feat: add
FieldMerkleTree
by @chokobole in #436 - docs: update readme by @chokobole in #439
- refac(c/zk): apply c type traits by @chokobole in #445
- feat(crypto): add
FieldMerkleTreeMMCS
by @chokobole in #442 - feat(math): implement field extension for stark fields by @chokobole in #443
- docs: update circom README.md by @chokobole in #449
- feat(circom): introduce
-n
flag for specifying number of proof generation by @whoisgautxm in #452 - refac(zk): modularize expressions by @batzor in #446
- feat: impl
Radix2DitParallel
by @ashjeong in #441 - feat: add extension field merkle tree mmcs by @chokobole in #444
- feat(zk): implement plonky3 challenges by @chokobole in #448
- perf!: use icicle msm by @chokobole in #426
- perf: optimize fft by @GideokKim in #456
- feat: add rust binding for
DuplexChallenger
by @chokobole in #451 - feat(c/zk): generalize halo2 prover and verifier c API by @chokobole in #458
- feat: impl two adic multiplicative coset by @ashjeong in #457
- docs(halo2): update Halo2 migration guide by @chokobole in #461
- build: prepare circom proof generation with cuda by @chokobole in #462
- feat(zk): implement air constraint system by @batzor in #453
- perf: use msm gpu when generating groth16 proof by @chokobole in #463
- feat: support scroll halo2 1.1 by @chokobole in #464
- fix(halo2)!: remove constraint system serialization from
vk.write()
by @chokobole in #467 - perf(halo2): apply batch commitment in
create_proof()
by @chokobole in #465 - perf: apply icicle ntt by @chokobole in #466
- feat: support
ChaCha20RNG
by @chokobole in #468 - perf: optimize circom proof generation by @chokobole in #469
- perf(circom): optimize zkey parsing by @chokobole in #471
- bulid: release tachyon v0.3.0 by @chokobole in #470
New Contributors
- @batzor made their first contribution in #430
- @whoisgautxm made their first contribution in #452
- @GideokKim made their first contribution in #456
Full Changelog: v0.2.0...v0.3.0