Bioinformatics or computational biology is the use of techniques from applied mathematics, informatics, statistics, and computer science to solve biological problems. Research in computational biology often overlaps with systems biology. Major research efforts in the field include sequence alignment, gene finding, genome assembly, protein structure alignment, protein structure prediction, prediction of gene expression and protein-protein interactions, and the modeling of evolution. The terms bioinformatics and computational biology are often used interchangeably, although the latter typically focuses on algorithm development and specific computational methods. (In the biology-mathematics-computer science triad, bioinformatics will intimately involve all three components while computational biology will focus on biology and mathematics.) Due to interest from computer scientists and mathematicians and the popularity of computational techniques in the field of genomics, it is commonly referred to as computational biology; a more accurate term is computational genomics. There are also lesser known but equally important areas of computational biochemistry and computational biophysics, that are also a part of computational biology. A common thread in projects in bioinformatics and computational genomics is the use of mathematical tools to extract useful information from noisy data produced by high-throughput biological techniques. (The field of data mining overlaps with computational biology in this regard.) Representative problems in computational biology include the assembly of high-quality DNA sequences from fragmentary "shotgun" DNA sequencing, and the prediction of gene regulation with data from mRNA microarrays or mass spectrometry.