for i in range(msg_in.shape[0]):
    coef = msg_out[i]
if coef != 0:
    lcoef = gf_log[coef]
for j in range(1, gen.shape[0]):
    msg_out[i + j] ^= gf_exp[lcoef + lgen[j]]
msg_out[:msg_in.shape[0]] = msg_in
return msg_out
Оптимизация кодировщика Рида-Соломона (полиномиальное деление)