### 11.3.1 Exact bounds for real roots of a polynomial

Bounds for the real roots of a polynomial can be found by realroot and VAS commands.

- realroot takes two mandatory arguments and two optional arguments:
  - P, a polynomial.
  - ε, a postive real number.
  - Optionally, a, b, two complex numbers.
- realroot(P,ε) returns a list of vectors, where the elements of each vector are a list containing one of:
  - an interval of length less than ε containing a real root of the polynomial and the multiplicity of this root.
  - the value of an exact real root of the polynomial and the multiplicity of this root.
- realroot(P,ε,a,b) returns a list of vectors as above, but only for the roots lying in the interval [a,b].

The VAS command uses the Vincent-Akritas-Strzebonski algorithm to find intervals containing the real roots of polynomials.

- VAS takes P, a polynomial.
- VAS(P) returns a list of intervals which contain the real roots of P, where each interval contains exactly one root.

#### Examples

Find the real roots of x3+1.

realroot(x^3+1,0.1)

⎡ ⎣ |
−1 | 1
| ⎤ ⎦

Find the real roots of x3−x2−2x+2.

realroot(x^3-x^2-2*x+2,0.1)

⎡ ⎢ ⎢ ⎣ |
−[1.40624999999999..1.50000000000001] | 1
1 | 1
[1.37499999999999..1.43750000000001] | 1
| ⎤ ⎥ ⎥ ⎦

Find the real roots of x3−x2−2x+2 in the interval [0;2].

realroot(x^3-x^2-2*x+2,0.1,0,2)

⎡ ⎢ ⎣ |
1 | 1
[1.37499999999999..1.43750000000001] | 1
| ⎤ ⎥ ⎦

VAS(x^3-7*x+7)

⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ |
−4 | 0
1 |
3
2
3
2
| 2
| ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦

VAS(x^5+2*x^4-6*x^3-7*x^2+7*x+7)

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

VAS(x^3-x^2-2*x+2)

| ⎡ ⎣ | ⎡ ⎣ | −3,0 | ⎤ ⎦ | ,1, | ⎡ ⎣ | 1,3 | ⎤ ⎦ | ⎤ ⎦