Loading [MathJax]/extensions/tex2jax.js
Parallel numerical verification of the σ_odd problem  October 6, 2018
All Classes Namespaces Files Functions Variables Typedefs Macros
Namespaces | Functions
divisors.cpp File Reference
#include "../helper/helper.hpp"
#include "divisors.hpp"
#include "harmonic.hpp"
#include "primes.hpp"
Include dependency graph for divisors.cpp:

Go to the source code of this file.

Namespaces

 sigmaodd
 A lot of functions and stuffs to deal the sigma_odd problem and related stuffs.
 

Functions

std::vector< nat_typesigmaodd::coprime_factors_ (nat_type a, nat_type b)
 Return a list of factors such that all factors are coprimes and divide a*b, and these factors are (possibly) sufficient for coprime_factor_exps(). More...
 
std::ostream & sigmaodd::operator<< (std::ostream &out, const FactorExp &factor_exp)
 Return "factor^exponent" representation of factor_exp. More...
 
std::vector< FactorExp > sigmaodd::coprime_factor_exps (nat_type a, nat_type b)
 Heuristic to return a list of factors with their exponents such that all factors are coprimes and the product == a*b. If failed to have a list at least two factors then return an empty list. More...
 
std::pair< nat_type, unsigned int > sigmaodd::divide_until_nb (nat_type n, nat_type d)
 Divide n by d until the result is not divisible by d, and return (result, number of divisions). More...
 
nat_type sigmaodd::first_divisor (nat_type n)
 Return the first divisor of n > 1 (or 1 if n <= 1) More...
 
bool sigmaodd::is_square (nat_type n)
 Return true iff n is a perfect square. More...
 
nat_type sigmaodd::pollard_rho (nat_type n)
 Return pollard_rho(n, rand() % n, floor square root of n). More...
 
nat_type sigmaodd::pollard_rho (nat_type n, nat_type random, nat_type max_iteration)
 Heuristic to find a proper divisor of n with the Pollard's rho heuristic. More...
 
nat_type sigmaodd::pollard_rho_repeat (nat_type n, nat_type nb_tries)
 Try pollard_rho(n) a maximum of nb_tries times and return 0 or the first divisor find. More...
 
nat_type sigmaodd::sum_divisors__factorize (nat_type n)
 Calculates the sum of all divisors of n by the factorization method and returns it. More...
 
nat_type sigmaodd::sum_divisors__naive (nat_type n)
 Calculates the sum of all divisors of n by the naive method and returns it. More...
 
nat_type sigmaodd::sum_odd_divisors__factorize (nat_type n)
 Calculates the sum of odd divisors of n by the factorization method and returns it. More...
 
nat_type sigmaodd::sum_odd_divisors__naive (nat_type n)
 Calculates the sum of odd divisors of n by the naive method and returns it. More...
 
nat_type sigmaodd::sum_odd_divisors_upper_bound (nat_type n)
 Return an upper bound of sum odd divisors. More...
 
nat_type sigmaodd::sum_odd_divisors_upper_bound__DeTemple (nat_type n)
 Return an upper bound of sum odd divisors of n using the DeTemple inequalities. More...
 
nat_type sigmaodd::sum_odd_divisors_upper_bound__DeTemple_ceil (nat_type n)
 Return an upper bound of sum odd divisors of n using the DeTemple inequalities. ??? More...
 
nat_type sigmaodd::sum_odd_divisors_upper_bound__DeTemple (nat_type n, nat_type k)
 Return an upper bound of sum odd divisors of n using the DeTemple inequalities and the knowledge that n have no divisors <= k. More...
 

Detailed Description

(December 20, 2017)

GPLv3 — Copyright (C) 2017 Olivier Pirson http://www.opimedia.be/

Definition in file divisors.cpp.