Inductive Is_Monotone (t : Tree) : Prop :=
    is_monotone_intro :
      (forall t0 : Tree,
       Successor t0 t ->
       forall i : I,
       P (root t0) i -> forall t1 : Tree, Successor t1 t0 -> P (root t1) i) ->
      Is_Monotone t.Inductive Is_Monotone (t : Tree) : Prop :=
    is_monotone_intro :
      (forall t0 : Tree,
       Successor t0 t ->
       forall i : I,
       P (root t0) i -> forall t1 : Tree, Successor t1 t0 -> P (root t1) i) ->
      Is_Monotone t.

(* Specifications: *)
Lemma is_monotone_successor : forall T : Tree, Is_Monotone T -> forall t : Tree, Successor t T -> Is_Monotone t.
Lemma is_monotone_tree_is_monotone : forall t : Tree, Is_Monotone_Tree t -> Is_Monotone t.