Defined in sims.hpp.
This class provides a pruner for pruning the search tree when looking for right or two-sided congruences arising from ideals (Rees congruences).
| Public Member Functions | |
| SimsRefinerIdeals () | |
| Default constructor. | |
| SimsRefinerIdeals (Presentation< word_type > const &p) | |
| Construct from presentation. | |
| SimsRefinerIdeals (SimsRefinerIdeals &&that) | |
| Move constructor. | |
| SimsRefinerIdeals (SimsRefinerIdeals const &that) | |
| Copy constructor. | |
| SimsRefinerIdeals & | init () | 
| Reinitialize an existing SimsRefinerIdeals object. | |
| SimsRefinerIdeals & | init (Presentation< word_type > const &p) | 
| Reinitialize an existing SimsRefinerIdeals object from a word_type presentation. | |
| bool | operator() (Sims1::word_graph_type const &wg) | 
| Check if a word graph can be extended to one defining a Rees congruence. | |
| SimsRefinerIdeals & | operator= (SimsRefinerIdeals &&that) | 
| Move assignment operator. | |
| SimsRefinerIdeals & | operator= (SimsRefinerIdeals const &that) | 
| Copy assignment operator. | |
| Presentation< word_type > const & | presentation () const noexcept | 
| Get the presentation over which the refiner is defined. | |
| 
 | explicit | 
Constructs a SimsRefinerIdeals pruner for the semigroup or monoid defined by p.
| p | the presentation. | 
| LibsemigroupsException | if pis not valid. | 
| LibsemigroupsException | if phas 0-generators and 0-relations. | 
| Libsemigroups | if the alphabet of pis not normalized. | 
p. If this is not the case, then this pruner may not terminate on certain inputs. | SimsRefinerIdeals & init | ( | ) | 
This function puts an object back into the same state as if it had been newly default constructed.
*this. | SimsRefinerIdeals & init | ( | Presentation< word_type > const & | p | ) | 
This function puts an object back into the same state as if it had been newly constructed from the presentation p.
| p | the presentation. | 
*this.| LibsemigroupsException | if pis not valid. | 
| LibsemigroupsException | if phas 0-generators and 0-relations. | 
| Libsemigroups | if the alphabet of pis not normalized. | 
p. If this is not the case, then the pruner may not terminate on certain inputs.| 
 | nodiscard | 
Returns false if there is no way of adding edges and nodes to 
true.| 
 | inlinenodiscardnoexcept | 
Returns a const reference to the current relations of the underlying presentation.
This function returns the defining presentation of a SimsRefinerIdeals instance.
Presentation<word_type>.noexcept and is guaranteed never to throw.