use DiscreteBayesNet::joint in HybridBayesNet

release/4.3a0
Varun Agrawal 2025-05-14 06:40:48 -04:00
parent 4d97136f5c
commit de4233dcd6
1 changed files with 3 additions and 3 deletions

View File

@ -53,11 +53,11 @@ HybridBayesNet HybridBayesNet::prune(
// Prune discrete Bayes net // Prune discrete Bayes net
DiscreteValues fixed; DiscreteValues fixed;
auto prunedBN = marginal.prune(maxNrLeaves, marginalThreshold, &fixed); DiscreteBayesNet prunedBN =
marginal.prune(maxNrLeaves, marginalThreshold, &fixed);
// Multiply into one big conditional. NOTE: possibly quite expensive. // Multiply into one big conditional. NOTE: possibly quite expensive.
DiscreteConditional pruned; DiscreteConditional pruned = prunedBN.joint();
for (auto &&conditional : prunedBN) pruned = pruned * (*conditional);
// Set the fixed values if requested. // Set the fixed values if requested.
if (marginalThreshold && fixedValues) { if (marginalThreshold && fixedValues) {