(**************************************************************************) (* ___ *) (* ||M|| *) (* ||A|| A project by Andrea Asperti *) (* ||T|| *) (* ||I|| Developers: *) (* ||T|| The HELM team. *) (* ||A|| http://helm.cs.unibo.it *) (* \ / *) (* \ / This file is distributed under the terms of the *) (* v GNU General Public License Version 2 *) (* *) (**************************************************************************) (* This file was automatically generated: do not edit *********************) include "Coq.ma". (*#***********************************************************************) (* v * The Coq Proof Assistant / The Coq Development Team *) (* 2*n and n|->2n+1 have disjoint image *) inline procedural "cic:/Coq/Arith/Mult/odd_even_lem.con" as theorem. (*#* Tail-recursive mult *) (*#* [tail_mult] is an alternative definition for [mult] which is tail-recursive, whereas [mult] is not. This can be useful when extracting programs. *) inline procedural "cic:/Coq/Arith/Mult/mult_acc.con" as definition. inline procedural "cic:/Coq/Arith/Mult/mult_acc_aux.con" as lemma. inline procedural "cic:/Coq/Arith/Mult/tail_mult.con" as definition. inline procedural "cic:/Coq/Arith/Mult/mult_tail_mult.con" as lemma. (*#* [TailSimpl] transforms any [tail_plus] and [tail_mult] into [plus] and [mult] and simplify *) (* UNEXPORTED Ltac tail_simpl := repeat rewrite <- plus_tail_plus; repeat rewrite <- mult_tail_mult; simpl in |- *. *)