Operational and denotational semantics of rewrite programs