Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Aleph::SparseMatrix Concept Reference

Expresses requirements for sparse matrix backends like DynMatrix. More...

#include <modular_linalg.H>

Concept definition

template<typename T>
concept Aleph::SparseMatrix = requires(const T & m, T & mut_m, size_t r, size_t c, uint64_t v)
{
{ m.rows() } -> std::convertible_to<size_t>;
{ m.cols() } -> std::convertible_to<size_t>;
{ m.read_ne(r, c) } -> std::convertible_to<uint64_t>;
{ mut_m.write(r, c, v) };
{ mut_m.traverse_allocated([](uint64_t &) { return true; }) } -> std::convertible_to<bool>;
{ mut_m.set_dimension(r, c) };
}
Expresses requirements for sparse matrix backends like DynMatrix.
size_t blossom_maximum_cardinality_matching(const GT &g, DynDlist< typename GT::Arc * > &matching, SA sa=SA())
Alias of compute_maximum_cardinality_general_matching().
Definition Blossom.H:466
std::decay_t< typename HeadC::Item_Type > T
Definition ah-zip.H:105
FooMap m(5, fst_unit_pair_hash, snd_unit_pair_hash)
gsl_rng * r

Detailed Description

Expresses requirements for sparse matrix backends like DynMatrix.

Definition at line 63 of file modular_linalg.H.