Ответ 1
23.4.6.1 Обзор набора шаблонов классов [set.overview]
A
set
удовлетворяет всем требованиям [..] ассоциативной контейнер (23.2.4) [...]
Поскольку он удовлетворяет всем предпосылкам ассоциативного контейнера, которые описаны в 23.2.4.
, и не так просты, как "сопоставляет ключ к значению".
Второй абзац даже подчеркивает это (вернее, подчеркивает, что на самом деле map
и multimap
имеют дополнительную функциональность над ассоциативными контейнерами):
23.2.4 Ассоциативные контейнеры [associative.reqmts]
2) Каждый ассоциативный контейнер параметризуется на Key и порядок отношения Compare, который индуцирует строгую слабое упорядочение (25.4) на элементы Ключа. Кроме того, map и multimap связывают произвольный тип T с ключ. Объект типа Compare называется объектом сравнения контейнера.
Полный абзац слишком велик для воспроизведения здесь.