This section (and the one above it) is really just a stub: http://dippl.org/chapters/03-enumeration.html#caching
Would be good to say a bit more about how caching works, and when you can (and should) do it. Including inserting additional marginalization ops.