(motive : Option (Lean.Expr × Lean.Expr × Lean.Expr) → Sort u_1) →
  (x : Option (Lean.Expr × Lean.Expr × Lean.Expr)) →
    ((fst inferred snd : Lean.Expr) → motive (some (fst, inferred, snd))) →
      ((x : Option (Lean.Expr × Lean.Expr × Lean.Expr)) → motive x) → motive x