1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
//! Test and benchmark fixtures (constants, scenarios).
//!
//! This module contains constants and helper functions that define
//! reproducible test/benchmark scenarios.
use ;
use PackedValue;
// =============================================================================
// Seeds
// =============================================================================
/// Standard seed for reproducible tests/benchmarks.
pub const TEST_SEED: u64 = 2025;
/// Alias for benchmark seed (same value as TEST_SEED).
pub const BENCH_SEED: u64 = TEST_SEED;
// =============================================================================
// Benchmark constants
// =============================================================================
/// Standard log heights for benchmarking: 2^16, 2^18, 2^20 leaves.
pub const LOG_HEIGHTS: & = &;
/// Standard relative specs for benchmark matrix groups.
///
/// Each inner slice is a separate commitment group.
/// Tuple format: `(offset_from_max, width)` where `log_height = log_max_height - offset`.
///
/// This gives realistic matrix configurations similar to STARK traces:
/// - Group 0: Main trace columns at various heights
/// - Group 1: Auxiliary/permutation columns
/// - Group 2: Quotient polynomial chunks
pub const RELATIVE_SPECS: & = &;
// =============================================================================
// Matrix scenarios
// =============================================================================
/// Common matrix group scenarios for testing lifting with varying heights.
///
/// Each scenario is a list of (height, width) pairs, sorted by ascending height.
/// The `rate` parameter controls the RATE-based width scenarios.
///
/// # Parameters
/// - `pack_width`: The SIMD packing width (e.g., `P::WIDTH` for packed field)
/// - `rate`: The sponge rate for width alignment scenarios