Tropical Multisymmetric Pooling
Implementation & benchmark of arXiv:2608.06857 — The basic tropical polynomials generate the semifield of $r$-symmetric tropical rational functions
Source paper: The basic tropical polynomials generate the semifield of $r$-symmetric tropical rational functions arXiv:2608.06857 ⓘ · analyzed Aug 31, 2026
AI-generated research hypothesis, automatically tested. Not peer-reviewed.
Idea description
Replace ordinary sum or mean pooling in a permutation-invariant set network by the complete family of basic tropical multisymmetric values. For an input set of n points in R^r, each feature computes the maximum total coordinate score obtainable by assigning disjoint rows to prescribed coordinate channels. The resulting representation is invariant to row permutations, separates all multisets, and inherits a bi-Lipschitz relation to optimal row matching, so nearby sets cannot be arbitrarily collapsed.
Formulas
Mathematical statement
For M in R^{n x r}, write its rows as m_i=(m_{i1},...,m_{ir}). For every multi-index c=(c_1,...,c_r) in N^r with 0<|c|=sum_alpha c_alpha<=n, the paper defines the basic value b_c(M)=max{sum_{alpha=1}^r sum_{i in I_alpha} m_{i alpha}: I_1,...,I_r are pairwise disjoint subsets of {1,...,n}, #I_alpha=c_alpha}. Set b_0(M)=0 and Phi(M)=(b_c(M))_{0<|c|<=n}, with K=binom(n+r,r)-1 coordinates. Each b_c is unchanged by permuting rows, and the family separates row-permutation orbits. With d([M],[Mbar])=min_{pi in S_n} ||M-pi·Mbar||_2, the cited result states that Phi is bi-Lipschitz: there exist constants 0<A<=B, depending on n and r, such that A d([M],[Mbar]) <= ||Phi(M)-Phi(Mbar)||_2 <= B d([M],[Mbar]). The lower bound preserves distinctions between unordered inputs, while the upper bound gives perturbation stability. The maximum over disjoint selections is computed exactly by a dynamic program.
Implementation notes
Integrate the module immediately after a per-element feature map, or apply it directly to the raw feature matrix. Let M in R^{n x r} contain n rows and r channels; for variable-size sets, pad to n_max and mask padded rows. Enumerate all states c=(c_1,...,c_r) with |c|<=n. Initialize dp[0,...,0]=0 and every other state to negative infinity. For each real row m_i, create a new table by first copying dp, representing the option of skipping that row. For every state c and channel alpha, update dp_new[c+e_alpha]=max(dp_new[c+e_alpha], dp_old[c]+m_{i,alpha}), where e_alpha is the alpha-th unit vector. Use separate old and new tables, or descending state order, so a row cannot be assigned to multiple channels. After all rows, dp[c] is b_c(M). Concatenate the nonzero-state values, optionally apply learned affine scaling or normalization, and feed them to the task head. The exact dynamic-programming recurrence is the mathematical component; empirically estimate A and B by sampling set pairs, solving their optimal matching distance with the Hungarian algorithm, and measuring the ratio of embedding distance to matching distance. Start with n=8 and r=3 on synthetic set classification or regression tasks whose labels depend on pairwise configuration. Compare against DeepSets sum pooling, elementwise max pooling, and a Set Transformer at matched parameter count. Measure accuracy, robustness to Gaussian perturbations, and sensitivity to row permutations. Success means higher test accuracy or lower perturbation sensitivity, especially on sets sharing low-order sums but having different configurations. Benchmark a temperature-softened log-sum-exp approximation only as an optional differentiable ablation.
Verification
Stage 1 · Toy mechanism gate: Passed ✓
Stage 2 · Mechanism transferred to benchmark: Confirmed ✓
Stage 2 · Practical benchmark result: Inconclusive
Methodology: 8 paired seeds, permutation test (p<0.05) against a learning-rate-tuned baseline. How verification works
Stage 1 — Mechanism check agent confidence 8/10
Built exact Tropical Multisymmetric Pooling with dynamic programming and brute-force numerical validation. The core predictions manifested: DP error was 0, permutation sensitivity was 1.78e-15, and perturbation log-log slope was 1.00095 versus the predicted 1.0; matching-distance ratios stayed below the tested sqrt(K) envelope. The downstream toy classifier did not improve over baselines, so the mechanism is validated but practical task-level superiority was not demonstrated.
- Agent confidence
- 8/10
- Baseline
- Mean pooling MLP accuracy 0.8857; sum 0.8810; max 0.8786.
- Idea
- Tropical pooling MLP accuracy 0.8857; DP max error 0.0; permutation max change 1.78e-15; perturbation slope 1.00095 vs predicted 1.0; random matching-ratio range 2.235-11.605, tested upper envelope 12.806.
Limitations: Small synthetic CPU experiment only. No end-to-end learned feature map, variable-size masking, Set Transformer comparison, differentiable soft relaxation, systematic FLOP/latency benchmark, or estimation of optimal global bi-Lipschitz constants was performed.
How to run: python3 tropical_experiment.py
Stage 2 — Benchmark vs. tuned baseline (arXiv:2608.06857)
Beats the tuned baseline by 15.2% (p=0.0473, wins 6 / 8 paired seeds; metric: lower is better).
- Benchmark
- Tropical_set_classification
- Model
- custom_setnet
- Paired seeds
- 8
- Baseline mean
- 0.4367
- Idea mean
- 0.3703
- Effect (Δ)
- -0.0664 (−15.2%; negative = idea better)
- Wins
- 6 / 8 paired seeds
- p-value
- 0.0473 (permutation test, 20 000 shuffles)
- Smallest detectable effect
- n/a
- Mechanism
- Confirmed ✓
- Practical effect
- Inconclusive
- Baseline tuning
- swept over 0 configs
The full initial 12-epoch, six-configuration attempt exceeded the 40-minute budget because exact tropical DP is computationally expensive; the completed protocol used a transparent reduced three-learning-rate, four-epoch equal-budget sweep. No comparison to Set Transformer or variable-size masking was run.
How to run: python3 stage2_tropical_bench.py
Verdict computed by deterministic test code from paired-seed statistics — not by the language model.
Stage 2 — Benchmark latest Worked ✓
Agent confidence: 8/10
Implemented exact tropical multisymmetric pooling with an autograd-safe dynamic program on a custom permutation-invariant set-classification track, since no built-in track had the required set structure. Against a matched mean-pooling system sharing the same learned row map and head, tropical pooling reduced mean test error from 0.43672 to 0.37031; paired delta was -0.06641 with 6/8 wins and permutation p=0.0473, satisfying the harness criterion for a significant win. The trained-model signature confirmed near-zero permutation sensitivity and approximately linear perturbation scaling.
- Baseline
- Mean pooling, best lr=0.01, weight_decay=0, 4 epochs; 8-seed test error mean 0.4367187545, std 0.0649847861.
- Idea
- Exact tropical DP pooling, lr=0.01, weight_decay=0, 4 epochs; 8-seed test error mean 0.3703125045, std 0.0844762184; paired delta -0.06640625, p=0.0473, 6/8 wins.
- Mechanism signature
- Trained seed-0 model: observed permutation change 2.384185791015625e-07 versus predicted 0; observed perturbation log-log slope 0.9953228789501148 versus predicted 1.0; confirmed=true.
Benchmark result
Beats the tuned baseline by 15.2% (p=0.0473, wins 6 / 8 paired seeds; metric: lower is better).
- Benchmark
- Tropical_set_classification
- Model
- custom_setnet
- Paired seeds
- 8
- Baseline mean
- 0.4367
- Idea mean
- 0.3703
- Effect (Δ)
- -0.0664 (−15.2%; negative = idea better)
- Wins
- 6 / 8 paired seeds
- p-value
- 0.0473 (permutation test, 20 000 shuffles)
- Smallest detectable effect
- n/a
- Mechanism
- Confirmed ✓
- Practical effect
- Inconclusive
- Baseline tuning
- swept over 0 configs
The full initial 12-epoch, six-configuration attempt exceeded the 40-minute budget because exact tropical DP is computationally expensive; the completed protocol used a transparent reduced three-learning-rate, four-epoch equal-budget sweep. No comparison to Set Transformer or variable-size masking was run.
How to run: python3 stage2_tropical_bench.py
Artifacts
- REPORT.md 1.9 KB View
- bench_report.json 3.7 KB View Raw
- report.md 1.3 KB View
- report_bench_2026-09-01T014629.md 3.6 KB View
- results.json 0.7 KB View Raw
- stage2_tropical_bench.py 4.1 KB View Raw
- tropical_experiment.py 4.7 KB View Raw
- tropical_set_track.py 0.7 KB View Raw