Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
6e672dd
WIP: ix hash command
johnchandlerburnham Mar 15, 2025
8271d54
make Proof serialize as an Ixon Const
johnchandlerburnham Mar 17, 2025
d34dc40
broken: connect canonicalizer to Ix.Meta
johnchandlerburnham Mar 17, 2025
4b3cfbe
fix: Nix devShell & light refactor (#55)
samuelburnham Mar 18, 2025
216bee1
Merge branch 'main' of github.com:argumentcomputer/ix into jcb/ix-cli
johnchandlerburnham Mar 25, 2025
5938727
ix store cli command
johnchandlerburnham Mar 25, 2025
52431bf
WIP: store command and new IxM structure
johnchandlerburnham Mar 28, 2025
e6a212c
megacommit implementing Ix commitment API
johnchandlerburnham Apr 14, 2025
63faf25
Merge branch 'main' of github.com:argumentcomputer/ix into jcb/ix-cli
johnchandlerburnham Apr 14, 2025
35d1311
fixup merge
johnchandlerburnham Apr 14, 2025
685f565
fixup merge 2
johnchandlerburnham Apr 14, 2025
93309c8
ix prove check command
johnchandlerburnham Apr 14, 2025
c9b3565
Merge branch 'main' of github.com:argumentcomputer/ix into jcb/ix-cli
johnchandlerburnham Apr 20, 2025
b90fd9b
implement ix prove CLI and simplify metaprogramming
johnchandlerburnham Apr 20, 2025
221f352
provecmd examples
johnchandlerburnham Apr 20, 2025
5aa0fc4
cleanup repo
johnchandlerburnham Apr 21, 2025
ed79280
simplify ZKVoting example app
johnchandlerburnham Apr 21, 2025
f8d7176
Merge branch 'main' of github.com:argumentcomputer/ix into jcb/ix-cli
johnchandlerburnham Apr 22, 2025
5e806e7
remove IO from the compiler core
johnchandlerburnham Apr 23, 2025
37c5779
add level params to Ix IR to support decompilation
johnchandlerburnham Apr 25, 2025
802650e
refactor Ix IR to support decompilation
johnchandlerburnham May 2, 2025
3de279e
implement decompilation mutdefs, compilation of mixed mutdefs, and te…
johnchandlerburnham May 3, 2025
e0973fe
wip
johnchandlerburnham May 16, 2025
6bb0129
decompilation roundtrip of Ix get_env working
johnchandlerburnham May 16, 2025
7e94095
WIP: new mutual definition changes
johnchandlerburnham May 23, 2025
8322be7
roundtrip compilation decompilation tests now passing
johnchandlerburnham May 23, 2025
347268b
add count to roundtrip
johnchandlerburnham May 23, 2025
efd6dbe
Merge branch 'main' of github.com:argumentcomputer/ix into jcb/ix-tests
johnchandlerburnham May 23, 2025
32f85d3
fixup merge
johnchandlerburnham May 23, 2025
7ebf0ee
fixup merge
johnchandlerburnham May 23, 2025
2c5d0db
fixup merge test
johnchandlerburnham May 23, 2025
a341cd3
Merge branch 'main' of github.com:argumentcomputer/ix into jcb/ix-tests
johnchandlerburnham May 24, 2025
87fc22d
remove style guide
johnchandlerburnham May 24, 2025
c3141e4
Merge branch 'main' of github.com:argumentcomputer/ix into jcb/ix-tests
johnchandlerburnham Jul 17, 2025
f4129dc
merge
johnchandlerburnham Jul 17, 2025
75405a0
Aiur2 prove/verify (#183)
arthurpaulino Jul 24, 2025
5c1a9c4
Remove binius (#185)
arthurpaulino Jul 24, 2025
104d546
Bench (#186)
arthurpaulino Jul 25, 2025
fc3eaa8
initial ixon serialization framework
johnchandlerburnham Aug 6, 2025
3b57c87
rustfmt
johnchandlerburnham Aug 6, 2025
a13133e
ixon univ/expr roundtrip
johnchandlerburnham Aug 11, 2025
7cc124f
Merge branch 'main' of github.com:argumentcomputer/ix into jcb/ix-vm
johnchandlerburnham Aug 11, 2025
bcd28d3
new ixon format passing proptest roundtrip
johnchandlerburnham Aug 15, 2025
a5ad9ea
remove old files
johnchandlerburnham Aug 15, 2025
6da9f7a
implement Ixon v2 in Lean
johnchandlerburnham Aug 22, 2025
da561e5
Ixon reconstruction in Rust from Lean pointers
arthurpaulino Aug 27, 2025
42f882c
use standard formatting
arthurpaulino Sep 3, 2025
e904b6d
Merge branch 'main' into jcb/ix-vm
arthurpaulino Sep 3, 2025
c720d38
fix Ixon Lean serialization
johnchandlerburnham Sep 3, 2025
4129fb8
WIP: Lean -> Rust round-trip serialization test
johnchandlerburnham Sep 3, 2025
160489f
fix FFI
arthurpaulino Sep 4, 2025
6ae63ff
WIP: synchronized Lean and Rust implementations, failing on metadata …
johnchandlerburnham Sep 11, 2025
5fa0c6f
fix FFI for ReducibilityHints::Regular
arthurpaulino Sep 11, 2025
b900a8f
WIP: improved performance of mutual def sorting, but compilation stil…
johnchandlerburnham Sep 19, 2025
ee44897
very WIP compiler rewrite
johnchandlerburnham Oct 3, 2025
3e78ae1
compiler refactored
johnchandlerburnham Oct 6, 2025
63b5e0c
proptest for `Ixon` serde
arthurpaulino Oct 6, 2025
1b3b6e9
try reverting caches to RBMap
johnchandlerburnham Oct 7, 2025
6df502d
bitblast now compiling
johnchandlerburnham Oct 7, 2025
2e54234
full compilation of Lean->Ixon, but slow
johnchandlerburnham Oct 9, 2025
b9ed33b
Tarjan's SCC algorithm for mutuals, so we can compile Recursors
johnchandlerburnham Oct 13, 2025
bd52874
simplify mutual compilation, remove IR
johnchandlerburnham Oct 15, 2025
c38a0e7
compile unsafe Lean?
johnchandlerburnham Oct 16, 2025
a999ecb
decompilation wip
johnchandlerburnham Oct 22, 2025
cf72c4b
decompilation progress, but failing on _cstage2
johnchandlerburnham Oct 22, 2025
f5ac204
preprocessing GroundM step, but CondenseM breaking
johnchandlerburnham Oct 23, 2025
e8454c4
fix CondenseM, GroundM breaking
johnchandlerburnham Oct 23, 2025
b1559e4
wip
johnchandlerburnham Oct 23, 2025
bf56368
GroundM and CondenseM working
johnchandlerburnham Oct 24, 2025
e886d17
CompileM/DecompileM roundtrip provisionally working up to 5% of get_env!
johnchandlerburnham Oct 24, 2025
e8d9b6e
wip
johnchandlerburnham Oct 24, 2025
03ab015
Merge branch 'main' of github.com:argumentcomputer/ix into jcb/ix-vm
johnchandlerburnham Oct 27, 2025
dff99c9
Merge branch 'main' of github.com:argumentcomputer/ix into jcb/ix-vm
johnchandlerburnham Oct 27, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 44 additions & 10 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ crate-type = ["staticlib"]
anyhow = "1"
indexmap = { version = "2", features = ["rayon"] }
multi-stark = { git = "https://github.com/argumentcomputer/multi-stark.git", rev = "11a2e444004609174e1ad59e366e7f621bdd427b" }
num-bigint = "0.4"
rayon = "1"
rustc-hash = "2"
tiny-keccak = { version = "2", features = ["keccak"] }
num-bigint = "0.4.6"
blake3 = "1.8.2"
# Iroh dependencies
bytes = { version = "1.10.1", optional = true }
Expand All @@ -29,6 +29,11 @@ bincode = { version = "2.0.1", optional = true }
serde = { version = "1.0.219", features = ["derive"], optional = true }


[dev-dependencies]
quickcheck = "1.0.3"
rand = "0.8.5"
quickcheck_macros = "1.0.0"

[features]
default = []
parallel = ["multi-stark/parallel"]
Expand Down
6 changes: 2 additions & 4 deletions Ix.lean
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
-- This module serves as the root of the `Ix` library.
-- Import modules here that should be built as part of the library.
import Ix.Ixon
import Ix.TransportM
import Ix.IR
import Ix.Meta
import Ix.GroundM
import Ix.CondenseM
import Ix.CompileM
import Ix.DecompileM
import Ix.Claim
import Ix.Prove
12 changes: 12 additions & 0 deletions Ix/Address.lean
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import Ix.Common
import Blake3

deriving instance Lean.ToExpr for ByteArray
deriving instance Repr for ByteArray

structure Address where
hash : ByteArray
Expand Down Expand Up @@ -74,6 +75,9 @@ instance : Repr Address where
instance : Ord Address where
compare a b := compare a.hash.data.toList b.hash.data.toList

instance : Inhabited Address where
default := Address.blake3 ⟨#[]⟩

def byteOfHex : Char -> Char -> Option UInt8
| hi, lo => do
let hi <- natOfHex hi
Expand Down Expand Up @@ -104,3 +108,11 @@ def Address.fromUniqueName (name: Lean.Name) : Option Address :=
| .str (.str (.str .anonymous "Ix") "_#") s => Address.fromString s
| _ => .none

structure MetaAddress where
data : Address
«meta» : Address
deriving Inhabited, Lean.ToExpr, BEq, Hashable, Repr, Ord

instance : ToString MetaAddress where
toString adr := s!"{hexOfBytes adr.data.hash}:{hexOfBytes adr.meta.hash}"

2 changes: 1 addition & 1 deletion Ix/Benchmark/Bench.lean
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import Ix.Claim
import Ix.Ixon
import Ix.Address
import Ix.Meta
import Ix.CompileM
Expand Down
13 changes: 0 additions & 13 deletions Ix/Claim.lean

This file was deleted.

Loading
Loading