Multiplying algebraic expressions