We present Cadence, an error-bounded lossy compressor for numeric time series pairing a 330M-parameter time-series foundation model (Google TimesFM-3) with an adaptive arithmetic coder, guaranteeing ∣x^t−xt∣≤τ on every sample. One negative result constrains the design space: for lossless coding a foundation model is worth nothing, because bits saved are logarithmic in predictor accuracy, Δb=log2(MAEold/MAEnew). So the 1.51× advantage TimesFM-3 holds over a 32-tap linear predictor buys 0.60 bits of 20.28, a median gain of +0.03%. Error-bounded coding escapes this at one point: once a forecast lands inside the band the residual index is zero and the sample nearly free. Cadence contributes: (1) an adaptive range coder with context-modelled binarization, beating xz/zstd on real indices by 9.7% (15/15) and reversing a finding from a general-purpose back end; (2) a determinism result -- predictions are not bit-identical across batch sizes, and no PyTorch configuration repairs this, forcing group size and execution device into the container format; and (3) domain localization on corpora postdating any plausible training cutoff. On 49 EIA-930 balancing-authority demand series (2026) Cadence gains 13.3% over the best of six classical predictors, and 28.3% on 50 MTA ridership series (2026): 21.4% median over 297 series-tolerance pairs, winning all 297. Against downsampling, what time-series databases deploy for retention, its guaranteed worst-case error is 28--56× tighter at equal size. End-to-end, once the context bootstrap is paid for, gains run from 6.8% at six months of hourly data to 15.1% asymptotically. Attempting to falsify the domain claim on SDRBench, theory predicts failure and delivers: -0.8% median, 0 of 27 pairs gaining. Three further negative results and eight retracted claims are reported in full.
Figures & tables
Figure 1: Compression gain is logarithmic in forecasting gain (Eq. 1 ). Points are measured TimesFM-3-versus-LPC-32 accuracy ratios on three real series; the inset zooms the observed regime, where a 1.33 – 1.51× accuracy advantage yields 0.41 – 0.60 bits. Halving a 20-bit-per-value file requires a 1024× better predictor.
Series
xz
Classic
TimesFM-3
Gain
ecg_like
9.586
7.999
7.094
+11.3%
sparse_spiky
11.818
9.276
9.078
+2.1%
wikihr_en
23.858
19.758
19.288
+2.4%
wikihr_de
21.733
17.462
17.074
+2.2%
regime_switch
13.413
12.151
12.100
+0.4%
poisson_counts
4.035
3.608
3.606
+0.1%
Table 1: Lossless coding, bits/value. Classic is the best of {LPC-32, LPC-256, seasonal-lag LS, 16-tap stack}; all residuals pass through the identical adaptive coder, so differences reflect prediction skill alone.
Corpus
Median
Wins
Contam.
SDRBench (sci.)
−0.8%
0/27
n/a
Synthetic
+2.9%
7/12
n/a
NAB operational
+6.4%
21/24
no
Grid load (2026)
+13.3%
147/147
no
Transit (2026)
+28.3%
150/150
no
Demand combined
+21.4%
297/297
no
Table 2: Median gain over best-of-six classical predictors, real bytes. Grid and Transit postdate any plausible training cutoff.
Figure 2: Per-series-tolerance gain by corpus, real bytes. Each point is one (series, ρ ) pair; the bar marks the median. The effect is localized in aggregate human-demand series, not in numeric data generally: it spans −0.8% on scientific simulation output to +28.3% on ridership.
Table 4: Subway ridership, 50 station complexes (MTA, 2026).
Figure 3: Rate–distortion on the two uncontaminated demand corpora, plotted against the guaranteed error bound as a percentage of series mean. Medians over 49 balancing authorities (left) and 50 station complexes (right); annotations give Cadence ’s gain over best-of-six classical. SZ3 is the real binary and is included for calibration, not as the primary bar (Section 5.2 ).
Subset
Median
Wins
vs. ρ
EXAALT (MD traj.)
−0.6%
0/18
flat
Hurricane (smooth)
−25.4%
0/9
deepens
All SDRBench
−0.8%
0/27
Table 5: SDRBench, bits/value, real bytes. The predicted loss is confirmed; on the smooth field it deepens as the tolerance widens—the mirror image of Table 4 .
Component
bpv
Share
Seed ( c=512 , coded lossily)
0.412
20%
Body (3,788 samples)
1.906
80%
Total
2.111
15.2 ×
Table 6: End-to-end container, G=16 , n=4300 , ρ=0.05 , grid load. Classical end-to-end on the same series, same coder, is 2.244bpv .
Length
Span
Best c
Gain
4,300
6 months
512
+6.8%
8,760
1 year
512
+11.0%
17,520
2 years
512
+13.0%
43,800
5 years
512
+14.2%
Table 7: End-to-end gain by series length, ρ=0.05 , grid load, at the best context for each length.
Condition
Identical
Max diff
Same batch, repeated ×3
yes
0
Batch reordered
yes
0
Batch 1 vs. batch 8
no
3.9×10−3
Batch 8 vs. batch 9
no
7.8×10−3
+ TF32 disabled
no
7.8×10−3
+ use_sdpa=False
no
7.8×10−3
Table 8: Bit-identity of TimesFM-3 predictions, and attempts to force batch-size invariance. Differences in MW on grid load.
Batch
Ctx
Prec.
Values/s
6
1024
fp32
45
64
1024
fp32
113
256
1024
fp32
123
256
512
fp32
224
256
512
bf16
442
Table 9: Throughput. The model is compute-bound and saturates near batch 128–256.
Ctx
Body
Δ body
Seed
n=4300
n=43800
64
2.183
−11.6%
6.367
−0.0%
+2.5%
128
2.071
−5.9%
4.582
+4.4%
+7.4%
256
2.017
−3.1%
3.611
+5.9%
+9.7%
512
1.959
−0.2%
3.214
+6.0%
+12.0%
1024
1.956
—
2.980
+2.0%
+11.8%
Table 10: Context-length ablation, grid load, 16 series, identical scored window. Seed cost is priced with the best-of-five classical coder at the same τ .
Figure 4: Context ablation. (a) Model accuracy saturates early: c=256 costs only 1.6% of body rate against c=1024 while quartering inference cost. (b) End-to-end gain against series length. Short contexts amortize their seed quickly but code the body worse; long contexts are the reverse. The crossing puts the optimum at c=256 for six months of hourly data and c=512 beyond one year.