Disentangling denotational semantics specifications