Automatic Differentation is a powerful technique that solves a variety of problems of symbolic and numerical differentiation. In our day to day scientific work automatic differentiation can be helpful by providing exact derivatives of generic functions with minimal implementational cost.