This paper introduces two algorithms, GeneWise and Genomewise, used in the Ensembl annotation system for gene prediction. GeneWise predicts gene structure using similar protein sequences, while Genomewise provides a final gene structure parse based on cDNA- and EST-defined spliced structures. Both algorithms are highly accurate and robust, but GeneWise is more mature and has been widely used in various genome projects. GeneWise combines hidden Markov models (HMMs) to predict gene structures from protein sequences, while Genomewise uses a pragmatic approach to handle EST and cDNA information. The paper details the theoretical foundations and implementation of these algorithms, including the merging of HMMs and the handling of sequencing errors. GeneWise is noted for its high specificity but lower sensitivity, making it suitable for genomes with well-studied homologous proteins. Genomewise, on the other hand, is designed to refine gene structures from overlapping EST or cDNA fragments, addressing issues like alignment errors and partial alignments. The paper also discusses the performance and limitations of both algorithms, emphasizing their role in the final "polishing" stage of gene prediction.This paper introduces two algorithms, GeneWise and Genomewise, used in the Ensembl annotation system for gene prediction. GeneWise predicts gene structure using similar protein sequences, while Genomewise provides a final gene structure parse based on cDNA- and EST-defined spliced structures. Both algorithms are highly accurate and robust, but GeneWise is more mature and has been widely used in various genome projects. GeneWise combines hidden Markov models (HMMs) to predict gene structures from protein sequences, while Genomewise uses a pragmatic approach to handle EST and cDNA information. The paper details the theoretical foundations and implementation of these algorithms, including the merging of HMMs and the handling of sequencing errors. GeneWise is noted for its high specificity but lower sensitivity, making it suitable for genomes with well-studied homologous proteins. Genomewise, on the other hand, is designed to refine gene structures from overlapping EST or cDNA fragments, addressing issues like alignment errors and partial alignments. The paper also discusses the performance and limitations of both algorithms, emphasizing their role in the final "polishing" stage of gene prediction.