zero are nonzero.

[@strongly] \
Let the convolutional code $\mathfrak{C}$ be generated by a right prime minimal polynomial matrix $G(z)=\sum_{i=0}^{\mu}G_iz^i\in\mathbb F[z]^{n\times k}$ and have the left prime and row proper parity-check matrix $H(z)=\sum_{i=0}^{\nu}H_iz^i\in\mathbb F[z]^{(n-k)\times n}$. Equivalent are:

-   $\mathfrak{C}$ is of maximum distance profile.

-   $\mathcal{G}_L:=\left[\begin{array}{ccc} G_0 & & 0\\ \vdots & \ddots &  \\ G_L & \hdots & G_0 \end{array}\right]$ where $G_i=0$ for $i>\mu$ has the property that every full size minor that is not trivially zero, i.e. zero for all choices of $G_1,\hdots,G_L$, is nonzero.

-   $\mathcal{H}_L:=\left[\begin{array}{ccc} H_0 & & 0\\ \vdots & \ddots &  \\ H_L & \hdots & H_0 \end{array}\right]$ where $H_i= 0$ for $i>\nu$ has the property that every full size minor that is not trivially zero is nonzero.

 \
The not trivially zero full size minors of $\mathcal{H}_L$ are exactly those which are formed by columns with indices $1\leq j_1<\cdots<j_{(L+1)(n-k)}\leq(L+1)n$ which fulfil $j_{s(n-k)}\leq sn$ for $s=1,\hdots,L$.

The following duality result for MDP convolutional codes will be important at many points of this paper.

[@strongly]\[dual\] \
An $(n,k,\delta)$ convolutional code is MDP if and only if its dual code, which is an $(n,n-k,\delta)$ convolutional code, is MDP.

Next, we introduce reverse MDP convolutional codes, which 