From 2ca7b9c081da1d0aac4d6b777d226255941c503e Mon Sep 17 00:00:00 2001 From: Andrew Guschin Date: Tue, 29 Oct 2024 17:03:25 +0400 Subject: fix(graph-checker): fix compute for independent dominating number --- graph-checker/src/compute.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'graph-checker/src/compute.rs') 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) + }), + ); } } -- cgit v1.2.3