# assume causes a solving failure

This code

```
var("a b")
assume(a, "real")
equation=[a+b==0]
s=solve(equation, a, b)
print(s)
```

causes an AttributeError :

```
AttributeError: 'list' object has no attribute 'lhs'
```

The problem comes from the assumption in line 2. Can somebody explain?

I have always a sens of unlegitimity in answering a question, but your problem comes more certainly from the fact that you hve one equation and two unknowns. It works if you use a or b

Cyrille, I think the question is still valid because if we rule out the assumption line, the code yields an answer with a free variable as

`solve`

hastwopositional arguments :a (list of) equation(s) to solve, and

a (list of) variable(s) to solve

for.Your call passes a list of one equation, which confuses

`solve`

. A (very old, AFAICT) bug...Your call also pass

threearguments to`solve`

: another source of confusion... A second bug ?But I checked that the assumption introduced yet another error. A third bug ??

These bugs seem mutually independent :

[ Snip...]

[ Snip...]

Emmanuel, thanks for your detailed examination.