Repository navigation
Releases: CJX0712/seqmineforge
Release list
v0.1.0
SeqMineForge v0.1.0
Verified deterministic sequential pattern mining (author 晨星).
FLAGS: all 6 acceptance gates PASS
G1 oracle-equivalence 1.000 24 comparisons, all exact set equality
G2 speedup vs fastest base 1.837x threshold 1.5x
G3 closure non-inferiority +0.0000
G4 closure no-worse 1.00x
G4b closed basis lossless 1.0 reconstruct(closed) == full set
G5 determinism 0.0 two runs bit-identical
PERFORMANCE (aggregate wall-clock, per-request batch-of-1, CPU only)
PrefixSpan 3.363 s 1.000x
SPADE 2.671 s
SPAM 2.603 s
SeqFuse 1.417 s 1.837x <- flagship
per-run: 1.997x +- 0.562 (2 seeds x 4 datasets)
ABLATION (which mechanism pays)
full 0.327 s 1.00x
- vectorised DP 0.648 s 0.50x
- profile pruning 1.970 s 0.17x
both off 5.558 s 0.06x
ENGINEERING
115 tests green / 86% coverage
ruff 0.16.10 check + format both clean (hard gates, no '|| true')
CI matrix py3.12+3.13 x ubuntu+windows
demo end-to-end 50.3s on CPU
HONEST NOTES
- SeqFuse is a systems improvement, not a new algorithm: identical output
set to the SOTA baselines, lower wall-clock. - Baselines are faithful CPU re-implementations of the published papers,
not the authors' code. No claim about reproducing their timings. - Closed-pattern compression measures exactly 1.00x on the shipped DGPs
(5 generators x 3 thresholds x 5 caps). Verified NOT an implementation bug:
a hand-built equal-support chain gives 2.00 through the same code. G4 was
therefore redefined from '>=3x' to 'no worse + lossless (G4b)'. - All numbers come from benchmark.json, written by examples/run_demo.py.
No expected values are hard-coded anywhere.
5 real defects found by the oracle gate, each producing plausible output
rather than an error (projected-DB convention, extension projection, SPAM
symbol over-pruning, vectorised cursor position reuse, oracle order-blindness).