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

Create a custom ADT for Th_util.answer #1304

Open
wants to merge 2 commits into
base: next
Choose a base branch
from

Conversation

Halbaroth
Copy link
Collaborator

An option type is not self-documenting code.

An option type is not self-documenting code.
Copy link
Collaborator

@bclement-ocp bclement-ocp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! This makes things more readable. Please update the comments on Th_util.answer to be reworked a bit for clarity and correctness (see inline comments) and we should be good to merge.

Comment on lines 37 to 39
(** One does not encounter a contradiction when assuming the negation of the
literal. It does not imply that the literal is false in the environment,
as the decision procedures might be incomplete. *)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This comment seems misleading — even with a complete decision procedure, if a literal is not entailed, it does not imply that its negation is entailed (there might be models where the literal is true and other models where it is false).

Incompleteness means that the literal might still be entailed even though we were not able to prove that, so I'd suggest something along the line of:

The theory couldn't prove that the literal is entailed by the current environment. This might mean one of several things:

  • The negation of the literal is entailed by the current environment, or

  • The truth value of the literal is independent of the current environment (it is true in some models and false in other models), or

  • The literal is entailed by the current environment but we failed to prove so (in which case the decision procedure used is incomplete).

Comment on lines 32 to 33
- The explanation [ex] justifies why the literal holds in the
environment.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be worth insisting here that this means:

  • ex holds in the current environment
  • ex => lit is a tautology

@Halbaroth Halbaroth requested a review from bclement-ocp March 5, 2025 13:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants