Attributes¶
This page contains information about attributes of the Blocks class.
-
inline uint32_t libsemigroups::Blocks::degree() const noexcept¶
Returns the degree of a blocks object.
The degree of a Blocks object is the size of the set of which it is a partition, or the size of the
blocksparameter to Blocks::Blocks.- Parameters
(None)
- Throws:
(None) – This function is
noexceptand is guaranteed never to throw.- Returns:
The degree of a Blocks object.
-
size_t libsemigroups::Blocks::hash_value() const noexcept¶
Returns a hash value for a Blocks instance.
This value is recomputed every time this function is called.
- Complexity
Linear in
degree().- Parameters
(None)
- Throws:
(None) – This function is
noexceptand is guaranteed never to throw.- Returns:
A hash value for a
this.
-
inline bool libsemigroups::Blocks::is_transverse_block(size_t index) const noexcept¶
Check if a block is a transverse block.
This function returns
trueif the block with indexindexis a transverse (or signed) block and it returnsfalseif it is not transverse (or unsigned).- Complexity
Constant.
- Parameters:
index – the index of a block
- Throws:
(None) – This function is
noexceptand is guaranteed never to throw.- Returns:
trueif the block with indexindexis transverse, andfalseif not.
-
inline uint32_t libsemigroups::Blocks::number_of_blocks() const noexcept¶
Returns the number of blocks in a Blocks object.
This function returns the number of parts in the partition that instances of this class represent.
- Complexity
At worst \(O(2n)\) where \(n\) is the degree().
- Parameters
(None)
- Throws:
(None) – This function is
noexceptand is guaranteed never to throw.- Returns:
The number of blocks in a Bipartition object.
-
uint32_t libsemigroups::Blocks::rank() const¶
Returns the number of transverse blocks.
This function returns the number of
truevalues in lookup().- Complexity
At most linear in the number of blocks.
- Parameters
(None)
- Throws:
(None) – Throws if
std::countthrows.- Returns:
The number of signed (transverse) blocks in
this.