lean4-htt/src/Lean
Joachim Breitner 022b2e4d96
refactor: termination arguments as Expr, not Syntax (#3658)
Before, the termination argument as inferred by `GuessLex` was passed
further
on as `Syntax`, to be elaborated later in `WF.Rel`.

This didn’t feel quite right anymore. In particular if we want to teach
`GuessLex` about guessing more complex termination arguments like
`xs.size -
i`, using `Expr` here is more natural.

So this introduces `TerminationArgument` based on an `Expr` to be used
here.

A side-effect of how the termination arguments are elaborated is that
the unused
variables linter will now look at `termination_by` variables, and that
parameters
past the colon are not even invisibly in scope, so `‹_›` will not find
them
See https://github.com/leanprover-community/mathlib4/pull/11370/files
for examples
of fixing these changes.
2024-03-14 23:51:53 +00:00
..
Compiler fix: regression on match expressions with builtin literals (#3521) 2024-02-27 18:49:44 +00:00
Data fix: jump to correct definition when names overlap (#3656) 2024-03-14 16:21:19 +00:00
Elab refactor: termination arguments as Expr, not Syntax (#3658) 2024-03-14 23:51:53 +00:00
Language feat: snapshot trees and language processors (#3014) 2024-03-14 13:40:08 +00:00
Linter fix: jump to correct definition when names overlap (#3656) 2024-03-14 16:21:19 +00:00
Meta refactor: termination arguments as Expr, not Syntax (#3658) 2024-03-14 23:51:53 +00:00
Parser chore: remove bootstrapping workaround 2024-03-13 21:15:48 -07:00
ParserCompiler perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
PrettyPrinter refactor: termination arguments as Expr, not Syntax (#3658) 2024-03-14 23:51:53 +00:00
Server fix: periodically refresh semantic tokens (#3619) 2024-03-14 17:10:04 +00:00
Util fix: stray dbgTraceVal in trace children elision (#3622) 2024-03-07 09:44:25 +00:00
Widget feat: snapshot trees and language processors (#3014) 2024-03-14 13:40:08 +00:00
Attributes.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
AuxRecursor.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Class.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Compiler.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
CoreM.lean feat: functional induction (#3432) 2024-03-05 13:02:05 +00:00
Data.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Declaration.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
DeclarationRange.lean feat: snapshot trees and language processors (#3014) 2024-03-14 13:40:08 +00:00
DocString.lean chore: upstream solve_by_elim (#3408) 2024-02-21 01:16:04 +00:00
Elab.lean feat: macro expander for match_expr terms 2024-03-01 22:33:14 -08:00
Environment.lean feat: allow duplicate theorems to be imported 2024-03-13 12:57:41 -07:00
Eval.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Exception.lean doc: fix typos (#3543) 2024-02-29 13:23:19 +00:00
Expr.lean fix: fold raw Nat literals at dsimp (#3624) 2024-03-06 18:29:20 +00:00
HeadIndex.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Hygiene.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
ImportingFlag.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
InternalExceptionId.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
KeyedDeclsAttribute.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
LabelAttribute.lean fix: address symm and label bugs from #3408 (#3429) 2024-02-21 07:21:07 +00:00
LazyInitExtension.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Level.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Linter.lean chore: add missing copyright headers (#3411) 2024-02-20 01:49:55 +00:00
LoadDynlib.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
LocalContext.lean chore: upstream omega (#3367) 2024-02-19 00:19:55 +00:00
Log.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Message.lean feat: snapshot trees and language processors (#3014) 2024-03-14 13:40:08 +00:00
Meta.lean fix: add Canonicalizer.lean and use it to canonicalize terms in omega (#3639) 2024-03-12 23:18:56 +00:00
MetavarContext.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Modifiers.lean fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
MonadEnv.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Parser.lean feat: custom error recovery in parser (#3413) 2024-02-21 14:29:54 +00:00
ParserCompiler.lean refactor: Offset.lean and related files (#3614) 2024-03-05 19:40:15 -08:00
PrettyPrinter.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
ProjFns.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
ReducibilityAttrs.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Replay.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
ResolveName.lean fix: allow users to disable builtin simprocs in simp args (#3441) 2024-02-21 20:01:11 +00:00
Runtime.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
ScopedEnvExtension.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Server.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Structure.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
SubExpr.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Syntax.lean refactor: simplify some nomatch with nofun (#3564) 2024-03-02 20:43:31 +00:00
ToExpr.lean fix: ToExpr instance for Fin 2024-02-24 16:08:07 -08:00
Util.lean chore: upstream exact? and apply? from Std (#3447) 2024-02-23 21:55:24 +00:00
Widget.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00