Algorithmic details