This week, I started working on adding the final method to convolution module for Intersecting Product. PR #14954 dealt with the addition of intersection_product method. Intersecting Product was implemented using Möbius Transform with superset enumeration (mobius_transform(..., subset=False) and inverse_mobius_transform(..., subset=False)). After minor documentation improvements, the PR was merged successfully. The proposed transforms and convolutions are now part of sympy.discrete. The basic usage for the method is:

>>> from sympy import symbols, S, I, intersecting_product
>>> u, v, x, y, z = symbols('u v x y z')

>>> intersecting_product([u, v], [x, y])
[u*x + u*y + v*x, v*y]
>>> intersecting_product([u, v, x], [y, z])
[u*y + u*z + v*y + x*y + x*z, v*z, 0, 0]

Late this week, I started working on improving the documentation for SymPy’s Sphinx docs ( and other minor changes in the PR #14969. Also, issue #14964 was opened to discuss the possibility of using LaTeX in docstrings for SymPy documentation. The following changes were part of the PR:

  • Use LaTeX for docstrings in functions.combinatorial (reference to #14964)
  • Include genocchi and partition numbers in sphinx docs
  • Improve docstrings with single and double backticks for sphinx docs
  • Use plural module names under discrete (discrete.convolutions and discrete.recurrences)
  • Add graphviz as a prerequisite in sympy/doc/README.rst for Debian/Ubuntu
  • Fix links in references containing rounded braces and unicode chars for sphinx docs
  • Miscellaneous improvements to documentation

Successive reviews and discussions were helpful in finalizing the Pull Requests.

Looking forward to the final week of Coding Period.

Published: 28 July 2018