Sure, it's always the same, but is it really correct to test for output that could potentially be different, say if the algorithm changes a little, or if the symbols were renamed?  My point was, why not just test for `logcombine(...) in [log(w**(2*log(z)*log(x)))..., log(x**(2*log(w)*log(z)))..., ...]`?

Actually, this whole "putting logs as powers inside logs" thing has bothered me ever since I originally wrote this. The "right" think to do maybe requires a little more thought.