X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fmatita%2Fcontribs%2FRELATIONAL%2FNLE%2Fprops.ma;h=b571dfc6b46f9e8ab9385bef2462baf354e1d286;hb=07e176d2d2355cea8c5b9990cbbc3c7d234bfe15;hp=8745e160e4b94c6ae1e5e4d6565839a38f634732;hpb=72858765956176eebbd67669db6e2cee8cdb0de0;p=helm.git diff --git a/helm/software/matita/contribs/RELATIONAL/NLE/props.ma b/helm/software/matita/contribs/RELATIONAL/NLE/props.ma index 8745e160e..b571dfc6b 100644 --- a/helm/software/matita/contribs/RELATIONAL/NLE/props.ma +++ b/helm/software/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. + 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. + 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 + [ lapply linear nle_gen_zero_2 to H. auto new timeout=100 | lapply linear nle_gen_succ_2 to H1. decompose; - [ subst. auto + [ subst. auto new timeout=100 | lapply linear H to H3 as H0. decompose; - subst; auto + subst; auto new timeout=100 ] ]. qed.