The recursive merge verification in the kernel works by taking (t_1, T_{prev,1}, T_1) and verifying that T_1 = t_1 || T_{prev,1}, and then (once #1351 is closed) that T_2 = t_2 || T_1. The merge could take ({t_i}_i, T_prev, T) and verify that T = t_1 || ... || t_n || T_prev.
In our case n = 2 and we would trade 2 size-16 MSMs (the bases of the MSMs are t_1, T_{prev, 1}, T_1, X^{l_1-1} t_1(1/X) and t_2, T_1, T_2, X^{l_2-1} t_2(1/X)) for 1 size-20 MSM (the bases of the MSM are t_1, t_2, T_prev, T, X^{l_1 - 1} t_1(1/X), X^{l_2 - 1} t_2(1/X))
The recursive merge verification in the kernel works by taking
(t_1, T_{prev,1}, T_1)and verifying thatT_1 = t_1 || T_{prev,1}, and then (once #1351 is closed) thatT_2 = t_2 || T_1. The merge could take({t_i}_i, T_prev, T)and verify thatT = t_1 || ... || t_n || T_prev.In our case
n = 2and we would trade 2 size-16 MSMs (the bases of the MSMs aret_1,T_{prev, 1},T_1,X^{l_1-1} t_1(1/X)andt_2,T_1,T_2,X^{l_2-1} t_2(1/X)) for 1 size-20 MSM (the bases of the MSM aret_1,t_2,T_prev,T,X^{l_1 - 1} t_1(1/X),X^{l_2 - 1} t_2(1/X))