As a next step, the node essentially executes a message-passing phase around its neighborhood; this can again be done injectively. In particular, the work of [1]} describes how to design an injective multiset function, i.e. an aggregation of neighbors that returns a different embedding for every possible multiset of neighboring embeddings. We can once again combine this with the embedding \(v_i^t\)  of the node as discussed above, creating an \(f_n\)  that is injective in \(v_i^t\)  and the multiset \(v_j^t \in N(v_i)\) .
