I'm learning vector calculus and am wondering how general it is. The appear to be using a smoothness condition, but what is it? Certainly the functions are required to have two derivatives. That is, the partial derivatives can be taken twice. Are they further required to have an infinite number of derivatives for those identities to hold? Or what?