lean4-htt/src/Lean/Elab
Henrik Böving 142874d863
feat: bv_decide lower ||| to &&& and add and_eq_allOnes (#6741)
This PR implements two rules for bv_decide's preprocessor, lowering
`|||` to `&&&` in order to enable more term sharing + application of
rules about `&&&` as well as rewrites of the form `(a &&& b == -1#w) =
(a == -1#w && b == -1#w)` in order to preserve rewriting behavior that
already existed before this lowering.
2025-02-03 22:10:31 +00:00
..
Deriving feat: upstream ToExpr deriving handler from Mathlib (#6473) 2024-12-31 15:11:53 +00:00
InfoTree feat: labeled and unique sorries (#5757) 2024-12-11 23:53:02 +00:00
PreDefinition feat: asynchronous code generation (#6770) 2025-02-03 17:17:18 +00:00
Quotation
Tactic feat: bv_decide lower ||| to &&& and add and_eq_allOnes (#6741) 2025-02-03 22:10:31 +00:00
App.lean feat: refactor of find functions on List/Array/Vector (#6833) 2025-01-30 01:14:21 +00:00
Arg.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
Attributes.lean
AutoBound.lean doc: fix option name (#5150) 2024-08-25 07:16:44 +00:00
AuxDef.lean chore: fix spelling mistakes in src/Lean/Elab/ (#5435) 2024-09-23 21:58:16 +00:00
BinderPredicates.lean
Binders.lean feat: localize universe metavariable errors at let bindings and fun binders (#5402) 2024-09-24 05:30:42 +00:00
BindersUtil.lean
BuiltinCommand.lean refactor: move registration of namespaces on kernel add into elaborator (#6214) 2025-01-18 23:01:29 +00:00
BuiltinEvalCommand.lean chore: remove unused deriving handler argument syntax (#5265) 2024-11-01 22:41:38 +00:00
BuiltinNotation.lean feat: labeled and unique sorries (#5757) 2024-12-11 23:53:02 +00:00
BuiltinTerm.lean feat: use new structInstFields parser to tag structure instance fields 2024-11-19 09:26:58 +01:00
Calc.lean chore: add missing diff-exposing in type/value mismatch errors (#6484) 2024-12-31 17:47:12 +00:00
CheckTactic.lean chore: add missing diff-exposing in type/value mismatch errors (#6484) 2024-12-31 17:47:12 +00:00
Command.lean feat: align List/Array/Vector.zip/zipWith/zipWithAll/unzip (#6840) 2025-01-29 07:58:17 +00:00
ComputedFields.lean refactor: Split Constructions module (#4656) 2024-07-05 08:25:44 +00:00
Config.lean
Declaration.lean feat: allow structure in mutual blocks (#6125) 2024-11-22 09:20:07 +00:00
DeclarationRange.lean refactor: nicer modifiers/ranges API (#5788) 2024-10-23 09:21:50 +00:00
DeclModifiers.lean chore: move MessageData.ofConstName earlier (#5877) 2024-10-29 21:23:51 +00:00
DeclNameGen.lean refactor: more idiomatic syntax for if h: (#5567) 2024-10-01 15:23:54 +00:00
DeclUtil.lean feat: localize universe metavariable errors at let bindings and fun binders (#5402) 2024-09-24 05:30:42 +00:00
DefView.lean feat: prop instance yields theorems (#5856) 2024-11-08 18:18:10 +00:00
Deriving.lean feat: upstream ToExpr deriving handler from Mathlib (#6473) 2024-12-31 15:11:53 +00:00
Do.lean chore: avoid runtime array bounds checks (#6134) 2024-11-21 05:04:52 +00:00
ElabRules.lean
Eval.lean
Exception.lean
Extra.lean feat: labeled and unique sorries (#5757) 2024-12-11 23:53:02 +00:00
Frontend.lean feat: lean --error=kind (#6362) 2024-12-14 01:31:14 +00:00
GenInjective.lean
GuardMsgs.lean feat: do not propagate pretty printer errors through messages (#3696) 2024-12-11 04:10:09 +00:00
Import.lean feat: lean --src-deps (#6427) 2025-01-13 16:00:19 +00:00
Inductive.lean feat: allow structure in mutual blocks (#6125) 2024-11-22 09:20:07 +00:00
InfoTree.lean
InheritDoc.lean feat: @[builtin_doc] attribute (part 2) (#3918) 2024-09-13 08:05:10 +00:00
LetRec.lean chore: avoid runtime array bounds checks (#6134) 2024-11-21 05:04:52 +00:00
Level.lean chore: rename Array.back to back! (#5897) 2024-10-31 09:18:18 +00:00
Macro.lean
MacroArgUtil.lean
MacroRules.lean
Match.lean chore: avoid runtime array bounds checks (#6134) 2024-11-21 05:04:52 +00:00
MatchAltView.lean
MatchExpr.lean
Mixfix.lean
MutualDef.lean feat: labeled and unique sorries (#5757) 2024-12-11 23:53:02 +00:00
MutualInductive.lean feat: rename Array.setD to setIfInBounds (#6195) 2024-11-24 08:54:19 +00:00
Notation.lean chore: use Array.findFinIdx? where it is better than findIdx? (#6184) 2024-11-23 07:22:31 +00:00
Open.lean chore: avoid runtime array bounds checks (#6134) 2024-11-21 05:04:52 +00:00
ParseImportsFast.lean feat: align take/drop/extract across List/Array/Vector (#6860) 2025-01-30 01:24:25 +00:00
PatternVar.lean fix: propagate Simp.Config when reducing terms and checking definitional equality in simp (#6123) 2024-12-14 00:59:40 +00:00
PreDefinition.lean feat: generate f.eq_unfold lemmas (#5141) 2024-08-29 16:47:40 +00:00
Print.lean chore: in #print for structures, mention 'field notation' (#6406) 2024-12-17 02:21:03 +00:00
Quotation.lean feat: Array.insertIdx/eraseIdx take a tactic-provided proof (#6133) 2024-11-20 09:52:38 +00:00
RecAppSyntax.lean chore: fix spelling mistakes in src/Lean/Elab/ (#5435) 2024-09-23 21:58:16 +00:00
RecommendedSpelling.lean feat: recommended_spelling command (#6869) 2025-02-03 11:15:52 +00:00
SetOption.lean
StructInst.lean feat: align List/Array/Vector.zip/zipWith/zipWithAll/unzip (#6840) 2025-01-29 07:58:17 +00:00
Structure.lean feat: split Lean.Kernel.Environment from Lean.Environment (#5145) 2025-01-18 18:42:57 +00:00
Syntax.lean chore: avoid runtime array bounds checks (#6134) 2024-11-21 05:04:52 +00:00
SyntheticMVars.lean chore: avoid runtime array bounds checks (#6134) 2024-11-21 05:04:52 +00:00
Tactic.lean feat: builtin as_aux_lemma tactic and tree_tac simp attribute (#6823) 2025-02-03 08:34:29 +00:00
Term.lean fix: propagate Simp.Config when reducing terms and checking definitional equality in simp (#6123) 2024-12-14 00:59:40 +00:00
Time.lean chore: upstream #time command (#5044) 2024-08-15 00:17:48 +00:00
Util.lean