cost function differentiation