lean4-htt/src/Lean/Meta
Kyle Miller f1707117f0
feat: conv arg now can access more arguments (#5894)
Specializes the congr lemma generated for the `arg` conv tactic to only
rewrite the chosen argument. This makes it much more likely that the
chosen argument is able to be accessed.

Lets `arg` access the domain and codomain of pi types via `arg 1` and
`arg 2` in more situations. Upstreams `pi_congr` for this from mathlib.

Adds a negative indexing option, where `arg -2` accesses the
second-to-last argument for example, making the behavior of `lhs`
available to `arg`. This works for `enter` as well.

Other improvement: when there is an error in the `enter [...]` tactic,
individual locations get underlined with the error. The tactic info now
also is like `rw`, so you can see the intermediate conv states.

Closes #5871
2024-11-01 02:12:14 +00:00
..
ArgsPacker chore: fix spelling mistakes in src/Lean/Meta/ (#5436) 2024-09-23 23:09:14 +00:00
Constructions chore: fix spelling mistakes in src/Lean/Meta/ (#5436) 2024-09-23 23:09:14 +00:00
Match chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
Tactic fix: FunInd: unfold aux definitions more carefully (#5904) 2024-10-31 18:04:36 +00:00
AbstractMVars.lean chore: switch to Std.HashMap and Std.HashSet almost everywhere 2024-08-07 18:24:42 +02:00
AbstractNestedProofs.lean
ACLt.lean refactor: more idiomatic syntax for if h: (#5567) 2024-10-01 15:23:54 +00:00
AppBuilder.lean fix: FunInd: withLetDecl and mkLetVar don’t mix (#5803) 2024-10-22 10:15:14 +00:00
ArgsPacker.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
Basic.lean feat: better #eval command (#5627) 2024-10-08 20:51:46 +00:00
Canonicalizer.lean chore: deprecate Lean.HashMap and Lean.HashSet (#4954) 2024-08-08 12:46:10 +00:00
Check.lean fix: prevent addPPExplicitToExposeDiff from assigning metavariables (#5276) 2024-10-28 22:51:41 +00:00
CheckTactic.lean
Closure.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
Coe.lean
CoeAttr.lean
CollectFVars.lean
CollectMVars.lean chore: cleanup after export Bool.and/or/not/xor 2024-09-16 12:45:51 +10:00
CompletionName.lean chore: fix spelling mistakes in src/Lean/Meta/ (#5436) 2024-09-23 23:09:14 +00:00
CongrTheorems.lean feat: conv arg now can access more arguments (#5894) 2024-11-01 02:12:14 +00:00
Constructions.lean refactor: Split Constructions module (#4656) 2024-07-05 08:25:44 +00:00
CtorRecognizer.lean feat: allow users to disable simpCtorEq simproc (#5167) 2024-08-26 13:51:21 +00:00
DecLevel.lean chore: missing registerTraceClass (#4369) 2024-06-06 00:53:16 +00:00
Diagnostics.lean feat: make it possible to use dot notation in m! strings (#5857) 2024-10-27 22:55:29 +00:00
DiscrTree.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
DiscrTreeTypes.lean
Eqns.lean chore: fix spelling mistakes in src/Lean/Meta/ (#5436) 2024-09-23 23:09:14 +00:00
Eval.lean fix: collect level parameters in evalExpr (#3090) 2024-09-27 11:55:33 +02:00
ExprDefEq.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
ExprLens.lean
ExprTraverse.lean
ForEachExpr.lean
FunInfo.lean fix: getFunInfo, inferType to use withAtLeastTransparency, not withTransparency (#5563) 2024-10-04 13:04:35 +00:00
GeneralizeTelescope.lean
GeneralizeVars.lean
GetUnfoldableConst.lean
GlobalInstances.lean
IndPredBelow.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
Inductive.lean
InferType.lean fix: bring elaborator in line with kernel for primitive projections (#5822) 2024-10-31 03:16:52 +00:00
Injective.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
Instances.lean fix: upgrade instance synth order issues to hard errors (#5399) 2024-10-08 23:29:59 +00:00
Iterator.lean chore: fix spelling mistakes in src/Lean/Meta/ (#5436) 2024-09-23 23:09:14 +00:00
KAbstract.lean
KExprMap.lean chore: switch to Std.HashMap and Std.HashSet almost everywhere 2024-08-07 18:24:42 +02:00
LazyDiscrTree.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
LevelDefEq.lean
LitValues.lean chore: cleanup imports (#5825) 2024-10-23 23:51:13 +00:00
Match.lean
MatchUtil.lean
NatInstTesters.lean
Offset.lean chore: cleanup imports (#5825) 2024-10-23 23:51:13 +00:00
PPGoal.lean fix: have Lean.Meta.ppGoal use hard newlines (#5640) 2024-10-08 17:36:08 +00:00
PProdN.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
RecursorInfo.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
Reduce.lean refactor: more idiomatic syntax for if h: (#5567) 2024-10-01 15:23:54 +00:00
ReduceEval.lean
SizeOf.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
Structure.lean
SynthInstance.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
Tactic.lean
Transform.lean feat: decide! tactic for using kernel reduction (#5665) 2024-10-11 06:40:57 +00:00
TransparencyMode.lean
UnificationHint.lean
WHNF.lean feat: rename Array.shrink to take, and relate to List.take (#5796) 2024-10-21 23:35:32 +00:00