diff options
Diffstat (limited to 'graph-checker/src/compute.rs')
| -rw-r--r-- | graph-checker/src/compute.rs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/graph-checker/src/compute.rs b/graph-checker/src/compute.rs index 67c1ae4..f11face 100644 --- a/graph-checker/src/compute.rs +++ b/graph-checker/src/compute.rs @@ -10,11 +10,16 @@ pub async fn dominating_numbers( let mut min_size = g.size; for cs in g.cutsets() { - if independent_dominating.is_none() { + if independent_dominating.is_none_or(|cur| cur > 1) { let dom = cs.is_dominating_in(&g); let idp = cs.graph.is_independent(); if dom && idp { - independent_dominating = Some(cs.cardinality as u32); + independent_dominating = Some( + independent_dominating + .map_or(cs.cardinality as u32, |cur| { + std::cmp::min(cur, cs.cardinality as u32) + }), + ); } } |