The standard inner product of x and y: both are flattened, multiplied
elementwise, and summed. Conjugate-linear in x — x is conjugated
before multiplying, matching numpy.vdot() and CVXPY's vdot(). For real
arguments conjugation is the identity, so this is the ordinary dot product.
Either argument may also be a (possibly nested) list, which is flattened
before the product; the two are flattened independently, so their nesting
need not match.