### 6.27.15 Suites de Sturm et nombre de de changements de signe de P sur ]a; b] : `sturm`

`sturm` a deux ou quatre paramètres : une expression polynômiale P ou une fraction rationnelle P/Q et le nom de la variable ou une expression polynômiale P, le nom de la variable et deux nombres a et b.

Lorsqu’il y a 2 paramètres `sturm` renvoie la liste des suites de Sturm et de leur multiplicité pour P ou pour P et pour Q (`sturm` est alors identique à `sturmseq`).

Lorsqu’il y a 4 paramètres `sturm`, se comporte comme `sturmab` :

- si a et b sont réels, `sturm` renvoie le nombre de changements de signe de P sur ]a; b]
- si a ou b est complexe, `sturm` renvoie le nombre de racines complexes à l’intérieur du rectangle de sommets opposés a et b.

On tape :

`sturm(2*x```^```3+2,x)`

On obtient :

`[2,[[1,0,0,1],[3,0,0],-9],1]`

On tape :

`sturm((2*x```^```3+2)/(x+2),x)`

On obtient :

`[2,[[1,0,0,1],[3,0,0],-9],1,[[1,2],1]]`

On tape :

`sturm(x```^```2*(x```^```3+2),x,-2,0)`

On obtient :

`1`