Lines Matching refs:lambda
34 uint16_t lambda[nroots + 1], syn[nroots];
96 memset(&lambda[1], 0, nroots * sizeof(lambda[0]));
97 lambda[0] = 1;
100 /* Init lambda to be the erasure locator polynomial */
101 lambda[1] = alpha_to[rs_modnn(rs,
106 tmp = index_of[lambda[j - 1]];
108 lambda[j] ^=
116 b[i] = index_of[lambda[i]];
128 if ((lambda[i] != 0) && (s[r - i - 1] != nn)) {
131 index_of[lambda[i]] +
141 /* 7 lines below: T(x) <-- lambda(x)-discr_r*x*b(x) */
142 t[0] = lambda[0];
145 t[i + 1] = lambda[i + 1] ^
149 t[i + 1] = lambda[i + 1];
155 * lambda(x)
158 b[i] = (lambda[i] == 0) ? nn :
159 rs_modnn(rs, index_of[lambda[i]]
167 memcpy(lambda, t, (nroots + 1) * sizeof(t[0]));
171 /* Convert lambda to index form and compute deg(lambda(x)) */
174 lambda[i] = index_of[lambda[i]];
175 if (lambda[i] != nn)
179 memcpy(®[1], &lambda[1], nroots * sizeof(reg[0]));
180 count = 0; /* Number of roots of lambda(x) */
182 q = 1; /* lambda[0] is always 0 */
202 * deg(lambda) unequal to number of roots => uncorrectable
209 * Compute err+eras evaluator poly omega(x) = s(x)*lambda(x) (modulo
216 if ((s[i - j] != nn) && (lambda[j] != nn))
218 alpha_to[rs_modnn(rs, s[i - j] + lambda[j])];
237 /* lambda[i+1] for i even is the formal derivative
238 * lambda_pr of lambda[i] */
240 if (lambda[i + 1] != nn) {
241 den ^= alpha_to[rs_modnn(rs, lambda[i + 1] +