NTLib - Number Theory Library 0.9
Loading...
Searching...
No Matches
divisors.cpp File Reference
module divisors

Primary module interface unit for module divisors. More...

#include <algorithm>
#include <cassert>
#include <vector>
import prime_decomposition;
import base;
Include dependency graph for divisors.cpp:

Functions

template<Integer T>
constexpr T ntlib::count_divisors (const prime_factors< T > &factors) noexcept
 Counts the number of divisors of a given number n.
template<Integer T, Integer Exp>
constexpr T ntlib::divisor_function (const prime_factors< T > &factors, Exp x) noexcept
 Computes the divisor function for a given number n.
template<Integer T>
constexpr std::vector< T > ntlib::enumerate_divisors (const prime_factors< T > &factors)
 Enumerates all divisors of a given number n.

Detailed Description

Primary module interface unit for module divisors.

Function Documentation

◆ count_divisors()

template<Integer T>
T ntlib::count_divisors ( const prime_factors< T > & factors)
nodiscardconstexprexportnoexcept

Counts the number of divisors of a given number n.

Template Parameters
TAn integer-like type.
Parameters
factorsThe prime decomposition of n.
Returns
The number of divisors of n.

◆ divisor_function()

template<Integer T, Integer Exp>
T ntlib::divisor_function ( const prime_factors< T > & factors,
Exp x )
nodiscardconstexprexportnoexcept

Computes the divisor function for a given number n.

The divisor function for n is defined as \(\sigma_x(n) = \sum_{d \mid n} d^x\).

Template Parameters
TAn integer-like type.
ExpAn integer-like type.
Parameters
factorsThe prime decomposition of n.
xThe power to which all divisors should be taken. Must be non-negative.
Returns
The value of \(\sigma_x(n)\).

◆ enumerate_divisors()

template<Integer T>
std::vector< T > ntlib::enumerate_divisors ( const prime_factors< T > & factors)
nodiscardconstexprexport

Enumerates all divisors of a given number n.

In particular, this is equal to \(\sigma_0(n)\).

Template Parameters
TAn integer-like type.
Parameters
factorsThe prime decomposition of n.
Returns
All divisors of n.