1. A computing device for rapidly evaluating logical expressions, the computing device comprising: a memory space for storing code; a processor, coupled to the memory space, executing the code to cause the computing device to perform operations of: obtaining a set of logical expressions, at least some of the logical expressions associated with a time sequence, each of the logical expressions associated with one or more primitives that at any time have one or more possible values, wherein the logical expressions are expressed in one or more directed acyclic graphs, each including at least one root node, at least one leaf node, and at least one association between a non-leaf node and a leaf node, node is associated with a set of the logical expressions that are presumed true, a subset of true logical expressions being a possibly empty subset the logical expressions, and each non-leaf node is further associated with one of the primitives associated with one of these logical expressions; and each edge between any two nodes is associated with one of the primitive associated with a node at a tail of the edge, and at any time, a path through each of the directed acyclic graphs from a root node is determined by recursively following the edge that corresponds to the value of the primitive at a given non-leaf node; and taking a union of the logical expressions expressed in the directed acyclic graphs and traversing the directed acyclic graphs to yields the subset of the true logical expressions.