lean4-htt/src/Init
Paul Reichert 6e538c35dd
refactor: migrate all usages of old slice notation (#9000)
This PR replaces all usages of `[:]` slice notation in `src` with the
new `[...]` notation in production code, tests and comments. The
underlying implementation of the `Subarray` functions stays the same.

Notation cheat sheet:

* `*...*` is the doubly-unbounded range.
* `*...a` or `*...<a` contains all elements that are less than `a`.
* `*...=a` contains all elements that are less than or equal to `a`.
* `a...*` contains all elements that are greater than or equal to `a`.
* `a...b` or `a...<b` contains all elements that are greater than or
equal to `a` and less than `b`.
* `a...=b` contains all elements that are greater than or equal to `a`
and less than or equal to `b`.
* `a<...*` contains all elements that are greater than `a`.
* `a<...b` or `a<...<b` contains all elements that are greater than `a`
and less than `b`.
* `a<...=b` contains all elements that are greater than `a` and less
than or equal to `b`.

Benchmarks have shown that importing the iterator-backed parts of the
polymorphic slice library in `Init` impacts build performance. This PR
avoids this problem by separating those parts of the library that do not
rely on iterators from those those that do. Whereever the new slice
notation is used, only the iterator-independent files are imported.
2025-06-27 18:52:07 +00:00
..
Control feat: introduce MonadLiftT Id m (#8977) 2025-06-26 07:33:07 +00:00
Data refactor: migrate all usages of old slice notation (#9000) 2025-06-27 18:52:07 +00:00
Grind feat: assert ToInt bounds in grind cutsat (#9050) 2025-06-27 18:42:35 +00:00
GrindInstances fix: refactor ToInt.OfNat (#9005) 2025-06-26 02:27:15 +00:00
Internal feat: add antitonicity lemmas for (co)inductive predicates (#8940) 2025-06-23 11:02:08 +00:00
Omega chore: remove unused simp args (#8905) 2025-06-20 22:34:30 +00:00
System feat: IO.FS.Stream.readToEnd (#8886) 2025-06-22 15:39:10 +00:00
BinderNameHint.lean feat: do not export def bodies by default (#8221) 2025-05-15 12:16:54 +00:00
BinderPredicates.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
ByCases.lean chore: remove >6 month old deprecations (#8312) 2025-05-13 11:11:22 +00:00
Classical.lean chore: remove unused simp args (#8905) 2025-06-20 22:34:30 +00:00
Coe.lean feat: meta phase restrictions 2025-06-12 16:36:08 +02:00
Control.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
Conv.lean feat: add Meta.letToHave and the let_to_have tactic (#8954) 2025-06-24 01:33:53 +00:00
Core.lean feat: refactor of Lean.Grind.ToInt and remaining instances (#8996) 2025-06-25 13:32:38 +00:00
Data.lean feat: introduce slices (#8947) 2025-06-26 15:29:03 +00:00
Dynamic.lean feat: do not export def bodies by default (#8221) 2025-05-15 12:16:54 +00:00
Ext.lean chore: cleanup grind palindrome test (#8428) 2025-05-21 03:31:56 +00:00
GetElem.lean chore: remove unused simp args (#8905) 2025-06-20 22:34:30 +00:00
Grind.lean feat: infrastructure for cutsat generic ToInt (#9008) 2025-06-26 07:01:19 +00:00
GrindInstances.lean feat: define the CommRing envelope of a CommSemiring (#8835) 2025-06-17 05:39:14 +00:00
Guard.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
Hints.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
Internal.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
MacroTrace.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
Meta.lean feat: extend identifiers to french (#9035) 2025-06-27 12:50:09 +00:00
MetaTypes.lean feat: optimized simp routine for let telescopes (#8968) 2025-06-27 02:13:20 +00:00
Notation.lean feat: meta phase restrictions 2025-06-12 16:36:08 +02:00
NotationExtra.lean refactor: migrate all usages of old slice notation (#9000) 2025-06-27 18:52:07 +00:00
Omega.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
Prelude.lean feat: refactor of Lean.Grind.ToInt and remaining instances (#8996) 2025-06-25 13:32:38 +00:00
PropLemmas.lean chore: remove unused simp args (#8905) 2025-06-20 22:34:30 +00:00
RCases.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
ShareCommon.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
SimpLemmas.lean feat: optimized simp routine for let telescopes (#8968) 2025-06-27 02:13:20 +00:00
Simproc.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
SizeOf.lean refactor: Init: expose lots of functions (#8501) 2025-05-28 07:37:54 +00:00
SizeOfLemmas.lean feat: do not export def bodies by default (#8221) 2025-05-15 12:16:54 +00:00
Syntax.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
System.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
Tactics.lean feat: Hoare logic for monadic programs and verification condition generation (#8995) 2025-06-26 15:49:56 +00:00
TacticsExtra.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
Task.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
Try.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
Util.lean feat: do not export private declarations (#8337) 2025-06-02 08:01:08 +00:00
WF.lean feat: do not export private declarations (#8337) 2025-06-02 08:01:08 +00:00
WFTactics.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00
While.lean feat: enable experimental module system in Init (#8047) 2025-04-23 17:21:33 +00:00