The above definitions can be extended to attributed graphs, more conveniently represented through third-order tensors \(\mathsf {A} \in \mathbb {R}^{n^2 \times d}\) , with \(n = |V|, d > 0\)  the number of features [1]}, [2]}. Indexes in the first two dimensions of tensor \(\mathsf {A}\)  univocally correspond to vertexes in \(V\)  through a bijection \(\iota : V \rightarrow \lbrace 1, \dots , n \rbrace \) . Here, elements \(\big ( \mathsf {A} \big )_{i,i,:}\)  correspond to node features, while elements \(\big ( \mathsf {A} \big )_{i,j,:}, i \ne j\)  to edge features, which include the connectivity information in \(E\) . Within this context, a graph is defined as a tuple \(G = (V, E, \iota , \mathsf {A})\) , and isomorphisms and automorphisms are interpreted as permutations acting on \(\mathsf {A}\)  as:
\(\big ( \sigma \cdot \mathsf {A} \big )_{ijk} = \mathsf {A}_{\sigma ^{-1}(i)\sigma ^{-1}(j)k}, \quad \forall \sigma \in S_n\) 
