∀ (rule : Aesop.ForwardRule) (clusterStates : Array Aesop.ClusterState)
  (patSubstSources : Lean.PHashMap Aesop.Substitution (Lean.PHashSet Aesop.PatSubstSource)),
  sizeOf { rule := rule, clusterStates := clusterStates, patSubstSources := patSubstSources } =
    1 + sizeOf rule + sizeOf clusterStates + sizeOf patSubstSources