Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

@rule .... (m_out :: PointMass,) and @rule .... (q_out :: PointMass,) are identical but should both be defined #312

Open
wouterwln opened this issue Apr 24, 2023 · 1 comment

Comments

@wouterwln
Copy link
Member

When defining rules around a node where a PointMass distribution comes in, we default to @rule .... (q_out :: PointMass,) even if the prior is conjugate. Therefore when defining a new node, even when we use message passing, as user will probably first define @rule .... (q_out :: PointMass,) and then get an error message saying that @rule .... (q_out :: PointMass,) is not defined, even though these rules are identical.

@bvdmitri
Copy link
Member

We might have had already opened an issue about that before. It is true that the implementation is suboptimal and requires both rule to be defined, even though they are indeed identical. The idea was that the rules where all arguments are of type PointMass could be pre-regenerated in the @node macro. But we decided not to approach it and perhaps instead rework the @rule macro and message update rules such that it is no longer needed. For now the workaround is to define both rules.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants