algebraic::add, algebraic::compare, etc...