### Weird solve() problem

I try to solve the equation
$$
a^2 + b^2 + 2 a^2 b^2 = c^2
$$
in integers. Using

```
var('a,b,c')
assume(a,'integer')
assume(b,'integer')
assume(c,'integer')
solve([a^2 + b^2 + 2*a^2*b^2 == c^2],[a,b,c],solution_dict=True)
```

gives Pythagorean triples:

```
{c: t1^2 + t2^2, b: 2*t1*t2, a: t1^2 - t2^2}
```

which clearly do not satisfy the equation (unless $t_1=t_2$ or $t_2t_2 = 0$). It seems that solve() does not see the term $2a^2b^2$; trying

```
solve([a^2 + b^2 + 2222*a^2*b^2 == c^2],[a,b,c],solution_dict=True)
```

gives the same (wrong) result.