(motive : Option (ℤ × Int.Linear.Expr) × Array Lean.Expr → Sort u_1) →
  (__discr : Option (ℤ × Int.Linear.Expr) × Array Lean.Expr) →
    ((d : ℤ) → (e : Int.Linear.Expr) → (atoms : Array Lean.Expr) → motive (some (d, e), atoms)) →
      ((x : Option (ℤ × Int.Linear.Expr) × Array Lean.Expr) → motive x) → motive __discr