fact: Fixpoint positive_Z_to_decimal_string (fuel : nat) (z : Z) := match fuel with | O => ""%string | S p => if (z =? 0)%Z then ""%string else let (q, r) := Z.div_eucl z 10 in append (positive_Z_to_decimal_string p q) match r with | 0%Z => "0"%string | 1%Z => "1"%string | 2%Z => "2"%string | 3%Z => "3"%string | 4%Z => "4"%string | 5%Z => "5"%string | 6%Z => "6"%string | 7%Z => "7"%string | 8%Z => "8"%string | _%Z => "9"%string end end.
imports: mathcomp(all_ssreflect) ZArith QArith List String OrderedType OrderedTypeEx FMapAVL