(motive : ℤ → Sort u_1) →
  (x : ℤ) →
    (Unit → motive 0) →
      ((d d' : ℕ) → (hd : d = d' + 1) → motive (Int.ofNat (namedPattern d d'.succ hd))) →
        ((d : ℕ) → motive (Int.negSucc d)) → motive x