refactoring of semantics; ready to try defining noninterference