algebraic product