* change the automatic differentiation API to allow differentiation for compound semiring
* add entropy semiring