provide an impl for a cached matrix