On Mechanism Underlying Algorithmic Collusion