### Solving multilinear integer equations

I'd like to explore the solutions of a multilinear diophantine equation like $12(yz) + ~~6(y+x) ~~6(y+z) +2 ~~-4xy ~~-4xw -2(w+x) = 0$. In particular I'd like to generate instances of solutions. I tried the function solve like:

```
(x,y,z,w) = var('x,y,z,w')
assume(x, 'integer'); assume(y, 'integer')
assume(z, 'integer'); assume(w, 'integer')
solve([12*(y*z) +
```~~6*(y+x) ~~6*(y+z) +2 ~~-4*x*y ~~-4*x*w -2*(w+x) == ~~0], ~~0, y==y], x)

which gives me the ~~obvious ~~not particularly useful output:

~~[x ~~[[x == ~~1/2*(6*y*z ~~(3*(2*r1 + 1)*r2 + 3*r1 - r3 + 1)/(2*r3 + 1), y == r1, z == r2, w ~~+ 3*y + 1)/(y - 1)]
~~== r3]]

I'd like to generate some actual quadruples that solve this equation or ~~possible ~~possibly investigate the structure more. Is there some systematic way to do ~~this. ~~this? In particular, when playing around with coefficients, is there a test of existence of an integer solution?

**Edit**: I had typos in the first version, I edited the equation.