LAL: Linear Arrangement Library 23.01.00
A library focused on algorithms on linear arrangements of graphs.
|
Namespace for the "ladder" algorithm to calculate \(C\). More...
Functions | |
template<bool decide_upper_bound, class graph_t , linarr_type arr_type> | |
uint64_t | compute (const graph_t &g, const linarr_wrapper< arr_type > &arr, unsigned char *const __restrict__ bn, uint64_t *const __restrict__ L1, uint64_t upper_bound) noexcept |
Ladder computation of \(C\) for undirected graphs. More... | |
Namespace for the "ladder" algorithm to calculate \(C\).
See [8].
|
noexcept |
Ladder computation of \(C\) for undirected graphs.
When template parameter decide_upper_bound is false, the function returns the number of crossings.
decide_upper_bound | Boolean value to choose the nature of the return type. |
arr_type | Type of arrangement. |
g | Input graph. |
arr | Input arrangement. |
bn | Array of size n. Boolean neighbourhood of a vertex u: bn[i] is 1 if vertex u and vertex i are adjacent. |
L1 | See [8] for details. |
upper_bound | Upper bound on the number of crossings. |