add inner product