While exact in theory, Kohn-Sham density-functional theory contains an unknown energy component -the exchange-correlation (XC) functional -which must be approximated. Thus the accuracy of practical DFT calculations depends on the choice of exchange-correlation functional. There is no systematic method to improve the exchange-correlation functional, but strategies have evolved to improve accuracy through including additional terms in the exchangecorrelation functional. The simplest density-functional is the local-density approximation (LDA) in which the energy density depends only on the electron density at each point. Accuracy may be improved by including terms that depend on the gradient of the electron density, forming the generalized-gradient approximation (GGA). There are several widelyused functionals of this type, including BLYP and PBE. Further improvements in accuracy can be attained by including higher order density gradients and the kinetic-energy density. However there appears to be a limit to the accuracy achievable through such approximations. Problems with these semi-local functionals can be related to the self-interaction error (SIE), arising from the incomplete cancellation between the self-interacting portions of Coulomb and exchange energies. In semi-local functionals, the potential felt by a removed electron from a neutral molecule exhibits exponential decay in the long range, rather the the physically correct -r -1 decay behavior. Hybrid density-functional methods attempt to reduce these errors by replacing a fraction of approximate density-functional exchange with exact Hartree-Fock exchange. Hybrid functionals remain some the most popular density functionals in use today, though they are not free from problems. Most popular hybrid functionals such as B3LYP and PBE0 contain a relatively small fraction of exact exchange, so they still contain a large amount of selfinteraction error. Also, while Hartree-Fock exchange has the correct long-range behavior, global hybrid functionals with a fixed fraction c x do not, since the long-range exchange potential behaves as -c x r -1 instead of the correct -r -1 .