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

feat: Elliptic Curve Virtual Machine Circuit #628

Closed
wants to merge 1 commit into from

Commits on Jul 30, 2023

  1. feat: Modify bb.js to be compatible with next.js (#544)

    Co-authored-by: ludamad <[email protected]>
    each subrelation can now choose to not scale relation term by random polynomial
    
    permutation relation arithmetic defined exclusively in relationclasses
    
    comments, naming cleanup
    
    init
    
    ecc_vm_relation_test, algebra test passes sumcheck relation test does not
    
    wip
    
    eccvm, shiftable polynomials now have 0 at first coefficient
    
    added clearer comments to eccvm relations
    
    removed redundant test files
    
    eccvm composer test passes
    
    eccvm flavor (+ upstream circuit builder) are parametrised by curve type / commitment scheme
    
    wip
    
    wip
    
    wip
    
    wip
    
    reduced eccvm relation lengths
    
    added more descriptive comments to ecc_set_relation
    
    cleaned up sumcheck relation fowarding macros
    
    added missing explicit template declarations
    
    slight cleanup of method name bloat
    
    added missing method
    
    removed unused using declaration
    
    added explicit `lookup_library.hpp` file to compute logderivative inverses
    
    typo fix
    
    formatting reversions
    
    added ECCVM concepts to flavor
    
    removed unused logderivative method
    
    each subrelation can now choose to not scale relation term by random polynomial
    
    permutation relation arithmetic defined exclusively in relationclasses
    
    comments, naming cleanup
    
    removed TypeMuncher from relation_types
    
    remove foundation
    
    blah compiler errors
    
    chore: Switch to using `test_data_ssa_refactor` for `acir_tests` (#626)
    
    Co-authored-by: guipublic <[email protected]>
    compile error fix
    
    chore(barretenberg): Release 0.3.4 (#618)
    
    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
    compiler fix
    
    compiler fix
    
    wasm compiler fix
    
    docs: barretenberg README update (#1211)
    
    * docs: barretenberg README update
    
    * Update README.md
    
    docs: update barretenberg integration notes (#1215)
    
    This is also just continuing to test the barretenberg mirror.
    
    wasm compiler fix
    
    feat: internal keyword + lending contract and tests (#978)
    
    * feat: noir contracts and test file
    
    * feat: include is_internal in kernels
    
    * feat: assume isInternal unless told otherwise + update snaps
    
    * test: cleanup tests
    
    * chore: update noir
    
    * chore: recompile noir
    
    * fix: rebase issues and clean test
    
    * chore: prettier + update name
    
    * chore: fix snapshots
    
    * fix: add to ci
    
    * chore: minor fixes
    
    * fix: update noir FunctionData (cannot satisfy 💀)
    
    * fix: serialization
    
    * fix: bump lending contract
    
    * chore: address nits
    
    * chore: recompile noir
    
    * chore: recompile noir
    
    ---------
    
    Co-authored-by: Maddiaa0 <[email protected]>
    
    Merge pull request #1235 from AztecProtocol/acvm-0.21.0-compat
    
    feat!: update bberg ACIR parser to target ACVM 0.21.0
    
    feat: Goblin Honk Composer/Prover/Verifier (#1220)
    
    The Composer, Prover and Verifier for Goblin Ultra Honk. These are
    implemented as instantiations of the existing "Ultra" template classes,
    e.g. `GoblinUltraComposer = UltraComposer_<flavor::GoblinUltra>`, etc.
    
    This work makes it possible to create and verify a Goblin Ultra Honk
    proof. "Verification" here means confirmation that the ECC op gates have
    been correctly incorporated into the circuit (checked via a new
    relation) plus genuine verification of the conventional UltraHonk proof.
    The _correctness_ of the the ECC op gates is of course not verified, as
    that is the role of the other components of the Goblin stack.
    
    The new "op gate consistency" relation simply checks that the op wire
    values have been correctly copied into the conventional wires (needed
    for copy constraints) and that the op wire polynomials vanish everywhere
    outside the range of ECC op gates.
    
    - [ ] I have reviewed my diff in github, line by line.
    - [ ] Every change is related to the PR description.
    - [ ] I have
    [linked](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue)
    this pull request to the issue(s) that it resolves.
    - [ ] There are no unexpected formatting changes, superfluous debug
    logs, or commented-out code.
    - [ ] The branch has been merged or rebased against the head of its
    merge target.
    - [ ] I'm happy for the PR to be merged at the reviewer's next
    convenience.
    
    ---------
    
    Co-authored-by: ludamad <[email protected]>
    
    feat: Goblin translator prototype (#1249)
    
    Added a prototype of  goblin translator with accumulation gate.
    
    Automatic formatting when committing caused changes to several files,
    too
    
    - [ ] I have reviewed my diff in github, line by line.
    - [ ] Every change is related to the PR description.
    - [ ] I have
    [linked](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue)
    this pull request to the issue(s) that it resolves.
    - [ ] There are no unexpected formatting changes, superfluous debug
    logs, or commented-out code.
    - [ ] The branch has been merged or rebased against the head of its
    merge target.
    - [ ] I'm happy for the PR to be merged at the reviewer's next
    convenience.
    
    fix: Fixing external benchmarks (#1250)
    
    Some updates broke internal benchmarks. This fixes them
    
    chore: update directory from which to pull noir test cases (#1257)
    
    noir-lang/noir#2074 performs a cleanup of the
    location of the Noir test data directory and so bberg needs to update to
    match
    
    - [x] I have reviewed my diff in github, line by line.
    - [x] Every change is related to the PR description.
    - [x] I have
    [linked](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue)
    this pull request to the issue(s) that it resolves.
    - [x] There are no unexpected formatting changes, superfluous debug
    logs, or commented-out code.
    - [x] The branch has been merged or rebased against the head of its
    merge target.
    - [x] I'm happy for the PR to be merged at the reviewer's next
    convenience.
    
    fix: bootstrap.sh git hook for monorepo (#1256)
    
    This had the wrong path inside the monorepo.
    
    compiler fix
    
    compiler fix
    
    fixed error in eccvm lookup relation
    
    Merge branch 'master' into zw/eccvm-v2
    zac-williamson committed Jul 30, 2023
    Configuration menu
    Copy the full SHA
    070a1a4 View commit details
    Browse the repository at this point in the history