# 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