## 2 Materials and Methods
### Matricial Formulation of the Periodic LMS Algorithm  
We begin this subsection bringing the matrix-based algorithmic proposal of [PERSON] et al. [9] before reducing its computational complexity in Section 2.2 by means of PU.  
Let \(\mathbf{w}(n)\) be an LMS filter with periodic reference \(x(n)\) and training signal \(d(n)\), both of period P.  
Defining the corresponding \(M\)-length vectors, we have  
\[\mathbf{w}(n)=[w_{0}(n)\ w_{1}(n)\ \cdots\ w_{M-1}(n)]^{T} \tag{1}\]  
\[\mathbf{x}(n)=[x(n)\ x(n-1)\ \cdots\ x(n-M+1)]^{T} \tag{2}\]Here, the standard LMS updating process of the coefficients is given by the well-known recursion  
\[\mathbf{w}(n+1)=\mathbf{w}(n)+\mu\;e(n)\mathbf{x}(n) \tag{3}\]  
with \(\mu\) being the step-size parameter and \(e(n)\) being the error. The error is defined as the difference between the training signal \(d(n)\) (often referred to as desired response) and the output of the filter.  
\[e(n)=d(n)-\mathbf{w}^{\mathbf{T}}(n)\mathbf{x}(n). \tag{4}\]  
Iterating in Equation (3) the LMS algorithm in the interval given by \([l,\;l+1,\cdots,\;n-1,\;n]\), we have  
\[\mathbf{w}(n)=\mathbf{w}(l)+\mu\;\sum_{j=l}^{n-1}e(j)\mathbf{x}(j) \tag{5}\]  
and  
\[d(n)=e(n)+\mathbf{w}^{\mathbf{T}}(l)\mathbf{x}(n)=\mathbf{w}(l)+\mu\;\sum_{j=l}^{n-1}e(j)\;\mathbf{ x}^{\mathbf{T}}(j)\;\mathbf{x}(n) \tag{6}\]  
Due to the P-periodicity of the input signals \(x(n)\) and \(d(n)\), one may consider separately complete P-periods of the signals. Particularly, during the \(k^{th}\) period \((k=0,\;1,\;2,\ldots)\), we have:  
* the vector from the training signal: \(\mathbf{d}^{k}=\left[d(kP)\;\cdots\;d((k+1)P-1)\right]^{T}\)
* the vector from the error: \(\mathbf{e}^{k}=\left[e(kP)\;\cdots\;e((k+1)P-1)\;\right]^{T}\)
* and, finally, the estimated response vector: \(\mathbf{r}^{k}=\mathbf{d}^{k}-\mathbf{e}^{k}\)  
Additionally, because \(d(n)\) is periodic, the training signal vector remains invariant during all periods, that is, \(\mathbf{d}^{k}=\mathbf{d}^{0}=\mathbf{d},\;\forall k\in\mathbb{N}\).  
Substituting \(l=kP\) into Equation (6), at every period, we have the following matrix identity  
\[\mathbf{d}^{k}=\mathbf{d}=\mathbf{X}\,\mathbf{w}(kP)+\mathbf{Q}\;\mathbf{e}^{k} \tag{7}\]  
and, we also have  
\[\mathbf{w}(n)=\mathbf{w}(kP)+\mu\;\mathbf{X}^{\mathbf{T}}_{(n-kP)}\;\mathbf{e}^{k} \tag{8}\]  
that is valid in the interval \(kP\leq n\leq(k+1)P\).  
\(\mathbf{X}\) is a P-by-\(M\) matrix given by:  
\[\mathbf{X}=\left[\begin{array}{cccc}x(0)&x(P-1)&\cdots&x(P-M+1)\\ x(1)&x(0)&\cdots&x(P-M+2)\\ \vdots&\ddots&\ddots&\vdots\\ x(P-1)&x(P-2)&\cdots&x(P-M)\end{array}\right] \tag{9}\]  
For each value of \(k\), the related matrix \(\mathbf{X}_{(n-kP)}\) is the P-by-\(M\) matrix where its first \((n-kP)\) rows are equal to the first \((n-kP)\) rows of \(\mathbf{X}\), whereas the remaining ones are null.  
The square matrix \(\mathbf{Q}\) is defined as  
\[\mathbf{Q}=\mathbf{I}+\mu\mathbf{T} \tag{10}\]  
where \(\mathbf{I}\) is the P-order identity matrix and \(\mathbf{T}\) is the (strictly) lower triangular matrix given by  
\[\mathbf{T}=\left[\begin{array}{cccc}0&0&\cdots&0\\ \mathbf{x}^{\mathbf{T}}(0)\mathbf{x}(1)&0&\cdots&0\\ \mathbf{x}^{\mathbf{T}}(0)\mathbf{x}(2)&\mathbf{x}^{\mathbf{T}}(1)\mathbf{x}(2)&\cdots&0\\ \vdots&\vdots&&\vdots\\ \mathbf{x}^{\mathbf{T}}(0)\mathbf{x}(P-1)&\mathbf{x}^{\mathbf{T}}(1)\mathbf{x}(P-1)&\cdots&0\end{array}\right] \tag{11}\]\(Q^{-1}\) is the sensitivity matrix. From \(\mathbf{d}^{k}=\mathbf{d}=\mathbf{X}\,\mathbf{w}(kP)+\mathbf{Q}\,\mathbf{e}^{k}\) we can obtain \(\mathbf{e}^{k}\) as  
\[\mathbf{e}^{k}=\mathbf{Q}^{-1}(\mathbf{d}-\mathbf{X}\,\mathbf{w}(kP)) \tag{12}\]  
and substituting into Equation (8), which is particularized for \(n=(k+1)P\), gives that a block of \(P\)-iterations updates the LMS filter according to [9]  
\[\mathbf{w}((k+1)P)=\mathbf{w}(kP)-\mu\,\mathbf{G}\,\mathbf{w}(kP)+\mu\,\mathbf{t} \tag{13}\]  
where  
\[\mathbf{G}=\mathbf{X}^{T}\mathbf{Q}^{-1}\mathbf{X} \tag{14}\]  
and  
\[\mathbf{t}=\mathbf{X}^{T}\mathbf{Q}^{-1}\mathbf{d} \tag{15}\]