-
-
Notifications
You must be signed in to change notification settings - Fork 36
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
test-->>∃ #:steps n passes test if n > than the number of actual reduction steps for a term. #241
Comments
This isn't a complete program so I'm not entirely sure what you mean, but here are two examples, one where it finishes in the bound and one where it doesn't and I see the expected results.
namely:
|
I should have explained better. ->* is the compatible closure for the language. My point here is that if the reduction steps are less than the mentioned steps in #:steps, even then However, my thought was if we could have tests passing when the reduction steps |
Can you supply some working code to better illustrate what you mean, please? |
The steps argument is more of an upper-bound to avoid running for a long time than it is to count an exact number of steps. One complexity of adding one is that these relations don't necessarily have exactly one way to reduce each term so we'd have to define something that makes sense for such relations too. |
I noticed in the redex reference that the default #:steps value is 1000.
However, would it be useful if this specific case maybe fails since the reduction
require much smaller number of steps.
(test-->>∃ #:steps 8 ->* (term (λ (x : Nat) (car (cons (+ 1 2) 2)))) (term (λ (x : Nat) 3)))
The text was updated successfully, but these errors were encountered: