Cauchy dot product checks more combinations than necessary

This is a low priority issue: it seems that it doesn't cause a performance degradation in practice.

The following discussion from !5 (merged) should be addressed: