GSoC 2018: SymPy - Week 10

This week SymPy 1.2 was released, which included the discrete module. The complete changelog for the SymPy 1.2 is here. I started the week by cleaning up discrete module, improving the API of public convolution method by attending to reviews by Aaron and Kalevi and fixing issue #14901 reported by Aaron in PR #14907.

The PR #14907 has been merged successfully and will be part of SymPy 1.2.1.

Late this week, I started working on the convolution module for inclusion of covering_product.
The PR #14298 included the same with documentation, doctests and unit tests.
The implementation of covering_product uses Möbius Transform with subset enumeration (mobius_transform(..., subset=True) and inverse_mobius_transform(..., subset=True)). As included in the PR, the usage for the same is: