||The last decade has witnessed the dawn of a new era of 'silicon-based' biology, opening the door, for the first time, to the possible investigation and comparative analysis of complete genomes. In its broadest sense, genome analysis (the quest to elucidate and characterise the genes and gene products of an organism) is underpinned by a number of pivotal concepts, concerning, principally, the processes of evolution (divergence and convergence), the mechanism of protein folding, and, crucially, the manifestation of protein function.
Today, our use of computers to model such processes is limited by, and must be placed in the context of, the current limits of our understanding of these central themes. At the outset, it is important to recognise that we do not yet fully understand the rules of protein folding; we cannot invariably say that a particular sequence or fold has arisen by divergent or convergent evolution; and we cannot necessarily diagnose protein function, given knowledge only of its sequence, or of its structure, in isolation. Accepting what we cannot do with computers plays an essential role in forming an appreciation of what, in fact, we can do. Without this kind of understanding, it is easy to be misled^as spurious arguments are often used to promote perhaps rather overenthusiastic points of view about what particular programs and software packages can achieve.
In the field of bioinformatics, the current research drive is to be able to understand evolutionary relationships in terms of the expression of protein function. Two computational approaches have been brought to bear on the problem, tackling the identification of protein function from the perspectives of sequence analysis and of structure analysis respectively. From the point of view of sequence analysis, we are concerned with the detection of relationships between newly determined sequences and those of known function (usually within a database). This may mean pinpointing functional sites shared by disparate proteins (probably the