namespace boost{ namespace multiprecision{
template <unsigned Digits10>
class gmp_float;
typedef number<gmp_float<50> >    mpf_float_50;
typedef number<gmp_float<100> >   mpf_float_100;
typedef number<gmp_float<500> >   mpf_float_500;
typedef number<gmp_float<1000> >  mpf_float_1000;
typedef number<gmp_float<0> >     mpf_float;
}} 
Шаблон класса gmp_float соответствует всем требованиям для типа Backend. Его члены и функции, не являющиеся членами, умышленно не документируются: они считаются деталями осуществления, которые подлежат изменению.
Класс имеет один параметр шаблона - Digits10 - это число десятичных цифр точности, которую должен поддерживать тип. Когда этот параметр равен нулю, то точность может быть установлена в рабочее время через  номер::default_precision и Номер:: точность>. Обратите внимание, что этот тип никоим образом не меняет глобальное состояние библиотеки GMP (например, он не меняет точность по умолчанию типа данных mpf_t), поэтому вы можете безопасно смешивать этот тип с существующим кодом, который использует GMP, а также смешивать gmp_float с различной точностью.
Тип  number_category<cpp_int<Args...> >::type является mpl::int_<Номер_kind_floating_point>.
Более подробную информацию об этом типе можно найти в tutorial.