1 (**************************************************************************)
4 (* ||A|| A project by Andrea Asperti *)
6 (* ||I|| Developers: *)
7 (* ||T|| The HELM team. *)
8 (* ||A|| http://helm.cs.unibo.it *)
10 (* \ / This file is distributed under the terms of the *)
11 (* v GNU General Public License Version 2 *)
13 (**************************************************************************)
15 include "ground/arith/nat_succ_iter.ma".
16 include "ground/arith/nat_rplus.ma".
18 (* RIGHT ADDITION FOR NON-NEGATIVE INTEGERS *********************************)
20 (* Constructions with nsucc *************************************************)
22 lemma nrplus_succ_dx (p) (n): ↑(p+n) = p + ↑n.
23 #p #n @(niter_succ … psucc)
26 lemma nrplus_succ_shift (p) (n): ↑p + n = p + ↑n.
29 lemma nrplus_unit_sn (n): ↑n = 𝟏 + n.
30 #n @(nat_ind_succ … n) -n //
33 (* Advanced constructions ***************************************************)
35 lemma nrplus_comm_23 (p) (n1) (n2):
36 p + n1 + n2 = p + n2 + n1.
37 #p #n1 @(nat_ind_succ … n1) -n1 //