what is a derivation