We have numbers from $$$\ a_1, \ldots, a_n$$$, where each number is between $$$(0 \leq a_i < 2^k)$$$. We're trying to find a sequence of these numbers $$$(1 \leq i_1 < i_2 < \ldots < i_T \leq n)$$$ , where $$$T$$$ is $$$(T \geq 1)$$$ , and when we combine them using XOR $$$(a_{i_1} \oplus \ldots \oplus a_i)$$$, the result is $$$0$$$. This problem is well-known and can be solved using Gaussian Elimination technique($$$\mathcal{O}(\frac{nk^2}{w} + \frac{k^3}{w})$$$) in $$$(O(k^2))$$$ time.
But what if we want to find the smallest number of elements $$$T$$$ (still with $$$(T \geq 1.)$$$)? So far, I've only thought of a method that takes about $$$(O^*(n^k))$$$ time by trying all subsets with sizes up to $$$k$$$ and checking if their XOR sum is $$$0$$$.
Can we find a faster way, maybe something like $$$(O(\text{polylog}(n, k)))$$$? Any help would be appreciated, thank you.