**Defined in theory: Component-assemblies****Source code: component-assemblies.lisp**

**Documentation:**Connected-components is the most general binary connection relation between components. If (connected-components A B), then A and B must be components and neither can be a subcomponent-of of the other.

Connected-components is symmetric; there is no information in the direction of connection between two components. It is also irreflexive; a component cannot be connected to itself.

This is an abstract relationship. There is no commitment that the two components much touch physically. Even in the case of a connection between physical components, the connection can represent abstract properties of the interaction of the two components. Specializations of this ontology may impose additional constraints, such as asserting that system parameters are shared among connected components.

Note that the connection relation between connected components does not associate a name or type with the connection. One may specify that with other binary relations (e.g., thermally-connected).

**Instance-Of:**Irreflexive-relation, Relation, Symmetric-relation**Arity:**2**Domain:**Component**Range:**Component

(=> (Connected-Components ?A ?B) (And (Not (Subcomponent-Of ?A ?B)) (Not (Subcomponent-Of ?B ?A))))