Por que a maioria dos bancos de dados SQL permite definir o mesmo índice duas vezes?

Por que a maioria dos bancos de dados SQL permite definir o mesmo índice (ou restrição) duas vezes?

Por exemplo, no MySQL eu posso fazer:

CREATE TABLE testkey(id VARCHAR(10) NOT NULL, PRIMARY KEY(id));
ALTER TABLE testkey ADD KEY (id);
ALTER TABLE testkey ADD KEY (id);
SHOW CREATE TABLE testkey;
CREATE TABLE `testkey` (
  `id` varchar(10) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `id` (`id`),
  KEY `id_2` (`id`)
)

Não vejo nenhum caso de uso por ter o mesmo índice ou restrição duas vezes. E eu gostaria que os bancos de dados SQL não me permitissem fazê-lo.

Também não vejo sentido em nomear índices ou restrições, pois eu poderia referenciá-los para exclusão, assim como os criei.

questionAnswers(6)

yourAnswerToTheQuestion