Knuth–Bendix completion algorithm