(motive :
    MProd (Subarray (Lean.Name × Lean.Expr × Lean.Term × Lean.TSyntax `term))
        (MProd (Array (Lean.TSyntax `Lean.Parser.Term.matchAltExpr))
          (Array (Lean.TSyntax `Lean.Parser.Term.matchAltExpr))) →
      Sort u_1) →
  (r :
      MProd (Subarray (Lean.Name × Lean.Expr × Lean.Term × Lean.TSyntax `term))
        (MProd (Array (Lean.TSyntax `Lean.Parser.Term.matchAltExpr))
          (Array (Lean.TSyntax `Lean.Parser.Term.matchAltExpr)))) →
    ((__s : Subarray (Lean.Name × Lean.Expr × Lean.Term × Lean.TSyntax `term)) →
        (invFunAlts toFunAlts : Array (Lean.TSyntax `Lean.Parser.Term.matchAltExpr)) →
          motive ⟨__s, invFunAlts, toFunAlts⟩) →
      motive r