Сначала обратите внимание, что
$$\frac{\sigma'(x)}{\sigma(x)}=\sum_{i\in B}\frac 1{x-L_i}$$
и что если мы напишем $С$ для битовых позиций кодового слова код Гоппы определяется как
$$\sum_{i\in C}\frac 1{x-L_i}\equiv 0\pmod{g(x)}$$
так что
$$\frac{\sigma'(x)}{\sigma(x)}\equiv\sum_{i\in B\ominus C}\frac 1{x-L_i}\pmod{g(x)}$$
а правая сторона просто $с(х)$.
Мы разделились $\сигма(х)$ на мономы нечетной и четной степени, так что мы можем найти многочлены $\sigma_{нечетное}$ и$\sigma_{четный}$ такой, что
$$\sigma(x)=x\sigma_{нечетное}(x^2)+\sigma_{четное}(x^2). \qquad (1)$$
Поскольку мы находимся в поле характеристики 2, многочлены только с квадратными членами являются квадратами других многочленов степени не выше $(\градус г-1)/2$ и мы стремимся восстановить $а(х)$ и $б(х)$ удовлетворяющие этой границе степени, такие что $ а (х) ^ 2 = \ сигма_ {четный} (х ^ 2) $ и $b(x)^2=\sigma_{нечетное}$.
Дифференцирование (1) дает
$$\sigma'(x)=\sigma_{нечетный}(x^2)$$
и другие
$$\frac{\sigma(x)}{\sigma'(x)}=x+\frac{\sigma_{четный}(x^2)}{\sigma_{нечетный}(x^2)}$$
что говорит нам, что
$$\frac1{s(x)}-x\equiv \frac{\sigma_{четный}(x^2)}{\sigma_{нечетный}(x^2)}\pmod{g(x)}.$ $
Таким образом, многочлен $в(х)$ эквивалентна рациональной функции $а(х)/б(х)$ что мы ищем по модулю $г(х)$. Расширенный алгоритм Евклида вернет два многочлена, такие что
$$\frac{c(x)}{d(x)}\equiv v(x)\pmod{g(x)}$$
с $\градус с$ и $\град д$ оба меньше, чем $(\градус г)/2$ и эти полиномы должны быть равны искомому $а(х)$ и $б(х)$ в противном случае $а(х)d(х)-б(х)с(х)$ является многочленом степени меньше, чем $д$ и делится на $г(х)$. Выздоровев $а(х)$ и $б(х)$ теперь мы можем построить $\сигма(х)=а(х)^2+хб(х)^2$ что является определением $р(х)$ что обычно дают.