# algebraic substitution

How can I imitate the **algsubs** function of **Maple**? A little example:

p = x^18

algsubs(x^2=x+1,p)

The reult in **Maple** is:

x^9+9

x^8+36x^7+84x^6+126x^5+126x^4+84x^3+36x^2+9x+1.

algebraic substitution

How can I imitate the **algsubs** function of **Maple**? A little example:

p = x^18

algsubs(x^2=x+1,p)

The reult in **Maple** is:

x^9+9

x^8+36x^7+84x^6+126x^5+126x^4+84x^3+36x^2+9x+1.

1

It seems that there are not the same function in sagemath but we can use " ratsubst " function of maxima

```
sage : maxima('p:x^18')
sage : maxima('ratsubst(a+1,x^2,p)')
```

-1

```
var('y')
P = x^18
eqn = x^2 == y + 1
soln = solve(eqn,x)
P = P.subs(x=soln[0].rhs())
P.expand().subs(y=x)
```

Asked: **
2014-02-06 04:38:29 -0500
**

Seen: **484 times**

Last updated: **Feb 07 '14**

Is applying a ring homomorphism faster than symbolic substitution?

Changing notation in differential forms

Change of variable in an integration

Substitution using Dictionary with Matrix as Value

Two questions about parameters in solutions

Calculus with formal functions: substitution?

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.

What is the mathematical meaning of this function ? If you want `x^2` to be equal to `x+1`, then the optimal result would be a polynomial of degree 1, namely `2584*x + 1597`.