Inductive Min : list A -> Set :=
  | nmin : Min nil
  | cmin :
      forall (a : A) (l : list A),
      Min l -> (forall y : A, lt y a -> GRBar A R (y :: l)) -> Min (a :: l).Inductive Min : list A -> Set :=
  | nmin : Min nil
  | cmin :
      forall (a : A) (l : list A),
      Min l -> (forall y : A, lt y a -> GRBar A R (y :: l)) -> Min (a :: l).Inductive Min : list A -> Set :=
  | nmin : Min nil
  | cmin :
      forall (a : A) (l : list A),
      Min l -> (forall y : A, lt y a -> GRBar A R (y :: l)) -> Min (a :: l).

(* Specifications: *)
Lemma OpenInd : forall xs : list A, Min xs -> (forall a : A, Min (a :: xs) -> GRBar A R (a :: xs)) -> GRBar A R xs.