-
Notifications
You must be signed in to change notification settings - Fork 33
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
Not_found
exception while printing models
#854
Comments
bclement-ocp
added a commit
to bclement-ocp/alt-ergo
that referenced
this issue
Oct 3, 2023
When printing models, we can end up with class representatives that are not actually in the model. This can happen if a class representative is a defined constant, but also if it is an intermediate fresh constant introduced by the solver (!kXXX). This is because, in a class containing only uninterpreted terms, the representative will be the minimum term, independently of whether it is defined or fresh. This patch records and adds such terms to the `values` table as a (named) `Abstract` constant. This ensures that the same abstract value is used for all uses of a given constant. Fixes OCamlPro#854
bclement-ocp
added a commit
to bclement-ocp/alt-ergo
that referenced
this issue
Oct 3, 2023
When printing models, we can end up with class representatives that are not actually in the model. This can happen if a class representative is a defined constant, but also if it is an intermediate fresh constant introduced by the solver (!kXXX). This is because, in a class containing only uninterpreted terms, the representative will be the minimum term, independently of whether it is defined or fresh. This patch records and adds such terms to the `values` table as a (named) `Abstract` constant. This ensures that the same abstract value is used for all uses of a given constant. Note that this bug affects version 2.5.1, and we changed the way abstract values are printed since the release. The patch is written to be easy to backport. Fixes OCamlPro#854
bclement-ocp
added a commit
to bclement-ocp/alt-ergo
that referenced
this issue
Oct 3, 2023
When printing models, we can end up with class representatives that are not actually in the model. This can happen if a class representative is a defined constant, but also if it is an intermediate fresh constant introduced by the solver (!kXXX). This is because, in a class containing only uninterpreted terms, the representative will be the minimum term, independently of whether it is defined or fresh. This patch records and adds such terms to the `values` table as a (named) `Abstract` constant. This ensures that the same abstract value is used for all uses of a given constant. This is backported from 8b3d668 for branch 2.5.x. Fixes OCamlPro#854
bclement-ocp
added a commit
that referenced
this issue
Oct 4, 2023
When printing models, we can end up with class representatives that are not actually in the model. This can happen if a class representative is a defined constant, but also if it is an intermediate fresh constant introduced by the solver (!kXXX). This is because, in a class containing only uninterpreted terms, the representative will be the minimum term, independently of whether it is defined or fresh. This patch records and adds such terms to the `values` table as a (named) `Abstract` constant. This ensures that the same abstract value is used for all uses of a given constant. Note that this bug affects version 2.5.1, and we changed the way abstract values are printed since the release. The patch is written to be easy to backport. Fixes #854
bclement-ocp
added a commit
to bclement-ocp/alt-ergo
that referenced
this issue
Oct 4, 2023
When printing models, we can end up with class representatives that are not actually in the model. This can happen if a class representative is a defined constant, but also if it is an intermediate fresh constant introduced by the solver (!kXXX). This is because, in a class containing only uninterpreted terms, the representative will be the minimum term, independently of whether it is defined or fresh. This patch records and adds such terms to the `values` table as a (named) `Abstract` constant. This ensures that the same abstract value is used for all uses of a given constant. This is backported from a0575d2 for branch 2.5.x. Fixes OCamlPro#854
bclement-ocp
added a commit
to bclement-ocp/alt-ergo
that referenced
this issue
Oct 4, 2023
When printing models, we can end up with class representatives that are not actually in the model. This can happen if a class representative is a defined constant, but also if it is an intermediate fresh constant introduced by the solver (!kXXX). This is because, in a class containing only uninterpreted terms, the representative will be the minimum term, independently of whether it is defined or fresh. This patch records and adds such terms to the `values` table as a (named) `Abstract` constant. This ensures that the same abstract value is used for all uses of a given constant. This is backported from a0575d2 for branch 2.5.x. Fixes OCamlPro#854
Halbaroth
pushed a commit
that referenced
this issue
Oct 4, 2023
When printing models, we can end up with class representatives that are not actually in the model. This can happen if a class representative is a defined constant, but also if it is an intermediate fresh constant introduced by the solver (!kXXX). This is because, in a class containing only uninterpreted terms, the representative will be the minimum term, independently of whether it is defined or fresh. This patch records and adds such terms to the `values` table as a (named) `Abstract` constant. This ensures that the same abstract value is used for all uses of a given constant. This is backported from a0575d2 for branch 2.5.x. Fixes #854
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Initially reported by Claude Marché using Alt-Ergo 2.5.1, still present in
next
currentlyThe text was updated successfully, but these errors were encountered: