(N : ℕ) →
  (motive : MProd (Lean.NameMap (BitVec N)) (MProd Lean.NameSet (Lean.NameMap Lean.NameSet)) → Sort u_1) →
    (r : MProd (Lean.NameMap (BitVec N)) (MProd Lean.NameSet (Lean.NameMap Lean.NameSet))) →
      ((c2m : Lean.NameMap (BitVec N)) →
          (pushed : Lean.NameSet) → (result : Lean.NameMap Lean.NameSet) → motive ⟨c2m, pushed, result⟩) →
        motive r