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

[Optimisation] Improve proof compaction, serialisation and portability #41

Open
9 tasks
h5law opened this issue Mar 13, 2024 · 1 comment
Open
9 tasks
Assignees
Labels
enhancement New feature or request

Comments

@h5law
Copy link
Collaborator

h5law commented Mar 13, 2024

Objective

Improve the serializaiblity & portability of the 3 proof types.

Goals

  • Decrease the size of the compacted proofs
  • Understand the impact of these changes on proof sizes in regular and compacted forms (i.e. benchmarks)
  • Create optionality to use compacted or non-compacted proofs for different use cases

Deliverables

  • Determine whether we need to introduce protobufs (or other encoding schemes) or improve the custom compression.
  • A benchmark suit of tests on regular and compressed proof sizes
    • As objects
    • As serialised byte slices
  • Improved compact forms of the proof types
    • Improved serialisation & portability of proofs
  • Improve documentation on proofs, how they work, and the additions made from this ticket

Non-goals / Non-deliverables

  • Change how proofs are generated, validated, or used
  • Make proofs insecure by way of unnecessary changes to their structure

General deliverables

  • Comments: Add/update TODOs and comments alongside the source code so it is easier to follow.
  • Testing: Add new tests (unit/fuzz/benchmarks) to the test suite.
  • Makefile: Add new targets to the Makefile to make the new functionality easier to use.
  • Documentation: Update architectural or development READMEs; use mermaid diagrams where appropriate.

Creator: @h5law
Co-owner: @Olshansk

@Olshansk
Copy link
Member

@h5law Made some edits to the issue. PTAL and update if necessary.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Backlog
Development

No branches or pull requests

2 participants