![]() |
libsemigroups
v3.0.0
C++ library for semigroups and monoids
|
Defined in sims.hpp
.
On this page we describe the SimsStats class. The purpose of this class is to collect some statistics related to Sims1 or Sims2 class template.
Public Member Functions | |
SimsStats () | |
SimsStats (SimsStats &&that) | |
SimsStats (SimsStats const &that) | |
SimsStats & | init () |
Reinitialize an existing SimsStats object. | |
SimsStats & | init (SimsStats const &that) |
Initialize from SimsStats. | |
SimsStats & | operator= (SimsStats &&that) |
SimsStats & | operator= (SimsStats const &that) |
SimsStats & | stats_check_point () |
Store the current statistic values. | |
SimsStats & | stats_zero () |
Set all statistics to zero. | |
SimsStats | ( | ) |
Default constructor.
Constructs a SimsStats object with all statistics set to zero.
Copy constructor.
Returns a SimsStats object that is a copy of that
. The state of the new SimsStats object is the same as that
. This triggers an atomic load on the member variables of that
.
that | the SimsStats to copy. |
Move constructor.
Returns a SimsStats object that is initialized from that
. The state of the new SimsStats object is the same as that
. This triggers an atomic load on the member variables of that
.
that | the SimsStats to move from. |
|
inline |
This function puts a SimsStats object back into the same state as if it had been newly default constructed.
this
.Move assignment operator.
Assigns a SimsStats object that is initialized from that
. The state of the new SimsStats object is the same as that
. This triggers an atomic load on the member variables of that
.
that | the SimsStats to move from. |
Copy assignment operator.
Assigns a SimsStats object that is a copy of that
. The state of the new SimsStats object is the same as that
. This triggers an atomic load on the member variables of that
.
that | the SimsStats to move from. |
|
inline |
Overwrites the values of count_last and total_pending_last with count_now and total_pending_now respectively. Triggers an atomic load on count_now and total_pending_now.
SimsStats & stats_zero | ( | ) |
Set all statistics to zero.
std::atomic_uint64_t count_last |
Number of congruences found at time of last report.
This member holds the number of congruences found by the Sims1 or Sims2 algorithm at the time of the last call to stats_check_point.
std::atomic_uint64_t count_now |
Number of congruences found up to this point.
This member tracks the total number of congruences found during the running of the Sims1 or Sims2 algorithm.
std::atomic_uint64_t max_pending |
The maximum number of pending definitions.
A pending definition is just an edge that will be defined at some point in the future in the WordGraph represented by a Sims1 or Sims2 instance at any given moment.
This member tracks the maximum number of such pending definitions that occur during the running of the algorithms in Sims1 or Sims2.
std::atomic_uint64_t total_pending_last |
The total number of pending definitions at time of last report.
A pending definition is just an edge that will be defined at some point in the future in the WordGraph represented by a Sims1 or Sims2 instance at any given moment.
This member tracks the total number of pending definitions that occur at the time of the last call to stats_check_point. This is the same as the number of nodes in the search tree encounter during the running of Sims1 or Sims2.
std::atomic_uint64_t total_pending_now |
The total number of pending definitions.
A pending definition is just an edge that will be defined at some point in the future in the WordGraph represented by a Sims1 or Sims2 instance at any given moment.
This member tracks the total number of pending definitions that occur during the running of the algorithms in Sims1 or Sims2. This is the same as the number of nodes in the search tree encounter during the running of Sims1 or Sims2.