Loading [MathJax]/extensions/tex2jax.js
Parallel numerical verification of the σ_odd problem  October 6, 2018
All Classes Namespaces Files Functions Variables Typedefs Macros
Namespaces | Typedefs | Functions
sequential.hpp File Reference

Implementation of the sequential algorithms presented in the report. (Some functions are not use in this part. There are present here to be used by several parallel implementation.) More...

#include "../../common/sigmaodd/helper.hpp"
#include "../../common/sigmaodd/primes.hpp"
#include "sequential__inline.hpp"
Include dependency graph for sequential.hpp:

Go to the source code of this file.

Namespaces

 sequential
 

Typedefs

using sequential::nat_type = sigmaodd::nat_type
 
using sequential::prime_type = sigmaodd::prime_type
 

Functions

std::set< nat_typesequential::sequential_check_gentle_varsigma_odd (nat_type first_n, nat_type last_n, bool print_bad=true)
 Check in the order all odd gentle numbers between first_n and last_n, and if print_bad then print all bad numbers between first_n and last_n (included). The consequence of the result is that: if (all numbers < first_n respect the conjecture) and (all perfect squares < last_n respect the conjecture) and (all bad numbers < last_n respect the conjecture) then all numbers < last_n respect the conjecture. More...
 
std::set< nat_typesequential::sequential_check_gentle_varsigma_odd (nat_type first_n, nat_type last_n, const std::set< nat_type > &bad_table, nat_type bad_first_n, nat_type bad_last_n, bool print_bad=true)
 Check in the order all odd gentle numbers between first_n and last_n, and if print_bad then print all bad numbers between first_n and last_n (included). The consequence of the result is that: if (all numbers < first_n respect the conjecture) and (all perfect squares < last_n respect the conjecture) and (all bad numbers < last_n respect the conjecture) then all numbers < last_n respect the conjecture. More...
 
void sequential::sequential_check_varsigma_odd (nat_type first_n, nat_type last_n, bool print_bad=true, bool print_all=false, bool print_category=true, bool print_lower=true, bool print_length=true, bool print_path=true)
 Check in the order all odd numbers between first_n and last_n. The consequence of the result is that: if all numbers < first_n respect the conjecture and first_iterate_varsigma_odd_until_lower() do not exits with impossible to check or cycle found, then all numbers <= last_n respect the conjecture. More...
 
void sequential::sequential_check_varsigma_odd_perfect_square (nat_type n, bool print=true, bool print_lower=true, bool print_length=true, bool print_path=true)
 Return sequential_check_varsigma_odd(), but only for n perfect square. More...
 
void sequential::sequential_check_varsigma_odd_complete (nat_type first_n, nat_type last_n, bool check_useless=false, bool print_bad=true, bool print_all=false, bool print_category=true, bool print_lower=true, bool print_length=true, bool print_path=true)
 Check completely (until 1) in the order all odd numbers between first_n and last_n. The consequence of the result is that: all odd numbers checked between first_n and last_n (included) respect the conjecture. More...
 
void sequential::sequential_check_varsigma_odd_perfect_square_complete (nat_type n, bool print=true, bool print_lower=true, bool print_length=true, bool print_path=true)
 Return sequential_check_varsigma_odd_complete(), but only for n perfect square. More...
 
bool sequential::sequential_is_varsigma_odd_lower (nat_type n, const std::set< nat_type > &bad_table, nat_type bad_first_n)
 Return true iff varsigma_odd(n) < n. More...
 
bool sequential::sequential_is_varsigma_odd_lower (nat_type n, const std::set< nat_type > &bad_table, nat_type bad_first_n, nat_type bad_last_n)
 Return true iff varsigma_odd(n) < n. More...
 
std::vector< nat_typesequential::sequential_iterate_varsigma_odd_until_1 (nat_type start_n)
 Iterate sequential_varsigma_odd(start_n) until to reach 1. Return this complete path. More...
 
std::vector< nat_typesequential::sequential_iterate_varsigma_odd_perfect_square_until_1 (nat_type start_n)
 Return sequential_iterate_varsigma_odd_until_1(), but only for n perfect square. More...
 
std::vector< nat_typesequential::sequential_iterate_varsigma_odd_until_lower (nat_type start_n)
 Iterate sequential_varsigma_odd(start_n) until to be have a result < start_n. Return this partial path. More...
 
std::vector< nat_typesequential::sequential_iterate_varsigma_odd_perfect_square_until_lower (nat_type start_n)
 Return sequential_iterate_varsigma_odd_until_lower(), but only for n perfect square. More...
 
constexpr nat_type sequential::sequential_min_array (const nat_type ns[], size_t size)
 Return the minimum of the first size values of ns. More...
 
std::vector< nat_typesequential::sequential_print_in_order (const std::set< nat_type > &ns)
 Print number from ns, in increasing order and return a list of these number in the same order. More...
 
nat_type sequential::sequential_varsigma_odd (nat_type n)
 Return varsigma_odd(n), i.e. the sum of all odd divisors of n, divided by 2 until to be odd. More...
 
nat_type sequential::sequential_varsigma_odd_perfect_square (nat_type n)
 Return sequential_varsigma_odd(), but only for n perfect square. More...
 
std::set< nat_typesequential::sequential_varsigma_odd_greater_set (const std::vector< nat_type > &ns, const std::set< nat_type > &bad_table, nat_type bad_first_n, nat_type bad_last_n)
 Return the set of n from ns such that varsigma_odd(n) > n. More...
 
constexpr nat_type sequential::sequential_sigma_odd_upper_bound (nat_type n, const std::set< nat_type > &bad_table, nat_type bad_first_n)
 Return an upper bound of varsigma_odd(n). More...
 
constexpr nat_type sequential::sequential_sigma_odd_upper_bound (nat_type n, const std::set< nat_type > &bad_table, nat_type bad_first_n, nat_type bad_last_n)
 Return an upper bound of sigma_odd(n). More...
 
constexpr nat_type sequential::sequential_sigma_odd_upper_bound_with_sqrt (nat_type n, const std::set< nat_type > &bad_table, nat_type bad_first_n, nat_type sqrt_n)
 Return an upper bound of varsigma_odd(n). More...
 
constexpr nat_type sequential::sequential_sigma_odd_upper_bound_with_sqrt (nat_type n, const std::set< nat_type > &bad_table, nat_type bad_first_n, nat_type bad_last_n, nat_type sqrt_n)
 Return an upper bound of sigma_odd(n). More...
 

Detailed Description

Implementation of the sequential algorithms presented in the report. (Some functions are not use in this part. There are present here to be used by several parallel implementation.)

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

Definition in file sequential.hpp.