Boolean matrix multiplication and transitive closure | Synapse