Goal:
    A : Type  v : A  _a_ : A  _l_ : list A
  ============================
   (Some _a_ = Some v → _a_ = v ∨ ∃ n : nat, hd_error (skipn n _l_) = Some v)


DEBUG:Going to execute:
<coq-core.plugins.ssreflect::ssrmove@1> $1 $2
Level 0: Backtrace:

No matching clauses for match.
Level 0: Backtrace:

No applicable tactic.
Level 0: Backtrace:

No applicable tactic.
Level 0: Backtrace:

No applicable tactic.
Level 0: Backtrace:

No applicable tactic.
Level 0: Backtrace:

No applicable tactic.
Level 0: Backtrace:

No applicable tactic.
Level 0: Backtrace:

No applicable tactic.
Level 1: Backtrace:

No applicable tactic.
Level 0: Backtrace:

No applicable tactic.

Goals:
    A : Type  v : A  _a_ : A  _l_ : list A
  ============================
   (v = v ∨ ∃ n : nat, hd_error (skipn n _l_) = Some v)

    A : Type  v : A  _a_ : A  _l_ : list A  _n_ : nat
  ============================
   (hd_error (skipn _n_ _l_) = Some v
    → _a_ = v ∨ ∃ n : nat, hd_error (skipn n _l_) = Some v)


DEBUG:Going to execute:
<coq-core.plugins.ltac::eauto@0> $1 $2 $3