add semirings