Reasoning Algorithmically in Graph Neural Networks | Synapse