# Utility classes

Underlying the implementations of [mlpack's machine learning
algorithms](../index.md) are mlpack core support classes, each of which are
documented in the pages below:

 * [Core math utilities](core/math.md): utility classes for mathematical
   purposes
 * [Distances](core/distances.md): distance metrics for geometric algorithms
 * [Distributions](core/distributions.md): probability distributions
 * [Kernels](core/kernels.md): Mercer kernels for kernel-based algorithms
 * [Trees](core/trees.md): space partitioning trees and other geometric tree
   structures
