I knew that surface subdivision could update a coarse surface into a fine one, but can we predict the updated surface shape depending on the original surface?
For me it does not sound like a question
like: are the new generated surface vertices predictable.
It more sounds like: how can I predict the new generated surface with respect to the neighborhood surface?
Trying to answer it
The new generated surface usually depends on the tangents of the original surface. These tangents are often defined by normal vectors which are interpolated with respect to different algorithms. For example the algorithms "Curved PN triangles" and "Gregory patches" smooth the surface with respect to bezier curves. Other techniques like "displacement mapping", or different noise algorithms like "perlin noise", "simplex noise", "white noise" and a lot more add details to the new generated surface. What you do at the end, depend on your needs.
how can surface subdivision technique be used in animations?
Animation of character is usually based on skeletons like our physical human body works. The bones hold our body, the muscles change the orientation of these bones with respect to the neighboring bones.
The surface above the bones (like our skin) are connected to one or more bones by having weights summed up to 1. The new generated vertices can use interpolation methods to define their weights. Alternatively textures can be used holding weight information about surrounding bones. Therefore the interpolated texture coordinates are used to find the correct pixel in the texture.