Skip to content

v0.9.0

Compare
Choose a tag to compare
@gbotrel gbotrel released this 26 Sep 14:01
· 785 commits to master since this release
59a4087

What's Changed

Features

Core

  • feat: Groth16 MPC setup by @HSG88 in #515
  • feat: BSB22 commitments PlonK by @Tabaie in #586
  • feat: add simple key-value store to the builders by @ivokub in #480
  • refactor: define Committer interface for builders by @ivokub in #481
  • feat: add defer to the Compiler interface by @ivokub in #483
  • feat: PlonK frontend filter common cases of duplicate constraints by @gbotrel in #539
  • perf: various performance improvements for PlonK prover by @gbotrel in #593
  • feat, perf: introduce constraint blueprints. improve memory usage for constraint systems by @gbotrel in #641
  • perf: reduce mem allocs in scs frontend by @gbotrel in #654
  • feat: PlonK multicommit by @Tabaie in #668
  • feat: Groth16 Multicommits by @Tabaie in #702
  • feat: change opening order kzg by @ThomasPiellard in #694
  • feat: adds GKR api by @Tabaie in #443
  • feat: optimized PlonK solidity verifier for BN254 by @ThomasPiellard
  • perf, feat: assert.CheckCircuit(...) by @gbotrel in #825
  • Optimized BN254 Groth16 Solidity template with compressed proof support by @recmo in #810

Circuit

Fixes

  • fix: scs.MarkBoolean missing return w/ constant by @gbotrel in #491
  • fix: closes #509 api did not handle AssertIsLessOrEqual with constant as first param by @gbotrel in #511
  • fix: restrict constants in field emulation to width by @ivokub in #518
  • fix: subtraction overflow computation bug by @ivokub in #579
  • fix(emulated pairing): edge cases in torus-based final exp by @yelhousni in #613
  • fix: serializeCommitment by @SherLzp in #651
  • fix race condition when compiling circuits in parallel by @gbotrel in #676
  • fix: emulated ToBits by @ivokub in #731
  • fix: do not accumulate terms with zero coefficient for addition by @ivokub in #763
  • fix: assert that the binary decomposition of a variable is less than the modulus by @ivokub in #835

Refactor

  • refactor: PlonK uses constraint/ and couple of fixes closes #467 by @gbotrel in #493
  • refactor: std/algebra by @yelhousni in #526
  • refactor: expose all typed backends in gnark/backend (moved from internal/) by @gbotrel in #561
  • refactor: based on #515 generify groth16 MPC setup for all curves, flatten packages+ refactor by @gbotrel in #563
  • refactor: Minimize Commitment info in PlonK vk by @Tabaie in #633
  • refactor: hint name options by @Tabaie in #666
  • refactor, perf: 2-chains pairing + groth16 API by @yelhousni in #664

New Contributors

Full Changelog: v0.8.1...v0.9.0

What's Changed

  • fix: Plonk Fiat-Shamir Challenges with BSB22 by @Tabaie in #812
  • Perf: save some negations in emulated pairings by @yelhousni in #816