Coupling is the action of binding two entities so that they can operate together to provide new functions. In this article, we propose a formal definition for coupling and present a graph theoretic notation so that the side-effects of the creation of a coupling can be analyzed in a formal and systematic way. We then I-AM (Interaction Abstract Machine), a middleware that supports the dynamic coupling of interaction resources such as screens, keyboards and mice, to form a unified interactive space. Using our notation, we illustrate how couplings are supported in I-AM.