A hierarchical time series, is a multivariate time series that satisfies linear aggregation constraints. The aggregation is typically depicted with a tree structure, but with group structures beyond strict hierarchies, it may not necessarily be described by a tree [1]}, [2]}, [3]}. A hierarchical multivariate time series can be denoted by the vector \(\mathbf {y}_{[a,b], t} = [\,\mathbf {y}_{[a],t}^{\top } \;|\; \mathbf {y}_{[b],t}^{\top }\,]^{\top } \in \mathbb {R}^{N}\) , where \(a,b,t\)  stand for the single aggregate, bottom and time indices for the time series \(\mathbf {y}\) , and \([a],[b],[t]\)  listed indices respectively. With the total number of series in the hierarchy \(N=N_{a}+N_{b}\) , where \(N_{a}\)  is the number of aggregated series and \(N_{b}\)  the number of bottom series, that are at the most disaggregated level possible. The hierarchical aggregation constraints have the following convenient matrix representation:
\(\mathbf {y}_{[a,b],t} = \mathbf {S} \mathbf {y}_{[b], t} \quad \Leftrightarrow \quad \begin{bmatrix}\mathbf {y}_{[a],t}\\\mathbf {y}_{[b],t}\end{bmatrix} = \begin{bmatrix}\mathbf {S}_\mathrm {sum}\\\mathbf {I}_{N_{b}}\end{bmatrix}\mathbf {y}_{[b],t},\) 
