We present a new representation that allows a rigid-body dynamic
simulation to be described as a set of “causal-processes.”
A causal-process is an interval of time during which both
the behavior and the causes of the behavior remain qualitatively
uniform. The representation consists of acyclic, directed
graphs that are isomorphic to the flow of causality through
the kinematic chain. Forces are the carriers of causality
in this domain; thus they are central to the representation.
We use this representation to compute the purposes of the
geometric features on the parts of a device. To compute
the purpose of a particular feature, we simulate the behavior
of the device with and without the feature present. We
then re-represent the two simulations as causal-processes
and identify any causal-processes that exist in one simulation
but not the other. Such processes are indicative of the
feature's purpose. Because they are already causal
descriptions of behavior, they can be directly translated
into natural language descriptions of the feature's
purpose. We have implemented our approach in a computer
program called ExplainIT II.