A similar notion of pass can be used for many $a, b$ to reduce to a single case that needs to be tested. Consider the following conditions:
- $c \succeq b$
- $d \succeq b$
- $a = cq + r$ with $0 \le r < c$
- $a = ds + t$ with $0 \le t < d$
- $\tfrac{t-r}{q} \le c \bmod s \le \tfrac tq$
Then we can reduce the question of whether $a \stackrel?\succeq b$ to a single test vector as follows:
- Given an initial vector $\{u_1, \ldots, u_a\}$ we apply a pass of averages of size $c$ to reduce to $q+1$ clusters $\{v_1^c, v_2^c, \ldots, v_q^c, v_{q+1}^r\}$.
- We now apply a pass of $s$ averages of size $d$ where the input to each average is $\{v_1^{\left\lfloor c/s \right\rfloor}, v_2^{\left\lfloor c/s \right\rfloor}, \ldots, v_q^{\left\lfloor c/s \right\rfloor}, v_{q+1}^{d - q\left\lfloor c/s \right\rfloor} \}$
- That second pass creates one value $w_1$ with frequency $ds$. A final average of size $d$ which includes the $t$ values not equal to $w_1$ (and $w_1^{d-t}$) reduces to $\{w_1^{a-d}, w_2^d\}$, which by linearity is equivalent to $\{0^{a-d}, 1^d\}$. So if that latter test vector can be averaged, $a \succeq b$. (And, clearly, if it can't then $a \not\succeq b$).
The validity of step 2 depends on $q\left\lfloor \frac cs \right\rfloor \le d$; since $s\left\lfloor \frac cs \right\rfloor = c - (c \bmod s)$ this is equivalent to $$\begin{eqnarray*} cq - q(c \bmod s) &\le& ds \\ a - r - q(c \bmod s) &\le& a - t \\ t - r &\le& q(c \bmod s) \\ \end{eqnarray*}$$
We also require there to be sufficient $v_{q+1}$; i.e. $$\begin{eqnarray*} s(d - q\left\lfloor \frac cs \right\rfloor) &\le& r \\ ds - cq + q (c \bmod s) &\le& r \\ q (c \bmod s) &\le& t \\ \end{eqnarray*}$$
Combining the two, we see the necessity for the final precondition.
I've done a bit of experimentation with solving the test vectors produced by this reduction. If we consider the graph whose vertices are multisets of $a$ rationals and whose edges correspond to averaging $b$ values, solving a test vector is a pathfinding problem. However, the graph is infinite and most vertices have quite large out-degrees. The vertex priority which I've found most effective is to use Ilya Bogdanov's technique for normalising to a multiset of integers, and then prioritise the multisets with smallest maximum absolute value. Updated code and solutions will appear shortly on the gist I posted earlier in comments.