FullSimplify and Simplify try to minimize a "cost" function called ComplexityFunction, but do so with different degree of persistence. In your expression, the default ComplexityFunction appears to guide the search for a minimum in the wrong direction.
The solution is to replace the default strategy with a different one.
First I'll define the two un-simplified expressions with c[x] and c, respectively:
a0 =
1 - (4 H n (c[x]^(-1 + 2 n)))/(K^n +
c[x]^n)^2 + (4 H n (c[x]^(-1 + n)))/(K^n + c[x]^n)
(*
==> 1 - (4 H n c[x]^(-1 + 2 n))/(K^n + c[x]^n)^2 + (
4 H n c[x]^(-1 + n))/(K^n + c[x]^n)
*)
b1 = a0 /. c[x] -> c
(*
==> 1 - (4 c^(-1 + 2 n) H n)/(c^n + K^n)^2 + (
4 c^(-1 + n) H n)/(c^n + K^n)
*)
Now define the default ComplexityFunction according to the documentation in the link above:
SimplifyCount[p_] :=
Which[Head[p] === Symbol, 1,
IntegerQ[p],
If[p == 0, 1, Floor[N[Log[2, Abs[p]]/Log[2, 10]]] + If[p > 0, 1, 2]],
Head[p] === Rational,
SimplifyCount[Numerator[p]] + SimplifyCount[Denominator[p]] + 1,
Head[p] === Complex,
SimplifyCount[Re[p]] + SimplifyCount[Im[p]] + 1, NumberQ[p], 2,
True, SimplifyCount[Head[p]] +
If[Length[p] == 0, 0, Plus @@ (SimplifyCount /@ (List @@ p))]]
Next, test explicitly that it is this function that gives the differing results:
FullSimplify[a0, ComplexityFunction -> SimplifyCount]
(* ==> 1 + (4 H K^n n c[x]^(-1 + n))/(K^n + c[x]^n)^2 *)
FullSimplify[b1, ComplexityFunction -> SimplifyCount]
(*
==> (c^(1 + 2 n) + c K^(2 n) +
2 c^n K^n (c + 2 H n))/(c (c^n + K^n)^2)
*)
Now try the failed simplification again with a simpler (non-default) ComplexityFunction:
FullSimplify[b1,
ComplexityFunction -> LeafCount]
(* ==> 1 + (4 c^(-1 + n) H K^n n)/(c^n + K^n)^2 *)
This is the same form as above for the expression with c[x].
c[x]andcrearranged in the same way? – Myridium May 25 '14 at 11:50