Interactive configuration can be viewed as interactive CSP solving. We see interactive
solving, where we define a modular CSP as a labeled rooted directed multigraph, where each vertex is labeled with a CSP, and each edge is labeled with (1) a set of total assignments to the variables of the CSP at the source vertex and (2) a set of equality constraints between the variables in the source and destination CSPs.
This allows the modeling of hierarchical systems through the use of edges (to model both
relationships), and the modeling of unbounded systems through the creation of cycles in the problem graph.
During configuration, the user builds a labeled rooted solution tree which is homomorphic with the problem graph — each solution tree node (object) is associated with a problem graph vertex (class) — and which is isomorphic with the configured system’s structure. The nodes are essentially labeled with the sets of full assignments that can still be part of globally consistent solutions.