An Algebraic calculus for the synthesis of discrete event processes