End power_decomp.
Section power_decomp_uniq.
Variable (p : nat) (Hp : 2 <= p).

(* Specifications: *)
Theorem power_decomp_factor n f a :
(forall i, 0 < i < S n -> f 0 < f i)
-> ∑ (S n) (fun i => a i * power (f i) p)
= ∑ n (fun i => a (S i) * power (f (S i) - f 0 - 1) p) * power (S (f 0)) p
+ a 0 * power (f 0) p.
Theorem power_decomp_factor n f a :
(forall i, 0 < i < S n -> f 0 < f i)
-> ∑ (S n) (fun i => a i * power (f i) p)
= ∑ n (fun i => a (S i) * power (f (S i) - f 0 - 1) p) * power (S (f 0)) p
+ a 0 * power (f 0) p.