1 | initial version |

First you're doing something mysterious, because the code you wrote doesn't work.

```
sage: F = FreeAlgebra(QQ,1,'x')
sage: x in F
True ???
```

The first line does not define `x`

as an element of `F`

, so the second line will return `False`

. Furthermore, if I do `x = F.gen(0)`

to define `x`

appropriately, then `F.quotient(I)`

raises an error, saying that "a twosided ideal is required". Maybe for this second issue you're using an old version of Sage and the behavior has changed since then.

Your actual question is sound, though, so let's address that. Here is what I would do:

```
sage: F.<x> = FreeAlgebra(QQ, implementation='letterplace')
sage: x in F
True
sage: I = F.ideal([x^2], side='twosided')
sage: A = F.quotient(I)
sage: a = A.gen()
sage: a^2
0
sage: a^2 == 0
True
```

The key is to use the "letterplace" implementation for free algebras (https://doc.sagemath.org/html/en/reference/algebras/sage/algebras/letterplace/free_algebra_letterplace.html). Those seem to work better when handling ideals and quotients, at least in my experience.

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.