Include file:
#include "mcrl2/utilities/big_numbers.h
mcrl2::utilities::
big_natural_number
¶mcrl2::utilities::big_natural_number::
m_number
¶is_well_defined
() const¶multiply_by
(std::size_t n, std::size_t carry)¶print_number
(const std::string &s) const¶remove_significant_digits_that_are_zero
()¶add
(const big_natural_number &other)¶big_natural_number
()¶big_natural_number
(const std::size_t n)¶big_natural_number
(const std::string &s)¶clear
()Sets the number to zero.
This is more efficient than using an assignment x=0.
div_mod
(const big_natural_number &other, big_natural_number &result, big_natural_number &remainder, big_natural_number &calculation_buffer_divisor) const¶divide_by
(std::size_t n)¶is_number
(std::size_t n) const¶Returns whether this number equals a number of std::size_t.
This is more efficient than checking x==big_natural_number(1).
is_zero
() const¶Returns whether this number equals zero.
This is more efficient than checking x==big_natural_number(0).
multiply
(const big_natural_number &other, big_natural_number &result, big_natural_number &calculation_buffer_for_multiplicand) const¶operator std::size_t
() const¶Transforms this number to a std::size_t, provided it is sufficiently small. If not an mcrl2::runtime_error is thrown.
operator!=
(const big_natural_number &other) const¶operator%
(const big_natural_number &other) const¶operator*
(const big_natural_number &other) const¶operator+
(const big_natural_number &other) const¶operator-
(const big_natural_number &other) const¶operator/
(const big_natural_number &other) const¶operator<
(const big_natural_number &other) const¶operator<=
(const big_natural_number &other) const¶operator==
(const big_natural_number &other) const¶operator>
(const big_natural_number &other) const¶operator>=
(const big_natural_number &other) const¶subtract
(const big_natural_number &other)¶