A Framework for Specifying and Verifying the Behavior of Open Systems