(motive : Lean.Expr → ℕ → Sort u_1) →
  (x : Lean.Expr) →
    (x_1 : ℕ) →
      ((data : Lean.MData) → (b : Lean.Expr) → (n : ℕ) → motive (Lean.Expr.mdata data b) n) →
        ((f arg : Lean.Expr) → (n : ℕ) → motive (f.app arg) n) → ((x : Lean.Expr) → (n : ℕ) → motive x n) → motive x x_1