1. A method of determining a conditional computational plan for a data dependent constraint network represented by a bipartite graph containing input variable nodes, output variable nodes, and relation nodes, the variable nodes and the relation nodes being interconnected by arcs, comprising the steps of: specifying, using a variable node specifier, at least one output variable node for which a plan is desired; and determining, using a plan determiner, a plan from the input variable nodes to the output variable node using a backward chaining search of the bipartite graph.