Ltac fireInLeft name :=
  match goal with
    | [H : In ?X (?X :: ?XS) -> _ |- _ ] =>
      assert (In X (X :: XS)) as name by (left; auto); apply H in name; clear H
  end.

Lemma corrNodeNonEmpty : forall st1 st2 l p f, correspondingSeedTree l f (SeedTreeNode st1 st2) -> In p l -> p <> [].