Na quinta passada, numa aula de bases de dados avançadas, estávamos a analisar um artigo de 1980 que faz parte de um livro de artigos importantes na área das bases de dados. O livro, já na terceira edição, é compilado pela Universidade de Berkeley o que atesta, imediatamente, a sua qualidade. Além disso, todos os artigos do livro são da autoria de grandes senhores da informática e das bases de dados, alguns dos quais ganharam já o Turing Award (o Nobel da informática). O livro é usado em muitas universidades como suporte ao ensino de importantes e fundamentais conceitos. Aqui, na Universidade de Madison, o docente da cadeira usa este artigo há 10 anos. Os artigos têm todos muitos anos o que significa que já passaram o teste do tempo.
Estava o professor a analisar uma parte do algoritmo do artigo quando um colega meu pergunta uma coisa. O professor começa a explicar e segue por ali fora avançando no algoritmo. A determinada altura, o professor hesita e diz que está com problemas a explicar um conceito. Recomeça. Hesita. Volta atrás. Diz que está ali qualquer coisa de errado, que ele não está a ver e explica-nos o que ele acha que está errado. Depois nós, alunos, começámos a intervir, a tentar arranjar solução para o problema que o professor tinha levantado. Aparentemente o artigo tinha um erro… ou então nenhum de nós estava a perceber bem o artigo. O que era bem provável! Eram 10 da manha, e talvez o professor nem tivesse preparado a aula.
Depois de alguns momentos de grande discussão, ninguém conseguiu provar nada. O professor cheio de boa disposição disse que iria ter um fim de semana horrível culpabilizando-se pela sua “burrice” e tentando perceber o que estava mal. Para trabalho de casa ficou percebermos o artigo.
Juntámo-nos, um grupo de cinco, e não chegámos a conclusão nenhuma. O sentimento geral era que o artigo era demasiado importante para estar errado. E a culpa só podia ser nossa por não percebermos bem as coisas. O máximo que conseguimos foi arranjar uma situação que não seria totalmente resolvida pelo artigo. A ideia era que, quando o professor dissesse que o artigo estava bem, nós pedíssemos para ele considerar aquele caso. Mas confesso, sempre esperei que aquele caso fosse explicável pelo artigo.
A verdade é que o artigo tinha e tem um erro. Depois de muito pensar, o professor falou com os alunos dele de doutoramento e depois de muita discussão e alguma pesquisa na Internet, descobriram que em 1988, um dos alunos do autor do artigo, tinha publicado uma correcção ao mesmo. Aparentemente, ninguém na Universidade de Madison, ou Berkeley sabia disso.
O erro não é muito grave e o algoritmo funciona de qualquer forma. O problema é que está explicado ao contrário. Quase como ter dois sinais menos para obter um sinal mais.
Mas é fantástico! O autor não se apercebeu do erro em 1979. O erro sobreviveu ao sistema de revisão de artigos onde foi submetido. Não foi publicada uma errata na conferência em 1980. Foi feita uma compilação de artigos importantes que incluíam o erro. A correcção (de 1988) não foi incluída no livro. O erro sobreviveu a 23 anos, ao escrutínio de três edições do livro e 10 anos de ensino. Ninguém detectou nada. Se considerarmos apenas 10 universidades e 10 anos de ensino, com 20 alunos por turma, houve pelo menos 2000 pessoas, supostamente inteligentes, atentas e interessadas, que leram e comeram.
Para mim representa uma lição: não divinizar os artigos conceituados. Não os ler com fé. Não duvidar de mim até ao fim. A ciência, afinal de contas, é muito humana e cheia de erros.
Muito interessante o artigo do Dr. Pedro Bizarro, despertando assim uma melhor análise e interpretação de trabalhos publicados.