Skip to content

Progress on serialize and deserialize#276

Merged
gabriel-barrett merged 11 commits intomainfrom
ingress
Dec 4, 2025
Merged

Progress on serialize and deserialize#276
gabriel-barrett merged 11 commits intomainfrom
ingress

Conversation

@gabriel-barrett
Copy link
Member

No description provided.

@gabriel-barrett gabriel-barrett merged commit 245d5c3 into main Dec 4, 2025
17 checks passed
@gabriel-barrett gabriel-barrett deleted the ingress branch December 4, 2025 19:26
johnchandlerburnham pushed a commit that referenced this pull request Dec 12, 2025
* Ixon.UVar

* deserialize Ixon.EVar and Ixon.Blob

* some fixes

* small fix

* progress on serialize

* wip

* fixes and deserialize for more cases

* more fixes

* removed stream input from `serialize`

* uvar, evar

* `u64_get_trimmed_le` rewritten

---------

Co-authored-by: Arthur Paulino <arthurleonardo.ap@gmail.com>
johnchandlerburnham added a commit that referenced this pull request Dec 13, 2025
* refactor module organization, env types, and add richer scc result

* tmp rustfmt

* rust, const sorting and expr compilation

* compile_const

* wip: compiler structure, but erroring

* compiling Env in 11.32 seconds

* clippy and warnings

* manual stack management for compile_expr to avoid overflow

* xclippy warnings

* compilation in 6.65s, total pipeline in 16.8s

* remove cons_list

* ci: Add comparative benchmark report (#265)

* feat: Add Json serde for Benchmark API

* (WIP) Add comparison report and PR comment workflow

* Add one-shot benches and markdown report

* Export benchmark API in ix library

* Add env var overrides for config settings

* Finish report pretty-printer

* Fix `bench.yml`

* Scope permissions with app token

* Fix security alert

* Fixup

* Start `Ixon` serde in Aiur (#268)

This patch implements (and changes) enough of the code base as a PoC of being able to provably bootstrap the precise Ixon whose hash is stated as an argument of the claim (as input of the Aiur entrypoint call).

This is done by reading the bytes from the `IOBuffer`, deserializing it and then serializing and hashing the respective bytes. Deserialization followed by serialization was the chosen solution because serialization is, in principle, cheaper. Thus the deserialization can be tagged as `#[unconstrained]` for extra speed.

Furthermore, the unconstrained tag is now more rigorous: an unconstrained function can no longer call a constrained function.

As an extra, the IxVM code has been split into multiple smaller Aiur toplevels to enable parallel elaboration by Lean.

---------

Co-authored-by: Gabriel Barreto <gabriel.aquino.barreto@gmail.com>

* chore: Clean up Benchmark API (#267)

* chore: Test benchmark PR

* Refactor blake3 bench to use Criterion

* chore: Refactoring

* More fixes

* Lifted unconstrained restriction (#273)

* lifted unconstrained restriction

* filtered queries of multiplicity 0

* constrained inside unconstrained test

* Progress on serialize and deserialize (#276)

* Ixon.UVar

* deserialize Ixon.EVar and Ixon.Blob

* some fixes

* small fix

* progress on serialize

* wip

* fixes and deserialize for more cases

* more fixes

* removed stream input from `serialize`

* uvar, evar

* `u64_get_trimmed_le` rewritten

---------

Co-authored-by: Arthur Paulino <arthurleonardo.ap@gmail.com>

* IxVM file split (#278)

* rust compiler (#263)

* refactor module organization, env types, and add richer scc result

* tmp rustfmt

* rust, const sorting and expr compilation

* compile_const

* wip: compiler structure, but erroring

* compiling Env in 11.32 seconds

* clippy and warnings

* manual stack management for compile_expr to avoid overflow

* xclippy warnings

* compilation in 6.65s, total pipeline in 16.8s

* remove cons_list

* review comments

* Pointer pattern (#280)

* Pointer pattern

* elab new Pattern.pointer constructor

* pointer match test

---------

Co-authored-by: Arthur Paulino <arthurleonardo.ap@gmail.com>

* decompilation pipeline working

* fix failing condense.rs tests

* parallelize decoding

* xclippy warnings

---------

Co-authored-by: Samuel Burnham <45365069+samuelburnham@users.noreply.github.com>
Co-authored-by: Arthur Paulino <arthurleonardo.ap@gmail.com>
Co-authored-by: Gabriel Barreto <gabriel.aquino.barreto@gmail.com>
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.

2 participants

Comments