lean4-htt/tests/lean/interactive/completionPrefixIssue.lean.expected.out
Kim Morrison 9e241a4087
fix: revert "split ngen on async elab" (#12148)
This PR reverts #12000, which introduced a regression where `simp`
incorrectly rejects valid rewrites for perm lemmas.

The issue is that `NameGenerator.mkChild` creates names that don't
maintain the ordering assumption used by `acLt` for perm lemma
decisions. For example, after the change:
- Child generator creates names like `_uniq.102.2`
- Parent continues with `_uniq.7`
- But `Name.lt (.num (.num `_uniq 102) 2) (.num `_uniq 7)` is true

This causes fvars created later (in async tasks) to compare as smaller
than fvars created earlier, breaking the assumption that later fvars
compare greater according to `Name.lt`.

Fixes #12136.

🤖 Prepared with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 03:18:24 +00:00

32 lines
972 B
Text

{"textDocument": {"uri": "file:///completionPrefixIssue.lean"},
"position": {"line": 1, "character": 64}}
{"items":
[{"label": "veryLongDefinitionName",
"kind": 6,
"data":
["«external:file:///completionPrefixIssue.lean»", 1, 64, 0, "f_uniq.35"]},
{"label": "veryLongDefinitionNameVeryLongDefinitionName",
"kind": 21,
"data":
["«external:file:///completionPrefixIssue.lean»",
1,
64,
0,
"cveryLongDefinitionNameVeryLongDefinitionName"]}],
"isIncomplete": false}
Resolution of veryLongDefinitionName:
{"label": "veryLongDefinitionName",
"kind": 6,
"detail": "Nat",
"data":
["«external:file:///completionPrefixIssue.lean»", 1, 64, 0, "f_uniq.35"]}
Resolution of veryLongDefinitionNameVeryLongDefinitionName:
{"label": "veryLongDefinitionNameVeryLongDefinitionName",
"kind": 21,
"detail": "Nat",
"data":
["«external:file:///completionPrefixIssue.lean»",
1,
64,
0,
"cveryLongDefinitionNameVeryLongDefinitionName"]}