addOrSubtract method
Implementation
UGfPoly addOrSubtract(UGfPoly other) {
if (isZero) return other;
if (other.isZero) return this;
Int32List smaller = _coefficients;
Int32List larger = other._coefficients;
if (smaller.length > larger.length) {
final Int32List swap = smaller;
smaller = larger;
larger = swap;
}
final Int32List sum = Int32List(larger.length);
final int difference = larger.length - smaller.length;
sum.setRange(0, difference, larger);
for (int i = difference; i < larger.length; i++) {
sum[i] = UGaloisField.addOrSubtract(smaller[i - difference], larger[i]);
}
return UGfPoly(field, sum);
}