added monostage small set semantics (and proved safety)