{motive : Lean.Meta.Grind.TopSort.State → Sort u} →
  (t : Lean.Meta.Grind.TopSort.State) →
    ((tempMark permMark : Std.HashSet Lean.Expr) →
        (result : Array Lean.Expr) → motive { tempMark := tempMark, permMark := permMark, result := result }) →
      motive t