All notable changes are documented in this file. Lines marked “(!)” indicate a breaking change.
0.44.0 - 2024-12-09
- Set minimum supported rust version (MSRV) (a6cc98a3)
0.43.0 - 2024-11-14
- (Claim) Accept more types for public input (6451d764)
- (!) Add field
version
toClaim
(48f896a7) - Display jump stack when printing
VMState
(0665f2f9) - (!) Optionally supply prover randomness seed (923e9e11)
- (!) Introduce assertion error (a987ebe7)
- (RAM) Drop cached polynomials (9bf637dd)
- (LDE) Only interpolate if result is used (4133b6e4)
- Reduce prover's space requirements (833244d0)
- Computations are independent of caching (ecd31083)
- Verify randomizers' large Hamming distance (ba2e92be)
- Benchmark barycentric evaluation (ce592a9d)
0.42.1 - 2024-09-26
- (degree_lowering) Cache node-degrees (6496a740)
- (TasmBackend) Exploit mixed-type instructions (8898bdc9)
- (TasmBackend) Use
addi
instruction if possible (6d55b80d)
- Correctness & soundness of degree lowering (667c9103)
- Set
opt-level=3
on build script execution (5e16b087)
- Add benchmark for degree lowering times (86cf9623)
0.42.0 - 2024-09-16
- Include
ConstraintType
in public API (1592459b) - Detect equivalent nodes in constraint circuit (17c5b616)
- Introduce instruction for dot product (5abf529b)
- Introduce instruction
merkle_step
(01c04e52) - Introduce memory friendly proving path (70b740e9)
- Introduce instruction
sponge_absorb_mem
(6dd9b54a) - Introduce instruction
recurse_or_return
(98dbd9ff) - Add instruction
addi
(3b5bc128) - Add dynamic counterpart to tasm code generator (72b6f5bc)
- Introduce instruction
merkle_step_mem
(3b1e3590) - Implement
Deref
forPublicInput
(5a521542) - Introduce instructions
pick
andplace
(b7693922)
- Don't mutate
HashSet
's content in-place (6e5443e5) - Use correct domain for deep codeword (4e52b67e)
- (docs) Correctly sum number of constraints (3bf33255)
- (ZK) Ensure ZK from quotient segment openings (be87aefe)
- (profiler) Correctly compute clock frequency (e1281b0e)
- Ensure node index for
merkle_step
is u32 (c510b163) - Fix arithmetic overflow in
MemoryRegion
(f83f8aa0)
- Faster domain-evaluation for too-large polynomial (3905d808)
- Use parallelism more when evaluating domain (8c623e82)
- Profile and fix slow zero-initialization (f7b13e74)
- Parallelize Filling of Degree-Lowering Table (9c02c646)
- Parallelize evaluation-part of quotient-LDE (82de2994)
- Use fastest polynomial multiplication (89cc89ad)
- Parallelize deep codeword inner product (72238cf5)
- (!) Halve number of combination codeword checks (deecc224)
- Sum mutually exclusive constraints (3e96faca)
- (!) Simplify constraints of instruction
swap
(62187169) - Parallelize table extension (#294) (0ac5c370)
- Combine constraints of illegal
num_words
(d74e10a9) - Combine constraints for stack push / pop (70361ff1)
- Combine constraints for group
keep_stack
(2ce5ff15) - Compress compressible constraints (e53402eb)
- Parallelize polynomial arithmetic in Bezout argument.
- (test) Remove super slow try-build test (65545fe9)
- Add arithmetization overview page (c5b7eec1)
- Describe cached/just-in-time low-degree-extension (e72a4185)
- Document the constraint generator (49864e42)
- Document
config
module (f05643ff) - Add overview of opcode pressure (903a5718)
- Add AIR circuit node count to arithmetization overview (c8436943)
- Add constraints overview table for AIR of degree 8 (ac98c22f)
- Add column counts for various degree lowering targets (c26cf9cc)
- Add dynamic AIR eval cost to overview (be9b4410)
- Test printing constraint circuits (5724997f)
- Include
{bfe, xfe}_{array, vec}
in prelude (4c27f360) - (!) Remove unused method
max_id
(9e99027f) - (!) Remove deprecated functions (d65730d8)
- (!) Make instruction names more consistent (96c92eab)
- Provide API to overwrite cache decision (0f313a7b)
- (profiler) Include tracing execution (4dea54d0)
- (test) Fail if spec needs updating (3e15ff9a)
- (bench) Streamline Fibonacci benchmark (3b210e67)
- Use types over anonymous tuples (4358acec)
- (!) Break cyclic build dependency (f594167d)
- (!) Seal
InputIndicator
trait (b803e13a) - (!) Seal trait
AIR
(44d94848)
- (!) Use
Polynomial
in FRI proof item (7367c677) - Compute segments directly (d62e5587)
- (!) Remove unused
JumpStackTraceRow
(e257c358) - (!) Improve internal profiler (fa7c8b70)
- (!) (profiler) Make
TritonProfiler
private (1ecd11cd) - (profiler) Remove from optimized builds (f4340159)
- (profiler) Accumulate loops (195d1854)
- (test) Automatically update spec overview (ac50fa33)
- (test) Simplify constraint checking, etc (6fd207f4)
- (!) Remove generic parameter from FRI (05c6be86)
- Verify FRI failure for too-high degree polys (262b048e)
- Increase coverage of constraint generator (06b1167b)
- Ensure public types implement auto traits (da1a99b0)
- (bench) Bench proving with cached / jit trace (4bc5b9fc)
- Assert uniqueness of nodes on fetch by id (51eb30a9)
- Test correct node substitution (cfe7d093)
- Test indicator polynomial properties (b8220690)
- Test FRI expansion factors > 4 (1edecc59)
recurse_or_return
needs jump stack content (b68f0233)- Test transition constraints of
xb_dot_step
(13d1fd12) - Test transition constraints of
xx_dot_step
(a64e8c24) - Test constraints for every instruction (0baff704)
- Verify that arguments, if any, can be changed (e55c2474)
- Deduplicate code using macros (592d7bfa)
- (dyn air) Verify that dynamic and static evaluators agree (574e407d)
- Add example program for
merkle_step_mem
(d9edddd4)
- Enable additional lints (dd496f71)
- Remove Makefile (d88a7613)
0.41.0 - 2024-04-23
- Add barycentric evaluation formula (7fe9b6de)
- (profile) Correct trace randomization profile (44abcda8)
- (!) Include last FRI polynomial into proof (f8a59c5e)
- (!) Use barycentric evaluation in FRI (991688a5)
- Update links to be valid (21ab79dd)
- Use barycentric formula in verifier (cff63b26)
- Assert table-linking arguments' properties (6b8ffd90)
- Test failure of incorrect last ronud poly (0fc7b7f5)
0.40.0 - 2024-04-16
- (!) Generate profiles despite unfinished tasks (f7ebd2cb)
- (!) Streamline accessing AET's heights (3f3a9fd1)
- (!) Track all relevant tables in VM profiler (fa38fa8b)
- (!) Don't treat randomizer polynomial special (9bbe963b)
- Minimize squeezes for combination weights (50b803c7)
- Re-organize prover steps (86a7799f)
- (test) Use minimal size for quotient domain (727ff8ec)
- Use faster polynomial coset evaluation (29849abe)
- Compute Bézout coefficients faster (652b7e9c)
- Add rationale for performed DEEP updates (74814884)
- Update documentation of
MasterTable
(d5c2049c) - Describe computation of Bézout coefficients (06123843)
- Use fewer glob
use
s (9ca39513) - (!) (circuit) Use challenge's index (e05e3ff3)
- (!) (circuit) No
Challenges
inevaluate
(15a8cd7f) - Use constant “lookup table height” more (22834b03)
- Benchmark Bézout coefficient computation (ab135be4)
- Deprecate method
num_quotients()
(363ae773) - (!) Use
BFieldElement
s everywhere (05bd271a) - (!) Make
ProofStream
non-generic (bde928d4) - (!) Remove deprecated type aliases (14d08ef8)
- (!) Rename
TableId
variants (c265cf4d) - Bypass quotient table (ff305459)
- Benchmark program with lots of memory I/O (c7613878)
- Improve readability of
.verify()
slightly (e0ac1096)
0.38.2 - 2024-03-14
- Emit instruction's opcodes, not instructions (7c3de15b)
- Deprecate
Challenges::count()
(df783a04) - Deprecate too-simple helper method (bf8adf2d)
- Deprecate some shallow methods (df0715e7)
0.38.1 - 2024-03-11
- Make degree lowering deterministic (f230ba70)
- Public
NUM_*_CONSTRAINTS
constants (abd15be8)
0.38.0 - 2024-03-07
- Evaluate AIR constraints in Triton assembly (b740c605)
- Generalize constraint circuit methods (aecd75f5)
- Use
nextest
as the test runner (651934e7) - Use
cargo-llvm-cov
for code coverage (d7b8e341) - Report coverage of TUI's integration tests (718b211d)
- Also run benchmarks as tests (05c139f8)
- (!) Use
const
s for number of constraints (eb31e6d8) - (!) Remove
BinOp::Sub
(675acc69) - (!) Remove unused functions (105d9435)
- (!) Drop methods for storing
Proof
s (c2974e1e)
- Use fewer resources in constant folding test (449426aa)
0.37.0 - 2024-02-15
- Provide more
BFieldCodec
-related info forProofItem
s (483d9c0d) - (tui) Enable scrolling in memory widget (96e2eaca)
- Provide Fiat-Shamir heuristic related info
ProofItemVariant
s (02de19ff) - Simplify parsing of proof item's payload type (5baeeaeb)
- (lint) Warn if underscore bindings are being used (8ab457a6)
- (!) Return
Err(_)
, don'tpanic!
, on unsupported root of unity (60289eb5) - Simplify constructing
Claim
s (31694222)
- (test) Remove failure-triggering & superfluous
as
cast (d8b34e01) - (tui) Send key, mouse, and paste events only to active component (74e42d35)
- Exemplify usage of Triton VM in
examples
directory (6e4f8f0e) - Update readme to point at examples folder (2c989b3a)
- Update readme of constraint evaluation generator (fa987f38)
- (test) Use iterator transform instead of explicit loop (fc8b9d20)
- In CI, check documentation builds free of warnings (bf540685)
- Run all tests in CI (d6e99ccc)
- Use
From
(notas
) for lossless conversion (4e8b28b7) - Enable additional lints (c309d759)
- Don't call
Default::default()
(cb73d220) - Avoid explicit
.(into_)iter
for loops (02018af5) - Name all
clone()
s explicitly (cd2e503e) - Favor
String::new()
over"".into()
(4650087b) - Deprecate aliases
StarkHasher
,MTMaker
(f9f0e288) - Avoid manually set inclusive range bounds (d7b5f2c6)
- Simplify construction of some circuits (56d1bf0e)
- Update dependency
twenty-first
(49b23419)
- (test) More rigorously use
proptest
framework (a27ca6d4) - (!) Communicate possible FRI setup failures with
Result
(3fe35ad1) - (!) Communicate possible STARK proving failures with
Result
(5613f194) - (!) Expose public (re-)exports via
triton_vm::prelude::*
(0bb30d84) - Simplify
use
s through prelude of dependencytwenty-first
(75da9a17) - De-duplicate code for
ProofItem
(a227131c) - Simplify TUI layout construction with new
ratatui
features (0054597d) - (!) Make lengths of master tables' rows compile-time known (e52f4cf0)
- (!) Integrate
StarkParameters
intoStark
(0c5edc73) - (test) Improve test names (6caa0e1a)
- (!) Make
VMState
'ssponge
aTip5
(d7b8a3f7)
0.36.1 - 2024-01-15
- (test) Don't compile Triton TUI integration tests (bf46f5ac)
- (visual) Drop leading 0's from
clk
when printing VM state (d1a61b16)
- Add “Getting Started” section to README.md (80c10dd3)
- Run CI on the three biggest platforms (42ff0618)
- Run code-coverage tool
tarpaulin
only on default features (e95c7e4f)
- (test) De-duplicate test code for canonical input check (e180d78e)
- Generalize generic for changing call address of
instruction
(63a5d1c1)
0.36.0 - 2023-12-22
- Add benchmark for execution tracing (11b360d6)
- Record opstack underflow read/write in AET (a57ef7c3)
- Make Op Stack Table variable length (b606dc60)
- (!) Instruction
hash
only puts digest on stack (2e37fb2f) - (!) Make instruction
pop
take an argument in range 1..=5 (81248b90) - (!) Make instruction
divine
take an argument in range 1..=5 (5bf3541a) - (!) Instruction
divine_sibling
pushes divined digest onto stack (4602fad8) - Sponge instructions change stack size (0fac3fc8)
- Extension field instructions change stack size (f0b3ab8f)
- (!) Make instruction
read_io
take an argument in range 1..=5 (e138f0a0) - (!) Make instruction
write_io
take an argument in range 1..=5 (b8e5f978) - Instruction
assert_vector
shrinks stack by 5 elements (6a0e19cc) - (!) Make memory instructions take an argument in range 1..=5 (8ef132af)
- Add benchmark just executing a Triton VM program (8301d5db)
- (!) Improve error reporting (48ee1099)
- Only change VM state if instruction execution will work (d7fbb3fd)
- Add
triton-tui
, a TUI for debugging programs in Triton assembly (d0d79bce) - Allow installing triton-tui as a binary (047bed9b)
- (de)serialize
VMState
(8df0723c)
- Crash VM when executing
swap 0
(215f2ede) - Overflowing subtractions when accessing op stack underflow (2aa72e77)
- (doc) Correct explanations for previous designs (4bbc2d2a)
- Account for op stack table length dominating the AET (f465f756)
- Correct calculation of total available memory in Triton VM (18af2b40)
- Fail Sponge instructions if Sponge state is uninitialized (881b6c0d)
- Remove redundant constraint preventing op stack underflow (6215c108)
- Use instruction's fast-fail for error reporting, not cloning (08bbc41f)
- Add TIP-0008 “Continuations” (4b38d01b)
- Consistently use a space in “op stack” and “jump stack” (eb8dc840)
- Delete out-of-date cheat sheet (69aac2dc)
- Prose and example for Op Stack Table behavior (db01232f)
- Update AET relations diagram (f177d658)
- Op Stack Table padding (ad09b8d2)
- Update Op Stack Table's AIR (3fb003b6)
- Update Processor Table's AET and AIR (e59eedeb)
- Reflect changes to instructions, constraints, and mechanics (ccf123b8)
- Exemplify error handling (90151d6c)
- Add changelog (4d1fc2c0)
- Simplify
use
s (51878fae) - (test) Remove unnecessary paths (4323b202)
read_mem
starts reading at current address (7faad183)- (!) Rename & change debugging methods of
Program
(abd17904) - Fix spelling of
collinear
(notcolinear
) (2e9ebd7c) - Improve changelog generation configuration (9e3432f3)
- (!) Remove
Default
derivation fromProgram
(868f49d9) - Allow tracing program execution from a given starting state (5f702d47)
- Upgrade dependency
cargo-tarpaulin
(560f2555)
- (examples) Return program, not instructions (55c731ed)
- Improve API of
VMProfiler
(202cb74b) - (vm) Rename
ramp
toram_pointer
(612714d0) - (processor_table) Remove never-triggered panics (6ced006a)
- (processor_table) Remove unused struct
ExtProcessorTraceRow
(d39230f2) - (test) Use crate
test-strategy
(01e5e229) - (test) Improve testing instruction's transition constraints (77948e1a)
- (op_stack) Simplify recording of op stack underflow I/O calls (f3803676)
- Turn python script for computing opcodes into a rust test (ddb220f2)
- (test) Also test transition constraints on extension table (4bd9cf16)
- (test) Split test program enumeration into individual tests (cc79cfad)
- Abstract over legal argument range for various instructions (a76097e9)
- (!) On success,
Stark::verify
returnsOk(())
, notOk(true)
(9d3a7065) - (!) Remove
terminal_state
, allow running a VM state instead (fbd58f1c) - Simplify indexing into
OpStack
(4b31b2fe)
- Op stack table row sorting (7418502b)
- Factor for running product with Op Stack Table never panics (224e7923)
- Turn extension field instruction tests into property tests (067d0053)
- Turn
get_colinear_y
into a property test (39bd4668) - Use
proptest
, not ad-hoc prop tests, for program parsing tests (d2acbbf8) - Delete some ignored, obsolete tests (8deb268a)
- Instructions fail before they modify the state (c680fab2)
0.35.0 – 2023-10-17
- Better error reporting for failing
assert_vector
(ee83ab6d) - Include debug information when printing
Program
(d11aa541) - (!) Replace instruction
absorb_init
withsponge_init
(aca87471) - (!) Add debug instruction
break
(df6dc4b5)
- (!) Use
Copy
-trait ofStarkParameters
(70f3d957) - Linter v1.73.0 warnings (641ed393)
- Print all helper variables and Sponge state of VM state (07a54f6e)
- Disallow changing argument of
swap
to 0 (bcf61ee6)
- Adapt constraints to new instruction
sponge_init
(cde031f0) Program
and its new methods (5ff137dc)- Align specification to code (86a501ea)
- Delete cheatsheet (e8a5b526)
- (!) Rename instruction
div
todiv_mod
(c3ad923a) - Reduce number of
as
castings (540cf66f) - Remove unused
impl Display for InstructionToken
(1550f8de) - Ignore JetBrains IDE's config files (ddf9e7ad)
- (!) Move
padded_height()
intoAET
(f88d94f3) - Store debug information
address_to_label
inProgram
(d857e838) - Improve readability of
Program
decoding (e3741d68) - Extract VM profiling logic into
VMProfiler
(97ecef8d)
- Lower number of test cases for some FRI tests (0159a688)
- Print error of failing
assert_vector
(9bcdac2d) - Separate success and failure of
ensure_eq
(86b97993) - Improve property testing of Sponge instructions (e3d90b8e)
- Edge case when last Hash Table row is
sponge_init
(f5f64963) - Too many returns crash VM, not
VMProfiler
(a109b890)
0.34.1 – 2023-10-05
- Remove dependency
strum_macros
(0e53844e)
0.34.0 – 2023-10-05
- Add methods indicating instruction's effect on stack size (2f3867d8)
- Derive
Default
forNonDeterminism
(954e23e3)
- Add example uses of Triton VM to top-level documentation (6c3537ab)
- Fix specification for instruction
pow
(be168ef9)
- Refactor FRI for increased readability (61073e2b)
- (!) Don't expose profiling macros (b2e2a600)
- Introduce profiling category for witness generation (6362cc57)
- Use
Arbitrary
for property based tests (74df64d5)
0.33.0 – 2023-08-10
- (!) Initialize Triton VM's RAM non-deterministically (fb314aea)
- (!) Shrink FRI domain size by splitting quotients into segments (c4f1e554)
- Parallelize random linear summing (1b6b2d4a, 13dfb28f)
- Use uninitialized memory for some allocations (b1724829)
- Add specification for TIP-0007 – Run-Time Permutation Check (82f81f36)
- Upgrade dependencies (7f24c6eb)
- Slightly improve interface for
Arithmetic Domain
(c9907e24) - Use
.borrow()
directly instead of on explicit.as_ref()
(07af1875) - Derive trait
GetSize
forProof
instead of implementing it manually (6ffa9e3d) - Simplify indexing of
Challenges
throughIndex
trait (bbbc52c8)
0.32.1 – 2023-08-01
- Upgrade dependencies (5683ea78)
0.32.0 – 2023-08-01
- Introduce macros for writing Triton assembly:
triton_asm!
andtriton_program!
- Profile runs of the VM
- Merge crates
triton-opcodes
andtriton-profiler
intotriton-vm
- (!) Rename
simulate
totrace_execution
0.31.1 – 2023-07-06
- Add helper method for program hashing (b0555e28)
- Use triton-opcodes v0.31.1 (59f2c103)
0.31.0 – 2023-07-05
- (!) Don't include
Claim
inProof
(741c6d8f)
0.30.0 – 2023-07-04
- (!) Attest to the program being run (5c42531f)
- Add debugging function consuming considerably less RAM (e556535c)
- (!) Fix soundness bugs in
skiz
(a697f3f8)
0.29.1 – 2023-06-19
- Correct opcodes of stack-shrinking u32 instructions (3d9f838c)
0.29.0 – 2023-06-15
- executing
lt
on operands 0 and 0 is now possible (10360b11)
- (!)
vm::simulate()
returnsResult<_>
(f52e4a90)
0.28.0 – 2023-06-13
- Add native interface for proving
Claim
s (4f2f02ff)
- (!) Include
Claim
in Fiat-Shamir heuristic (c786c915)
- Lower the AIR degree to 4 (73f9e0a0)
- Derive
BFieldCodec
where possible (dc528c41) - Derive
padded_height
fromProof
(0d6c1811) - Remove the
padded_height
from theClaim
(4be177eb) - (!) Remove field
Uncast
fromProofItem
(27461b10) - (!) Remove trait
MayBeUncast
(27461b10)
- Remove
TestItem
, test using actualProofItem
s instead (54afb081)
0.25.1 – 2023-05-24
- Upgrade dependencies (328685fb)
0.24.0 – 2023-05-23
- Add
BFieldCodec
functions forProgram
,Claim
, andProof
(07f09801, 5e3f66be) - Get size for
Program
andClaim
(2d827e9c, 77eed359)
- (!) Move
BFieldCodec
trait and implementations totwenty-first
(193ffa3e)
0.21.0 – 2023-05-09
- Correct number of checks performed between DEEP-ALI and FRI (0400d0c3)
- Avoid unnecessary hashing in the Fiat-Shamir heuristic (0bc5f63d)
- Special-case base and extension fields when evaluating the AIR (4547b961)
- Document zk-STARK parameters (b1740b71)
- Lower the number of trace randomizers to match DEEP-ALI (b1740b71)
- Upgrade dependency
twenty-first
(f0ab8c0a)
- (!) Remove state from the STARK's struct (9d92e0db)
- Drop the claimed padded height from the proof (2372461a)
- Sort profiled categories by their duration (57825878)
- Fail with specific error message instead of panic (7cf318be)
- Make
StarkParameters
(de)serializeable (ca7cbe03) - Don't rely on
Digest
s beingHashable
(d504fc20)
- Add test for the DEEP update (29780b06)
- Make some assertions already at compile-time (564a1279, e12db597)
- When testing the STARK, use
2^log_2_exp_factor
, not2^(2^log_2_exp_factor)
(304a7ea7)
0.20.0 – 2023-04-24
- (!) Do DEEP-ALI instead of plain ALI in the zk-STARK (96064413)
- Add convenience functions for using Triton VM (0dab32a2) (dda05e4e)
- Improve Triton profiler (7edd1a2c)
- Make method
debug
more powerful (ab49df75)
- Add construction of AET (witness generation) to profiling (c6e7b1e1)
- Use
cfg(debug_assertions)
, not environment variable (b0052f1f)
0.19.0 – 2023-03-17
- add instruction
pop_count
(efd90c65)
- (!) Parse instructions
dup
andswap
as taking arguments (4eecac2b) - (!) Enforce labels to start with an alphabetic character or
_
(5a5e6bad) - (!) Remove method
simulate_no_input
(089af774) - (!) Rename
run
todebug
, introduce newrun
without debug capabilities (8bd880ff)
0.18.0 – 2023-03-10
- (!) Change behavior of instructions
read_mem
andwrite_mem
(022245b7) - (!) Move to Tip5 hash function (d40f0b62)
- Use
nom
for parsing Triton assembly (bbe4aa87, 8602892f)
- Improve constant folding in multicircuits (c1be5bb9)
- Explain the various cross-table arguments (567efc00)
- Add and improve intra-document links (a66b20dd, 9386878c)
- Upgrade dependencies (ff972ff8)
- Replace Instruction Table by Lookup Argument (543327a0)
- Rework U32 Table (09a4c277, 27190307)
- Improve clock jump differences check (04bb5c48, 9c2f3c0b)
0.14.0 – 2023-01-20
- (!) Introduce Sponge instructions
absorb_init
,absorb
, andsqueeze
(af6a9e0e) - Add
nom
parser for Triton Assembly (ed9e4a90)
0.13.0 – 2023-01-12
- (!) Add u32 instructions (1f3eae84)
- Add TIP-0006: Program Attestation (c694b4c5)
0.11.0 – 2022-12-22
- (!) Enforce RAM initialization to all zero (#155)
- Upgrade dependencies (79189cb8)
- Represent AET as consecutive memory region (4477d758)
- Distinguish AIR constraints of base and extension tables (#119)
- Reduce memory footprint (#11)
- Split Triton VM's instructions into separate sub-crate (7bcc09ea)
0.10.0 – 2022-12-19
- (!) Adjust
::sample_weights()
and::sample_indices()
(cfb0fcb6)
0.9.0 – 2022-12-08
- (!) Allow reading from uninitialized memory, returning zero (444bb973)
0.8.0 – 2022-12-08
- Allow comments in tasm code (cdbcf439)
- Fail on duplicate labels in parser (42c41ac2)
- Use iNTT, not fast-interpolate, for polynomial interpolation (908b7c5f)
- Derive quotient domain the right way around (d0d3c4f1)
- Use compile-time constants for table's width (c4868111)
- Remove type parameter from arithmetic domain (381d3643)
- Always use
BFieldElements
to perform low-degree extension (b873f503)
0.7.0 – 2022-11-22
- correctly decode
Vec<PartialAuthenticationPath>
(e7fd6cc2)
- (!) Use rust code, not symbolic polynomials, for the AIR (cd62c59c)
- Use quotient domain instead of FRI domain wherever applicable (776fa19c)
- Don't multiply randomizer codeword by random weight (b105b68d)
- Add TIP 0004: “Drop U32 Table” (38293c4e)
- Replace
Result<T, Box<dyn Error>>
withanyhow::Result<T>
(448d4cdd) - Run
cargo fmt
after constraint-evaluation-generator (2d183e49) - Replace TimingReporter with TritonProfiler (c40c1bc0)
- Drop
VecStream
in favor ofVec<BFieldElement>
(9668fbea)
0.3.1 – 2022-10-20
Initial release of Triton VM.