Reasoning Algebraically with Description Logics