The first algorithm to compute persistent homology was introduced and subsequently refined/expanded in [1]}, [2]}, [3]}. It is commonly known as the standard algorithm, and constitutes a central pillar of persistent homology computation today, both in theory and applications.
It has become convention to express the output of the standard algorithm in terms of a so-called \(R = DV\)  decomposition described in the introduction.
The underlying algebra concerning Smith normal form was expanded in [4]}.
A corresponding treatment for persistent (relative) cohomology was developed in [5]}, [6]}, applying the standard algorithm to the anti-transpose of the differential matrix. There are a wide range of implementations, including [7]}, [8]}, [9]}, [10]}, [11]}, [12]}, [13]}, [14]}, [15]}, [16]}, [17]}, [18]}, [19]}, [20]}, [21]}, [22]}, [23]}.
