getValue(); $messageValue = $message->getValue(); $logZ = GaussianDistribution::logProductNormalization($marginal, $messageValue); $variable->setValue(GaussianDistribution::multiply($marginal, $messageValue)); return $logZ; } public function createVariableToMessageBinding(Variable $variable): Message { $newDistribution = GaussianDistribution::fromPrecisionMean(0, 0); return parent::createVariableToMessageBindingWithMessage($variable, new Message( $newDistribution, sprintf('message from %s to %s', $this, $variable))); } }