O que eu entendi foi o seguinte. Suponha que temos uma tabela com as colunas ABCD, em que a coluna A é a chave. O índice também é uma tabela. O íncide da tabela ABCD seria qualquer tabela que contém as chaves A e também contém, de alguma forma, informação sobre onde na memória permanente estão armazenados as informações das colunas BCD. No caso k*, o índice da tabela ABCD é a própria tabela ABCD. Esse é o caso em que a tabela ABCD está armazenada na memória na mesma ordem de suas linhas. Uma cláusula adicional é que a coluna A, contendo a chave, esteja ordenada também. No caso (k, rid), o índice da tabela ABCD é uma segunda tabela que contém duas colunas: uma coluna com as chaves A, e outra coluna com ponteiros para a localização das colunas BCD na memória correspondente à cada instância única da chave A. O caso (k, rid-list) é similar, só que a chave não é única. Então a segunda coluna do índice não possui um ponteiro, mas sim uma lista de ponteiros para a localização das colunas BCD na memória correspondente às possivelmente numerosas instâncias de cada chave A. Uma dúvida remanescente é: porque chamamos algo de "chave" se não é única? Abs