Fixpoint fun_power {A:Type}(n:nat)(f:A->A)(x:A) : A :=
match n with
| 0 => x
| S n' => f (fun_power n' f x)
end.

(* Specifications: *)
Lemma fun_power_minus_S : forall A (f:A->A) x m n,
m < n -> f (fun_power (n - S m) f x) = fun_power (n - m) f x.