### 11.2.9 Solving au+bv=c over polynomials

A consequence of Bézout’s identity is that given polynomials A(x), B(x) and C(x), there exist polynomials U(x) and V(x) such that

C(x)=U(x) A(x)+V(x) B(x)

exactly when C(x) is a multiple of the greatest common divisor of A(x) and B(x). The abcuv command solves this polynomial equation.

- abcuv takes three mandatory and one optional argument:
  - A, B and C, three polynomials given as expressions or lists of coefficients in decreasing order, where C is a multiple of the greatest common divisor of A and B.
  - Optionally if the polynomials are expressions, x, the variable (which defaults to x).
- abcuv(A,B,C ⟨,x⟩) returns a list of two expressions [U,V] such that C=U A+V B.

#### Examples

abcuv(x^2+2*x+1,x^2-1,x+1)

| ⎡ ⎢ ⎢ ⎣ |
1
2
| ,− |
1
2
| ⎤ ⎥ ⎥ ⎦

abcuv(x^2+2*x+1,x^2-1,x^3+1)

| ⎡ ⎢ ⎢ ⎣ |
−x+2
2
| , |
3
2
| x | ⎤ ⎥ ⎥ ⎦

abcuv([1,2,1],[1,0,-1],[1,0,0,1])

[▯ |
1
2
| ,− |
1
2
| , |
1
2
| ▯, ▯ − |
1
2
| , |
1
2
| ,− |
1
2
| ▯]