Skip to content

Minor fixes in eo::ite and define docs.#129

Merged
ajreynol merged 21 commits intocvc5:mainfrom
Mallku2:main
Apr 8, 2025
Merged

Minor fixes in eo::ite and define docs.#129
ajreynol merged 21 commits intocvc5:mainfrom
Mallku2:main

Conversation

@Mallku2
Copy link
Copy Markdown
Collaborator

@Mallku2 Mallku2 commented Apr 8, 2025

The simple fix in eo::ite is more important.

Comment thread user_manual.md Outdated
The Eunoia language contains further commands for declaring symbols that are not standard SMT-LIB version 3.0:

- `(define <symbol> (<typed-param>*) <term> <attr>*)`, defines `<symbol>` to be a lambda term whose arguments and body are given by the command, or the body if the argument list is empty. Note that in contrast to the SMT-LIB command `define-fun`, a return type is not provided. The provided attributes may instruct the checker to perform e.g. type checking on the given term see [type checking define](#tcdefine).
- `(define <symbol> (<typed-param>*) <term> <attr>*)`, defines `<symbol>` to be a lambda term whose arguments and body are given by the command, or just an arbitrary term defined by provided the body, if the argument list is empty (i.e., it can be even a non-function term). Note that in contrast to the SMT-LIB command `define-fun`, a return type is not provided.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Suggested change
- `(define <symbol> (<typed-param>*) <term> <attr>*)`, defines `<symbol>` to be a lambda term whose arguments and body are given by the command, or just an arbitrary term defined by provided the body, if the argument list is empty (i.e., it can be even a non-function term). Note that in contrast to the SMT-LIB command `define-fun`, a return type is not provided.
- `(define <symbol> (<typed-param>*) <term> <attr>*)`, defines `<symbol>` to be a lambda term whose arguments and body are given by the command, or just an arbitrary term defined by provided the body, if the argument list is empty (i.e., it may be a non-function term). Note that in contrast to the SMT-LIB command `define-fun`, a return type is not provided.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Fixed

Comment thread user_manual.md Outdated

- `(define <symbol> (<typed-param>*) <term> <attr>*)`, defines `<symbol>` to be a lambda term whose arguments and body are given by the command, or the body if the argument list is empty. Note that in contrast to the SMT-LIB command `define-fun`, a return type is not provided. The provided attributes may instruct the checker to perform e.g. type checking on the given term see [type checking define](#tcdefine).
- `(define <symbol> (<typed-param>*) <term> <attr>*)`, defines `<symbol>` to be a lambda term whose arguments and body are given by the command, or just an arbitrary term defined by provided the body, if the argument list is empty (i.e., it can be even a non-function term). Note that in contrast to the SMT-LIB command `define-fun`, a return type is not provided.
<!-- Are there other attributes that can be provided? -->
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

There is a possible addition :is_eq that I proposed in another PR.

Comment thread user_manual.md Outdated
@ajreynol
Copy link
Copy Markdown
Member

ajreynol commented Apr 8, 2025

Thanks for the PR, LGTM.

@ajreynol ajreynol merged commit 5e09d99 into cvc5:main Apr 8, 2025
10 checks passed
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

Successfully merging this pull request may close these issues.

2 participants