This PR sets up the new integrated test/bench suite. It then migrates all benchmarks and some related tests to the new suite. There's also some documentation and some linting. For now, a lot of the old tests are left alone so this PR doesn't become even larger than it already is. Eventually, all tests should be migrated to the new suite though so there isn't a confusing mix of two systems.
159 lines
5.8 KiB
Text
159 lines
5.8 KiB
Text
guessLexFailures.lean:9:4-9:18: error: fail to show termination for
|
|
nonTerminating
|
|
with errors
|
|
failed to infer structural recursion:
|
|
Cannot use parameter #1:
|
|
failed to eliminate recursive application
|
|
nonTerminating n.succ m.succ
|
|
Cannot use parameter #2:
|
|
failed to eliminate recursive application
|
|
nonTerminating n.succ m.succ
|
|
|
|
|
|
Could not find a decreasing measure.
|
|
The basic measures relate at each recursive call as follows:
|
|
(<, ≤, =: relation proved, ? all proofs failed, _: no proof attempted)
|
|
x1 x2
|
|
1) 11:12-46 ? ?
|
|
Please use `termination_by` to specify a decreasing measure.
|
|
guessLexFailures.lean:15:0-18:31: error: Could not find a decreasing measure.
|
|
The basic measures relate at each recursive call as follows:
|
|
(<, ≤, =: relation proved, ? all proofs failed, _: no proof attempted)
|
|
x1 x2
|
|
1) 17:12-47 ? ?
|
|
Please use `termination_by` to specify a decreasing measure.
|
|
guessLexFailures.lean:20:4-20:15: error: fail to show termination for
|
|
noArguments
|
|
with errors
|
|
failed to infer structural recursion:
|
|
no parameters suitable for structural recursion
|
|
|
|
well-founded recursion cannot be used, `noArguments` does not take any (non-fixed) arguments
|
|
guessLexFailures.lean:22:4-22:23: error: fail to show termination for
|
|
noNonFixedArguments
|
|
with errors
|
|
failed to infer structural recursion:
|
|
Not considering parameter n of noNonFixedArguments:
|
|
it is unchanged in the recursive calls
|
|
no parameters suitable for structural recursion
|
|
|
|
well-founded recursion cannot be used, `noNonFixedArguments` does not take any (non-fixed) arguments
|
|
guessLexFailures.lean:27:0-33:31: error: Could not find a decreasing measure.
|
|
The basic measures relate at each recursive call as follows:
|
|
(<, ≤, =: relation proved, ? all proofs failed, _: no proof attempted)
|
|
n m l
|
|
1) 29:6-25 = = =
|
|
2) 30:6-23 = < _
|
|
3) 31:6-23 < _ _
|
|
Please use `termination_by` to specify a decreasing measure.
|
|
guessLexFailures.lean:37:0-43:31: error: Could not find a decreasing measure.
|
|
The basic measures relate at each recursive call as follows:
|
|
(<, ≤, =: relation proved, ? all proofs failed, _: no proof attempted)
|
|
n m x3
|
|
1) 39:6-27 = = =
|
|
2) 40:6-25 = < _
|
|
3) 41:6-25 < _ _
|
|
Please use `termination_by` to specify a decreasing measure.
|
|
guessLexFailures.lean:48:0-54:31: error: Could not find a decreasing measure.
|
|
The basic measures relate at each recursive call as follows:
|
|
(<, ≤, =: relation proved, ? all proofs failed, _: no proof attempted)
|
|
n m l
|
|
1) 50:6-25 = = =
|
|
2) 51:6-23 = < _
|
|
3) 52:6-23 < _ _
|
|
Please use `termination_by` to specify a decreasing measure.
|
|
guessLexFailures.lean:59:6-59:7: error: fail to show termination for
|
|
Mutual.f
|
|
Mutual.g
|
|
Mutual.h
|
|
with errors
|
|
failed to infer structural recursion:
|
|
Not considering parameter fixed of Mutual.f:
|
|
it is unchanged in the recursive calls
|
|
Not considering parameter fixed of Mutual.g:
|
|
it is unchanged in the recursive calls
|
|
Not considering parameter fixed of Mutual.h:
|
|
it is unchanged in the recursive calls
|
|
Too many possible combinations of parameters of type Nat (or please indicate the recursive argument explicitly using `termination_by structural`).
|
|
Skipping arguments of type True, as Mutual.f has no compatible argument.
|
|
|
|
|
|
Could not find a decreasing measure.
|
|
The basic measures relate at each recursive call as follows:
|
|
(<, ≤, =: relation proved, ? all proofs failed, _: no proof attempted)
|
|
Call from Mutual.f to Mutual.f at 61:8-33:
|
|
n m l
|
|
= = =
|
|
Call from Mutual.f to Mutual.f at 62:8-31:
|
|
n m l
|
|
= < <
|
|
Call from Mutual.f to Mutual.g at 63:8-39:
|
|
n m l
|
|
n < ? ?
|
|
m ? = ?
|
|
l ? ? <
|
|
Call from Mutual.g to Mutual.g at 68:8-35:
|
|
n m l
|
|
? ? =
|
|
Call from Mutual.g to Mutual.g at 69:8-33:
|
|
n m l
|
|
_ _ <
|
|
Call from Mutual.g to Mutual.h at 70:8-27:
|
|
n m l
|
|
n _ _ ?
|
|
m _ _ ?
|
|
Call from Mutual.h to Mutual.f at 75:8-33:
|
|
n m
|
|
n _ _
|
|
m _ _
|
|
l _ _
|
|
Call from Mutual.h to Mutual.h at 76:8-27:
|
|
n m
|
|
_ _
|
|
Call from Mutual.h to Mutual.h at 77:8-27:
|
|
n m
|
|
_ _
|
|
|
|
Please use `termination_by` to specify a decreasing measure.
|
|
guessLexFailures.lean:87:4-87:5: error: fail to show termination for
|
|
DuplicatedCall.f
|
|
with errors
|
|
failed to infer structural recursion:
|
|
Cannot use parameter #1:
|
|
failed to eliminate recursive application
|
|
DuplicatedCall.f (n + 2) (m + 1)
|
|
Cannot use parameter #2:
|
|
failed to eliminate recursive application
|
|
DuplicatedCall.f (n + 2) (m + 1)
|
|
|
|
|
|
Could not find a decreasing measure.
|
|
The basic measures relate at each recursive call as follows:
|
|
(<, ≤, =: relation proved, ? all proofs failed, _: no proof attempted)
|
|
n m
|
|
1) 89:19-32 ? ?
|
|
Please use `termination_by` to specify a decreasing measure.
|
|
guessLexFailures.lean:100:0-103:31: error: Could not find a decreasing measure.
|
|
The basic measures relate at each recursive call as follows:
|
|
(<, ≤, =: relation proved, ? all proofs failed, _: no proof attempted)
|
|
n m
|
|
1) 101:83-105 ? ?
|
|
Please use `termination_by` to specify a decreasing measure.
|
|
guessLexFailures.lean:113:14-113:31: error: failed to prove termination, possible solutions:
|
|
- Use `have`-expressions to prove the remaining goals
|
|
- Use `termination_by` to specify a different well-founded relation
|
|
- Use `decreasing_by` to specify your own tactic for discharging this kind of goal
|
|
n✝ m n : Nat
|
|
⊢ n < n✝
|
|
guessLexFailures.lean:119:0-123:31: error: Could not find a decreasing measure.
|
|
The basic measures relate at each recursive call as follows:
|
|
(<, ≤, =: relation proved, ? all proofs failed, _: no proof attempted)
|
|
n m
|
|
1) 121:31-54 ? ?
|
|
Please use `termination_by` to specify a decreasing measure.
|
|
guessLexFailures.lean:131:14-131:31: error: failed to prove termination, possible solutions:
|
|
- Use `have`-expressions to prove the remaining goals
|
|
- Use `termination_by` to specify a different well-founded relation
|
|
- Use `decreasing_by` to specify your own tactic for discharging this kind of goal
|
|
n✝ m n : Nat
|
|
⊢ n < n✝
|