Inductive le_pos (p : positive) : positive -> Prop :=
| le_p : le_pos p p
| le_xI : forall p2, le_pos p p2 -> le_pos p (xI p2)
| le_xO : forall p2, le_pos p p2 -> le_pos p (xO p2).Inductive le_pos (p : positive) : positive -> Prop :=
| le_p : le_pos p p
| le_xI : forall p2, le_pos p p2 -> le_pos p (xI p2)
| le_xO : forall p2, le_pos p p2 -> le_pos p (xO p2).Inductive le_pos (p : positive) : positive -> Prop :=
| le_p : le_pos p p
| le_xI : forall p2, le_pos p p2 -> le_pos p (xI p2)
| le_xO : forall p2, le_pos p p2 -> le_pos p (xO p2).Inductive le_pos (p : positive) : positive -> Prop :=
| le_p : le_pos p p
| le_xI : forall p2, le_pos p p2 -> le_pos p (xI p2)
| le_xO : forall p2, le_pos p p2 -> le_pos p (xO p2).

(* Specifications: *)
Lemma strongind_pos_aux : P xH -> (forall q, ((forall p, le_pos p q -> P p) -> P (xI q)) /\ ((forall p, le_pos p q -> P p) -> P (xO q))) -> (forall q, (forall p, le_pos p q -> P p)).
Lemma weaken_pos : (forall q, (forall p, le_pos p q -> P p)) -> forall p, P p.
Theorem strongind_pos : P xH -> (forall q, ((forall p, le_pos p q -> P p) -> P (xI q)) /\ ((forall p, le_pos p q -> P p) -> P (xO q))) -> forall p, P p.