0.45.0 - 2025-01-14
- LessThan for U128 (0492f3b6)
- (i128) Add
lt
fori128
(820f26b3) - Introduce snippet sign-off functionality (6bc26129)
- (u128) Add overflowing add (d9afd642)
- (i128) Shift-right for
i128
s (39922aef) - (hashing) Add snippet for hashing stack value (821d7cac)
- Add snippet
u32::trailing_zeros
(1b1a18e5) - (!) Add snippet
u64::trailing_zeros
(a376c4a5) - Add snippet
hashing::merkle_step_mem_u64
(a9549e80) - (TasmStruct) Add destructuring capabilities (3af418ab)
- Don't unwrap in
TasmObject::decode_iter()
(cffd64be) - (TasmObjectDerive) Make emitted paths absolute (eb715c60)
- (TasmObject) Use
addi x
overpush x + add
(dcf29572) - (safe-add) User overflowing add internally (02559987)
- (verify_mmr_successor) Use new algorithm (94fb493f)
- (PrimitiveRootOfUnity) Add snippet contract (3f8d33e1)
- (AddU64) Implement
BasicSnippet
(4d55540c) - (!)
TasmObject
isBFieldCodec
subtrait (bb67184b) - Deprecate public type aliases (a880abbd)
- (!) Drop
Rc<RefCell<_>>
fromRustShadow
(f82b2952) - (!) (
Closure
) De-duplicate boilerplate (19361715)
- (!) (arithmetic) Drop type suffixes (af934daa)
- (!) Simplify testing framework (b7334898)
- Remove superfluous
'static
bounds (137de811) - (!) (TasmObject) Move checks to compile time (bc6c3017)
- (TasmObject) Don't panic asserting sizes (52a8ba30)
- (TasmStruct) Remove unreachable code (64f4d3d0)
- (!) (TasmObject) Slim down public API (3d3daa76)
- (PrimitiveRootOfUnity) Check correct encoding (93770758)
- Add tests and bencher for shift-right-i128 (cc2ad2dc)
- Test
DataType::compare()
(ad6c580b) - (TasmStruct::destructure) Add test cases (8c940bca)
- Make benchmarks deterministic (c38c7ae0)
- Add benchmarks (b5245450)
- (i128_shift_right) Add assembly benchmark (a0209d96)
- Benchmark
merkle_step_u64_index
(d703f9a0)
- Primitive root of unity (ee5fcc4b)
- U32::next_power_of_two (f22eef97)
- Xfe to the fourth (3bd722ac)
- U64::add and u64::overflowing_add (8263f873)
- U64::log_2_floor (fd4c0353)
- (!) U64::lt and u64::lt_preserve_args (6a254f02)
- (!) U64::popcount (d46d1540)
- (!) U64::shift_right (4bb397b9)
- (!) U64::{ε, wrapping_, overflowing_}sub (cc878fa9)
- (!)
mmr::bag_peaks
(21877936) - (!) U64::and (2b9c031e)
- (!) U64::pow2 (904e5b65)
- (!) U64::decr (bb022cbe)
- (!) Leaf index to Merkle tree index (565ea09d)
merkle_step_u64_index
(d66ac023)- (!) U64::div2 (0ea12d29)
- (!) U64::shift_left (a8be2020)
0.43.0 - 2024-11-21
- Optionally write program-to-debug to disk (251bebac) (33b202f5)
- Add input type annotation hints after entering an entrypoint (5f32e68c)
- Add snippet
DequeueAs
(57c020b1) - Keep track of proof items in
DequeueNextAs
(033955ca) - Absorb dequeued item into Fiat-Shamir heuristic (if applicable) (b14ce354)
- Decouple proof from iterator over its items (c205f5ef)
- Add data type
StructRef
(f53603b7) - (!) Dynamic allocator uses entire memory pages (ccf90c90)
- (!) Merge “safe” and “unsafe” lists (f2af2e50)
- Add snippet for squaring XFE (15e2de89)
- Add snippet for cubing an XFE (876ee88d)
- Add snippet for fourth power of an XFE (98d57fce)
- Add snippet for inner product of two XFE arrays (61945613)
- Implement
TasmObject
forOption<T>
(928b1fa7) - Add snippet for calculating terminal from compile-time known symbols (a721e6ac)
- Add snippet for squeezing repeatedly for statically known squeeze count (a33bc0f1)
- Add snippet for sampling a statically-known number of scalars (b43855d2)
- Improve error message if two stacks do not match (228375fe)
- Add snippet for calculating terminal value from digest (e8acc61f)
- Add snippet for deriving
Challenges
struct (d4245ad5) - Sample scalars into static memory (538f2d54)
- Allow sharing statically allocated memory (40a318e2)
- Add thin wrapper for AIR constraint evaluation (4c3e8a94)
- Add function to get conventional STARK-proof-compliant memory layout (7f10d008)
- Add snippet for Horner evaluation (1be9a76d)
- Add snippet to read own program digest (49621953)
- Add
split_off
snippet (aaa1fcf3) - Add conversion method from TVM's FRI struct to
tasm-lib
's (c882286a) - Export function mimicking
HashVarlen
's sponge mutation (5828932c) - Allow profiler to only print aggregated profile (2418aa26)
- Add snippet for inner product for recufier's main loop (e777210a)
- Export version of inner prod calculation needed by recufier (a43307c5)
- Add sorted aggregation to profile output (1504cdc6)
- Produce timing report when running tests with proof generation (b97573f7)
- Add snippet for initializing Fiat-Shamir state with generic claim (9610da17)
- Calculate challenges from generic trait (b0824def)
- Add FRI proof-derivation helper functions to test (a43ed50d)
- Add snippet for constructing a claim for a recursive proof (1b64674a)
- Add snippet for sampling a single scalar (1e35c9e8)
- Add snippet for calculating out-of-domain points (10ef92ce)
- Add XFE-snippet for
$xfe^{2^n}$ for dynamic$n$ (916c5e26) - Add snippet for calculating inverse zerofiers (0ca75bcc)
- Add convenience functions for STARK verifier (76157651)
- Add snippet for absorbing statically-sized BFE sequence (2b41a616)
- Add snippet mirroring
hash_varlen
for statically-sized inputs (52f85871) - Add snippet for verifying a base table row against Merkle root (693072be)
- Generalize snippet for inner product to accept Xfe base row (db69842f)
- Add recursive Verifier (7ee32925)
- Disallow very big proof items (dfa133be)
- Add snippet for barycentric evaluation (8f907798)
- Use new evaluation snippets in FRI (39211257)
- Add profile-generator for verifying a proof from disk (c2140ada)
- Write tasm output to disk if envvar
TASMLIB_STORE
is set (3efea1c4) - Add snippet for verifying MMR auth path with leaf-index on stack (b0317c6a)
- Add snippet for calculating Merkle root from list of XFEs (45670b44)
- Build Merkle tree with known height (fec51e20)
- Calculate Merkle root XFE sequence with statically known length (f0fc2bf4)
- Add wrapper for Merkle root from XFEs, len 256, 512, 1024 (054b6ed9)
- Add
contains
snippet for lists (206a16e8) - Add snippet for comparing ordering of two digests (afe8448b)
- Add snippet for u64-multiset equality (23a48a19)
- Add snippet
VerifyMmrSuccessor
(657794a8) - Add snippet
VerifyMmrSuccessor
(f31b8eb6) - (stark_verify) Allow dynamic memory layouts for STARK verify (ef2ca693)
- Ensure no overlapping use of memory in verifier (d36aae40)
- (memory) Add function to get highest populated address on ND-region (7affd624)
- Add function to get first free ND memory address (bed116d0)
- (dyn_malloc) Ensure dyn_malloc does not map outside its mem-region (315e89c9)
- Report number of ND digests consumed by
StarkVerify
(c2027062) -
(
TasmObject
) Add methodget_encoding_length
(a7caa8c3) -
(
TasmObject
) Add hints to fields obtained viafield!
macro (ccee860a) - (tasm_object) Add bounds-checks to auto-derived field getters (4f58791e)
- (tasm_object) Add function for verifying integrity of size-indicators (f35a065a)
- (tasm_object) Verify correct Option discriminant value (f5dde71d)
- (tasm_object) Add decode_iter impls for various basic types (7c86811b)
-
(traits) Add new trait
mem_preserver
(c5a0c943) - Add new snippet for read-only algorithm (67ce6382)
- Add
From<FunctionInitialState>
for InitVmState implementation (1f0d0c2c) - (!) Introduce helper struct
StaticAllocation
(67ef3663) - (map) Allow chaining lists before mapping (031927ad)
- Add size-consistency verification to dequeue_next_as (dd5e6a75)
- Add
Drop
snippet for post-verification-check on VmProofIter (6267a86c) - Add bounds-checks on VmProofIter's constructor (6fa7a04e)
- (Map) Support input types of dynamic length (5d53bc64)
- (Map) Make item length available to inner fn (c524e21b)
- Add code-function to compare data types when only sizes are known (c963bb57)
- (Map) Check correctness of dyn length types (4c4edb79)
- Add error IDs to
TasmObject
impls (d6fad459) - Simplify testing of assertion failures (b259dd6a)
dequeue
tasm (9f497b62)sample_scalars
tasm (5d7e9f8f)get_colinearity_check_x
tasm (10b677f2)- Rust shadowing for
dequeue
by assigning static memory (4cadc890) - Rust shadow of
HashVarlen
(b28c7563) - State initialization of
HashVarlen
(32c204a6) - Tasm of
SampleIndices
(95db01e0) - State initialization for
multiset_equality
(7c115280) - Tasm for
fri_verify
(b547b46e) - FRI verify (4db48e61)
- Bad sanity check in library import (7659e588)
- Make
Zip
adhere toBFieldCodec
(f77d6a64) - Use correct signatures in
FriVerify
(d6661ce2) - (test) First extract legit verification digests, then modify proof (4eb80cad)
- (test) Skip proof elements from digests supplied via non-determinism (c8d7d007)
- Skip ignored elements when checking for Fri verification failure (e8a46a71)
- Export snippet for asserting program digest equals stdin (99ef7bf0)
- Access correct list length in
FriVerify
(43204cc8) - Drop argument from rust-shadowing allocator (bcd9aebe)
- Static memory allocation starting address (4f66cf8a)
- Remove allocation size request in callers (8c755d96)
- Make benchmark result for list's
get
snippet deterministic (f1c4255d) - Bug in test-setup for list's
get
snippet (9fa0d297) - XFE array sum tests and add benchmark (fae29688)
- Add missing benchmark results (58aabeda)
- Fix entrypoint name of terminal calculation snippet (4861d622)
- Fix bug preventing type annotations from being inserted (fce12868)
- Bug in value hints in annotated code (41314a28)
- Linter warnings about MMR mutability (a0776046)
- Input-type of
hash_varlen
snippet (f955d7a2) - (test) Never sample from empty range (40e1f999)
- Remove not-yet-included source code files (f6ddcc92)
- Refactor: expose FRI test-helper functions to external crates (fd78b612)
- Fix off-by-one error in returned pointer value for quotient evaluations (2a94f318)
- Return value of statically-sized multiple absorb snippet (cd73eba3)
- Inserting claim into memory (d72c1e02)
- Corner-case with base-row length of zero (7fd7ca28)
- Adapt STARK verifier to Triton VM prover v0.40 (0591f8ea)
- Snippet name for MMR membership verification (694f27da)
- (!) Disallow trailing xfe in poly encoding to be zero (ba16404e)
- (test) Use correct stark parameters (38148b9f)
- Make field pub (990aceab)
- (test) Flaky multiset_equality_digests test (7e29fd96)
- (multiset_equality_digests) Fix soundness bug (18948def)
- Tests (3d277c2e)
- Build after upgrading to rustc v1.80.0 (029a5839)
- Correct calculation of number of digests to read (ce526633)
- Make conventional memory layout agree with stored proof (f92829ec)
- Fix overlapping memory issue in dynamic AIR evaluation (2fc4d6d8)
- README type (f81def99)
- (verifier::challenges) Use challenges ptr consistently (40786d70)
- Drop population of memory from
update_nondeterminism
(27a758c5) - (test) Fix stark verify test (fd74c25c)
- (
TasmObject
) Fix bounds check on field getters (cb5d4630) - (derive_tasm_object) Fix bug in encoding_length code (e2ac030e)
- (tasm_object) Fix iverified total size of Vec, where T's size is dynamic (deabf646)
- (test-framework) Don't reuse randomness over different test runs (285364cd)
- (tasm_object) Fix bug in manual impl. of Option (ada2f454)
- (test) Fix flaky test caused by sampling+allocating 0 words (6464ac6b)
- (
TasmObject
) Use public dependency path in code generator (15ed18d7) - Add missing stdin to rust-shadow of
MemPreserver
(bd12c212) - (verify_mmr_successor) Fix off-by-one in stack word dup (f15a1710)
- Check length of output types in
outputs()
(311bab38) - Use correct types in “higher order” snippets (1c556bea)
- (RawCode) Only inline inlineable code (f2d40a9f)
- (RawCode) Constructor (857546ec)
- (test_helper) Remove superfluous trait bound on test helper (3cbeb660)
- Publicly implement
Function
forMap
(30aaa812) - (ChainMap) Fail early on out-of-bounds access (87a9bf76)
- (ChainMap) Panic if item length is not static (54b647e8)
- (Map) Verify length indicator validity (a556930d)
- (bench) Fix benchmark result for dyn-sized map (b4735945)
- Off-by-one errors from new field in
Claim
(a6455c90) - (test) Put generated randomness on heap (e5e3150b)
- Optimize higher-order function
map
using pointer arithmetic (c12fbaa4) - Inline
map
's inner function if possible (37f30fdd) - Faster
zip
with less generalized code (4e81477f) - Save one clock cycle by constructing lists in opposite order (3acebaff)
- Use array for fiat-shamir challenge of known length in FRI (926144b3)
- Use array for fiat-shamir challenge of known length in FRI (9d20b5e3)
- Improve inner function in
map
(1aefa511) - Speed up Merkle root algorithm (fb5e96bc)
- Reduce instruction count in c-values loop by 6 (fa7a2d0e)
- (FRI) Reduce c-values calculation inner-loop with 3 instructions (edab3a0a)
- Switch to static memory address for zerofier inverse values (3f64afc6)
- Add benchmark for verifier (8f3f2cae)
- Add benchmarks for verifying base/ext/quotient rows (424d6da3)
- Reduce opstack table growth by inlining MT verification in snippet (f5d7b3e6)
- Add benchmarks for different FRI exp factors (4411e21e)
- Add profile-generating tests for the FRI verifier (4bf531f9)
- Adjust XFE-NTT's benchmark params to those of verifier (a3154d51)
- Use sizes relevant for STARK verification in FRI-related benchmark (a7564465)
- Improve stack-management when verifying FRI (xfe,idx) auth paths (99853121)
- Use FRI with barycentric evaluation (3ad96a11)
- Rewrite base/ext row dot product to use dotstep instructions (39f54875)
- Use new xxdotstep instruction for inner product of XFE arrays (7a8aecef)
- Enable profiling in benchmarks of verifier (bc72b8c9)
- Use new
absorb_from_mem
instruction inabsorb_multiple_static_size
(72274f73) - Use new
sponge_absorb_mem
instr in snippet for absorbing of dynamic length (295eb68c) - Use
sponge_absorb_mem
inAbsorb
snippet (28613554) - Use new instruction
recurse_or_return
(1eaf8489) - Remove deprecated copying of last codeword in FRI (ca3e8e77)
- Drop XFE->Digest conversion when finding Merkle root (19a2c518)
- Reduce memory allocation used in
MerkleRoot
snippet (69e2cb49) - Calculate
-b_x
froma_x
(13b6ea55) - Partially unroll barycentric evalaution loop (c1264ae3)
- Use
recurse_or_return
in Merkle root from XFEs snippet (f27f67e4) - Use
recurse_or_return
in inner-most loop ofMerkleRoot
snippet (c7dfb8ba) - (multiset_equality) Save a few instructions in loop (62884781)
- (!) Optimize MMR's
verify_from_memory
by ~33 % (2f3baf0d) - (mmr::bag_peaks) Reduce clock-cycle count by 75 %! (9bcd9bee)
- (!) Faster and const time u64::lt snippet (7192858f)
- Improve
log_2_floor
foru64
(ec116e0c) - (mmr) Minor optimization to leaf_index to mt_index snippet (6482beee)
- Improve digest multiset eq check (b0636778)
- Catch zero-leaf old MMRAs before loop (dae2149d)
- (
TasmObject
) Use new instructionaddi
(43b601dc) - (barycentric) Use
pick
&place
overswap
(8e9807bb) - (FRI) Use
pick
&place
overswap
(ac71ccbd) - (!) Faster count of ND digests consumed in STARK verification (9aeb12f6)
- Remove
swap
from inner product (35797b05) - Slightly improve stack management (be462e99)
- Fix intra doc links (43c6ff8e)
- Improve documentation of
TasmObject
(7218061d) - Improve error message on memory-equivalence failure (ba4b9f22)
- Fix an erroneous comment (66975ab0)
- Update profile output (0541cbba)
- More stack-annotation on FRI snippet (27bb43e4)
- Add more stack-annotations to NTT (4972a32f)
- Improve grouping of a stack-word in FRI-verifier (7887ce66)
- Add example usage, and warning of a gotcha. (cd62edf9)
- Print all table lengths when producing TVM proofs (95e36a29)
- Add more table heights to benchmark results (435409d0)
- Fix doc example, should not be compiled (a4d63caa)
- Remove leaking hints from dyn malloc snippet (44aa37c1)
- Fix stack-view in snippet for static-sized hashing (6199ecec)
- Update benchmarks (485f54e5)
- Fix wrong indicated return value of FRI verifier (464f7414)
- Improve docs on barycentric-eval loop (817c6fc2)
- Add missing benchmark (aa759b66)
- (multiset_equality) Align stack views, add
*
to pointer values (8058316f) - Kill wrong comments (6e88b9da)
- (squeeze) This is not the snippet you're looking for (bf3c9e07)
- (memory) Update memory conventions based on actual use (9e4620be)
- Document
init_stack_for_isolated_run
(b8024b12) - (derive_tasm_object) Add description to code-generator for encoding lengths (5d13924f)
- Improve documentation of snippet-trait
read_only_algorithm
(52a3366a) - Improve memory convention table (8d5ffc9c)
- Export triton-vm and twenty-first (9f62bd0e)
- Use twenty_first -> use crate::twenty_first (18284fd0)
- Add githuh ci workflow (3ed90746)
- Update dependency
triton-vm
(64fe24bd) - Export triton-vm and twenty-first (3d4db956)
- Canonicalize
use
statements (b14aa820) - Canonicalize
use
s (0b895ee8) - Make fields in snippet for computing terminal public (01175b20)
- Export
Challenges
snippet (085939fe) - Export fast-exponentiation snippets for XFE (ab8e8b0c)
- Drop dependencies on
ArchivalMMR
andrusty-leveldb
(54471e22) - Run-time export snippet for calculating inner product for recufier (63bbf121)
- Export another snippet used by the compiled recufier (2a44616e)
- Export another snippet for recufier (bb4802d5)
- Add local vscode config files to .gitignore (2e2846bb)
- Mmra_with_mps has moved in twenty-first (c4cebc8e)
- Move rayon to dev-dependencies (df6396f6)
- (!) Move proof iterator struct to own directory (c5642f39)
- Fix formatting error in test (e8799b18)
- Adapt to MMR::verify() return value change (9478e0db)
- Make linter happy (ed49c834)
- Adjust Horner evaluation dyn length test/bench parameters (b18ed764)
- Upgrade to TVM 0.41.0 (e9d99a3d)
- Upgrade to TVM 0.42.0-rc-alpha (3c85e337)
- Rename snippet for verifying MMR membership (0b4e9c65)
- Account for new polynomial encoding (96371dab)
- Export snippet to get FriPolynomial from proof stream (124516a2)
- (!) Upgrade to latest TVM (e265dc47)
- Make compiler happy (2c0c6c53)
- Halve combination codeword checks in STARK (f5e490e9)
- (contains) Verify we got parity right (0ab89784)
- (multiset_equality_digests) Rename snippet (d6bd41c1)
- Also lint tests (343f8e16)
- Anticipate new version of
triton-vm
(0e86176b) - (
QuotientSummands
) Adapt signature to memory layout staticity (4f20db2f) - Upgrade to TVM 0.42.0-alpha.9 (45fe8506)
- Update benchmarks after adding size-check to field-getter (784733ca)
- (doc strings) Make rustc v1.83.0 linter happy (96063e60)
- Rename 'ext'/'base' to 'aux'/'main' from upstream redefinition (d71f76a2)
- Update benchmarks for TVM0.42-alpha10 -> 0.42 upgrade (d66afd02)
- Remove temporary build directive (3667adde)
- Run fmt with new formatter settings (275757e1)
- Bump dependencies (4a35f187)
- Expose error code for Merkle authentication error (a2b8f5f8)
- Prepare
Cargo.toml
s for release (dd11f337)
- Start using
proptest
framework forFriVerify
(e3f02115) - Produce proof through
proptest
framework (5f15120f) - Produce initial state through
proptest
framework (b26ef98b) - Improve variable names & comments (ec8a12fe)
- De-duplicate stack & non-determinism set-up (2cfe23b6)
- Expose triton-tui enabling debugging method (71f87e71)
- Add module
prelude
(c7665e47) - Simplify
use
s through prelude of dependencytwenty-first
(f711ae27) - Read and verify own program digest, then keep it on stack (7a6345f2)
- Dequeue items using statically known item length if available (b0799d6e)
DequeueNextAs
always points to proof item's payload (d7ac0c3c)- (test) Shrink FRI soundness indicator test, make deterministic (f49d946b)
- Only expose
FriSnippet
s test instance intest
builds (11df626b) - (!) Move as many
Fri
methods as possible behind#[cfg(test)]
(320f888b) - (!) Don't return proof item iterator from
FriVerify
(5ad75dd8) - (!) Make all lists safe (b4888a12)
- Change field name for list's inner type to
element_type
(b34df0e0) - Change snippet names for EvalArg's terminal calculation (b7c71571)
- Factor out hint-generation for TVM debugger (2672afb9)
- Create challenges in static memory (89028e46)
- Change memory convention for
Challenges
(ef449b28) - Expose function to calculate AIR constraints on host machine (00d4f86c)
- Pull host-machine AIR constraint evaluation out of test module (f0722ceb)
- Expose some helper function for FRI verification (34846a39)
- Rewrite hash_varlen snippet to implement new trait (1b89a9d7)
- Expose function to run TVM prover (9a1c5fdb)
- Make sane interface for 'generate_full_profile' (7a3f90ed)
- Export some claim-related snippets (7e94216b)
- "colinearity" -> "collinearity" (692c463b)
- Refactor
zip
for better modularity (078c294a) - Put entrypoint code of FRI verifier first (d5c77d18)
- Change bench params of
SampleIndices
to match FRI (e92036e8) - Cleanup FRI verifier code slightly (08f96f51)
- (!) Move claim and fri verify type for better code reuse (1a3fa229)
- (!) Move all FRI-related snippets into separate directories (26dab769)
- STARK verifier stack management and add comments to TASM (29dd82f1)
- Change interface of hash static size for make benefit glorious verifier (bcba99c9)
- Change function interface to extract FRI proof (518cd205)
- Move
with_preallocated_memory
to tests (a5f8140d) - Change verifier's interface to take both claim and proof_iter (dbfba540)
- Change snippet prefix from
tasm
totasmlib
(31d46df8) - (!) Use Triton VM's profiler's
Display
for profiles (3f3bc0f9) - (!) Rename
recufier
toverifier
(2fd53703) - Factor out num rounds calculation from
FriVerify
(a76c0316) - (!) (verify_from_secret_in) Crash VM iff MMR auth path in ND not valid (57c3ed74)
- (!) Rename ExecutionState to InitVmState (b9f23818)
- Expose row-verification snippets to tasm-lang (fa36198d)
- Use dep injection to set XFE-MR's static mem pointer (6e9ddec2)
- Use TVM macro in
multiset_equality
snippet (9976e1ef) - (!) Remove unused STARK-verify parameter (3b59b5e3)
- Canonicalize
use
statements (36f39291) - Rewrite
add_u128
to implement modern traits (1e3bc497) - Rewrite u64::lt to use modern code macro (45989c4f)
- Minor fix in 'contains' snippet test (90449c7e)
- (multiset_equality_digests) Use modern trait (8dfd4126)
- Drop mention of
leaf_index
(11463b43) - Dynamically map proof to vm proof iter (1f55e675)
- Make interface for
StarkVerify
dynamic (2f5f5c58) - Relativize to (static or dynamic) memory layout with field (f85d5ef8)
- (AIR eval) Refactor quotient-summands to divide-out-zerofier (ac8f2226)
- (verifier::air_constraint_evaluation) Improve implementation of memory-integrity check (d202d0ba)
- (stark_verify) Remove shared code from AIR evaluation branches (d4276bed)
- (TasmObject) Reduce max dyn-field size indicator by factor 4 (f5af5426)
- Convert
VerifyMmrSuccessor
to newMemPreserver
trait (498857b9) - (!) Rename
master_aux_table
tomaster_table
(1ae65291) - Add public constructor of ND-data size-indicator ingrity check snippet (e52e9fb5)
- (!) (test) Move test structs into test mod (434d393f)
- (!) Make
ChainMap
's internals private (c59a0c7e) - (verifier) Remove authentication paths from TVM memory (9a586410)
- (fri) Assert that there are no auth paths in memory (b10a886e)
- Add more metadata to vm_proof_iter struct (3260cd63)
- Add call to
VmProofIter
's drop in verifier (04e9d723) - (!) Generalize random element generation (28ee0519)
- (test) Test concrete assertion failures (f0265623)
- Only write debuggable VM state to disk (33b202f5)
- (!) (inner_product) Drop
randomizer_length
(327c7581) - Introduce error IDs to Stark Verify (9eef6a29)
- Dequeue multiple elements from the same memory instance (f06cea2c)
- Add tests comparing terminal calculation snippets (01f1c53c)
- Verify that static/dynamic versions of repeated squeezing agree (2bf8129c)
- That
FriVerify
consumes all extracted nondeterministic digests (3e198b0a) - Add benchmarks of inner prod, relevant for TVM (ff289a77)
- Add more tests of
map
with different input/output types (07ddbc6f) - Reduce number of test cases for FRI property-test (9617a23f)
- Add basic test of and rename
VerifyTableRow
(9e5435e3) - Make stark parameters configurable in test of verifier (4fcea082)
- Add negative tests for verifying table rows (3a53146b)
- Test STARK verifier with different FRI expansion factors (dc7d8a2c)
- Add test-helper for negative tests (b86efaab)
- Deflake merkle_verify_negative_test (5080fc58)
- Add test revealing soundness error in
multiset_equality_digests
(55c189e5) - Add negative tests for
MmrSuccessorProof
(7dbef5c4) - Add test for verifying two STARK proofs (5771ae09)
- (memory) Add tests of memory region for ND memory (a039ddc6)
- Add negative test for bounds check on field getter (58d98f47)
- (tasm_object) Verify that all macros crash VM on bad lengths (68a4a131)
- (tasm_object) Verify failure on manipulated size indicators in struct with named fields (fdb2cfdd)
- (tasm_object) Add more negative tests of
compute_size_and_assert_valid_size_indicator
(9cca5883) - Add
Accessor
trait (eab75d6b) - Fix off-by-one-error in swap_unchecked's test case gen (30f02cd9)
- (tasm_object) Add neptune-like witness structs for test of size-verification (1b082efc)
- (tasm_object) Test more neptune-core-like structs for size-verification (2f4d7a24)
- (RawCode) Inline only labels and instructions (e07b698c)
- Don't print to std-out in trait test runners (110926f3)
- (vm_proof_iter::new) More proof items in PBT test (383005b3)
- Remove duplicate code (06db7ed1)
- Make linter happy (ea945dc1)
- Use TVM's function for rust-shadowed barycentric evaluation (be3d90d8)
- (mmr::verify_from_memory) Use TVM macro for snippet (c8a5e195)
- Modernize
swap_digests
code expression (ce8c3d67) - Use vector version of
triton_asm!
more (2144a6c3) - Clean up debug aid (746e958f)
- Rename quotient-summands to divide-out-zerofiers (7f6d1bc5)
- Drop
println!
statements in FRI'sinner_verify
(3a04448e) - Simplify numeric bindings in match arms (0b8d6d8d)
- Remove superfluous block (02f5cfca)
- Align “BEFORE” and “AFTER” comments (2ecd7e17)
- Prefix macro use statements with
crate::
(24d4df23)
- Make Merkle Root bench size relevant to FRI (4e32162a)
- Add benchmark for
MmrSuccessorProof
(b231a38e) - (
MmrSuccessorProof
) Make sizes and leaf numbers deterministic (59344ba8) - Reduce size of STARK benchmark for recursion (17f17b15)
- (Map) Benchmark
Map
with dyn length items (f848fd26)
Note: (!) indicates a breaking change.