added tests for differentiation