lean4-htt/src/Lean/Meta
Joe Hendrix 01104cc81e
chore: bool and prop lemmas for Mathlib compatibility and improved confluence (#3508)
This adds a number of lemmas for simplification of `Bool` and `Prop`
terms. It pulls lemmas from Mathlib and adds additional lemmas where
confluence or consistency suggested they are needed.

It has been tested against Mathlib using some automated test
infrastructure.

That testing module is not yet included in this PR, but will be included
as part of this.

Note. There are currently some comments saying the origin of the simp
rule. These will be removed prior to merging, but are added to clarify
where the rule came from during review.

---------

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
2024-03-04 23:56:30 +00:00
..
Match chore: missing double backticks (#3587) 2024-03-04 03:02:35 +00:00
Tactic feat: simprocs for folding numeric literals (#3586) 2024-03-04 02:51:04 +00:00
AbstractMVars.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
AbstractNestedProofs.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
ACLt.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
AppBuilder.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Basic.lean feat: monadic match_expr 2024-03-01 22:33:14 -08:00
Check.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
CheckTactic.lean chore: bool and prop lemmas for Mathlib compatibility and improved confluence (#3508) 2024-03-04 23:56:30 +00:00
Closure.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Coe.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
CoeAttr.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
CollectFVars.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
CollectMVars.lean chore: upstream solve_by_elim (#3408) 2024-02-21 01:16:04 +00:00
CompletionName.lean fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
CongrTheorems.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Constructions.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
CtorRecognizer.lean fix: regression on match expressions with builtin literals (#3521) 2024-02-27 18:49:44 +00:00
DecLevel.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
DiscrTree.lean chore: rename isNatLit => isRawNatLit 2024-02-23 15:16:12 -08:00
DiscrTreeTypes.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Eqns.lean fix: simp? suggests generated equations lemma names (#3573) 2024-03-02 23:59:35 +00:00
Eval.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
ExprDefEq.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
ExprLens.lean doc: fix typos (#3543) 2024-02-29 13:23:19 +00:00
ExprTraverse.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
ForEachExpr.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
FunInfo.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
GeneralizeTelescope.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
GeneralizeVars.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
GetUnfoldableConst.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
GlobalInstances.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
IndPredBelow.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Inductive.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
InferType.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Injective.lean fix: bug at elimOptParam (#3595) 2024-03-04 23:56:00 +00:00
Instances.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Iterator.lean chore: address copyright inconsistencies (#3448) 2024-02-22 06:23:50 -08:00
KAbstract.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
KExprMap.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
LazyDiscrTree.lean chore: isNatLit => isRawNatLit 2024-02-23 15:18:30 -08:00
LevelDefEq.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
LitValues.lean chore: use let_expr to cleanup code 2024-03-02 10:07:15 -08:00
Match.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
MatchUtil.lean fix: regression on match expressions with builtin literals (#3521) 2024-02-27 18:49:44 +00:00
Offset.lean feat: simprocs for folding numeric literals (#3586) 2024-03-04 02:51:04 +00:00
PPGoal.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
RecursorInfo.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Reduce.lean chore: rename isNatLit => isRawNatLit 2024-02-23 15:16:12 -08:00
ReduceEval.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
SizeOf.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
SynthInstance.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
Tactic.lean chore: upstream solve_by_elim (#3408) 2024-02-21 01:16:04 +00:00
Transform.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
TransparencyMode.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
UnificationHint.lean perf: add prelude to all Lean modules 2024-02-18 14:55:17 -08:00
WHNF.lean fix: regression on match expressions with builtin literals (#3521) 2024-02-27 18:49:44 +00:00