X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fcontribs%2FRELATIONAL%2FNLE%2Fprops.ma;h=b571dfc6b46f9e8ab9385bef2462baf354e1d286;hb=1eb77ed6774cb642e763182e900f143a0184e085;hp=066e056e0435f74c01f0dc43970bbce5a2575994;hpb=648f1521fa36f3c19cca3b3a29bbf3e8146eca4e;p=helm.git diff --git a/matita/contribs/RELATIONAL/NLE/props.ma b/matita/contribs/RELATIONAL/NLE/props.ma index 066e056e0..b571dfc6b 100644 --- a/matita/contribs/RELATIONAL/NLE/props.ma +++ b/matita/contribs/RELATIONAL/NLE/props.ma @@ -16,21 +16,36 @@ set "baseuri" "cic:/matita/RELATIONAL/NLE/props". include "NLE/fwd.ma". +theorem nle_zero: \forall q. zero <= q. + unfold NLE. + intros. apply ex_intro; auto. (**) +qed. + +theorem nle_succ: \forall p,q. p <= q \to succ p <= succ q. + unfold NLE. + intros. decompose. + apply ex_intro; auto. (**) +qed. + theorem nle_refl: \forall x. x <= x. - intros 1; elim x; clear x; intros; auto new. + intros 1; elim x; clear x; intros; auto new timeout=100. qed. theorem nle_trans_succ: \forall x,y. x <= y \to x <= succ y. - intros. elim H; clear H x y; intros; auto new. + intros 1. elim x; clear x; intros; + [ auto new timeout=100. + | lapply linear nle_gen_succ_1 to H1 as H0. decompose H0. subst. + auto new timeout=100. + ]. qed. theorem nle_lt_or_eq: \forall y,x. x <= y \to x < y \lor x = y. intros 1. elim y; clear y; intros; - [ lapply linear nle_gen_zero_2 to H. auto new + [ lapply linear nle_gen_zero_2 to H. auto new timeout=100 | lapply linear nle_gen_succ_2 to H1. decompose; - [ subst. auto new + [ subst. auto new timeout=100 | lapply linear H to H3 as H0. decompose; - subst; auto new + subst; auto new timeout=100 ] ]. qed.