diff --git a/gtsam/hybrid/HybridBayesNet.cpp b/gtsam/hybrid/HybridBayesNet.cpp index fd1d24722..59dfd809d 100644 --- a/gtsam/hybrid/HybridBayesNet.cpp +++ b/gtsam/hybrid/HybridBayesNet.cpp @@ -311,9 +311,11 @@ AlgebraicDecisionTree HybridBayesNet::logProbability( return leaf_value + logProbability; }); } else if (auto dc = conditional->asDiscrete()) { - // TODO(dellaert): if discrete, we need to add logProbability in the right - // branch? - continue; + // If discrete, add the discrete logProbability in the right branch + result = result.apply( + [dc](const Assignment &assignment, double leaf_value) { + return leaf_value + dc->logProbability(DiscreteValues(assignment)); + }); } }