diff --git a/src/Init.lean b/src/Init.lean index 228c9a4107..5d2c6e571f 100644 --- a/src/Init.lean +++ b/src/Init.lean @@ -42,7 +42,7 @@ public import Init.While public import Init.Syntax public import Init.Internal public import Init.Try -public meta import Init.Try -- make sure `Try.Config` can be evaluated anywhere +public meta import Init.Try -- shake: keep (make sure `Try.Config` can be evaluated anywhere) public import Init.BinderNameHint public import Init.Task public import Init.MethodSpecsSimp diff --git a/src/Init/BinderNameHint.lean b/src/Init/BinderNameHint.lean index 527ff599c5..db8af694c3 100644 --- a/src/Init/BinderNameHint.lean +++ b/src/Init/BinderNameHint.lean @@ -7,7 +7,8 @@ Authors: Joachim Breitner module prelude -public import Init.Tactics +public import Init.Prelude +import Init.Tactics public section diff --git a/src/Init/BinderPredicates.lean b/src/Init/BinderPredicates.lean index 5a72ae29fd..019df5ef12 100644 --- a/src/Init/BinderPredicates.lean +++ b/src/Init/BinderPredicates.lean @@ -6,7 +6,10 @@ Authors: Gabriel Ebner module prelude -public import Init.NotationExtra +public meta import Init.Grind.Tactics +public import Init.Notation +import Init.Meta.Defs +import Init.NotationExtra public section diff --git a/src/Init/ByCases.lean b/src/Init/ByCases.lean index 5f1222c17e..86355c39bc 100644 --- a/src/Init/ByCases.lean +++ b/src/Init/ByCases.lean @@ -6,7 +6,9 @@ Authors: Leonardo de Moura, Mario Carneiro module prelude -public import Init.Classical +public meta import Init.Grind.Tactics +public import Init.Grind.Tactics +import Init.SimpLemmas public section diff --git a/src/Init/Control.lean b/src/Init/Control.lean index fd004d93dd..577a6bd5c1 100644 --- a/src/Init/Control.lean +++ b/src/Init/Control.lean @@ -17,3 +17,4 @@ public import Init.Control.Lawful public import Init.Control.StateCps public import Init.Control.ExceptCps public import Init.Control.MonadAttach +public import Init.Control.EState diff --git a/src/Init/Control/EState.lean b/src/Init/Control/EState.lean index 0549f16f1d..aac17b176c 100644 --- a/src/Init/Control/EState.lean +++ b/src/Init/Control/EState.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.ToString.Basic +public import Init.Control.State public section universe u v diff --git a/src/Init/Control/ExceptCps.lean b/src/Init/Control/ExceptCps.lean index fc64d190fe..37b3b07c7d 100644 --- a/src/Init/Control/ExceptCps.lean +++ b/src/Init/Control/ExceptCps.lean @@ -7,6 +7,7 @@ module prelude public import Init.Control.Lawful.Basic +import Init.SimpLemmas public section diff --git a/src/Init/Control/Id.lean b/src/Init/Control/Id.lean index a87907859a..79e4773363 100644 --- a/src/Init/Control/Id.lean +++ b/src/Init/Control/Id.lean @@ -8,7 +8,6 @@ The identity Monad. module prelude -public import Init.Core public import Init.Control.MonadAttach public section diff --git a/src/Init/Control/Lawful/Basic.lean b/src/Init/Control/Lawful/Basic.lean index 1b5d0421bb..fe66c756fe 100644 --- a/src/Init/Control/Lawful/Basic.lean +++ b/src/Init/Control/Lawful/Basic.lean @@ -6,7 +6,9 @@ Authors: Sebastian Ullrich, Leonardo de Moura, Mario Carneiro module prelude -public import Init.Ext +public import Init.Control.Id +public import Init.Grind.Tactics +import Init.Ext public section diff --git a/src/Init/Control/Lawful/Instances.lean b/src/Init/Control/Lawful/Instances.lean index bd59058c86..ae4ef4b783 100644 --- a/src/Init/Control/Lawful/Instances.lean +++ b/src/Init/Control/Lawful/Instances.lean @@ -12,6 +12,8 @@ public import Init.Control.Option import all Init.Control.Option import all Init.Control.State public import Init.Control.StateRef +public import Init.Control.State +public import Init.Ext public section diff --git a/src/Init/Control/Lawful/Lemmas.lean b/src/Init/Control/Lawful/Lemmas.lean index d62cb38974..4146833a80 100644 --- a/src/Init/Control/Lawful/Lemmas.lean +++ b/src/Init/Control/Lawful/Lemmas.lean @@ -7,7 +7,9 @@ module prelude public import Init.Control.Lawful.Basic -public import Init.ByCases +public import Init.Classical +public import Init.Ext +import Init.ByCases public section diff --git a/src/Init/Control/Lawful/MonadAttach/Instances.lean b/src/Init/Control/Lawful/MonadAttach/Instances.lean index 14908de3d2..814622e006 100644 --- a/src/Init/Control/Lawful/MonadAttach/Instances.lean +++ b/src/Init/Control/Lawful/MonadAttach/Instances.lean @@ -6,9 +6,11 @@ Authors: Paul Reichert module prelude -public import Init.Control.Reader -public import Init.Control.Lawful.Instances import Init.Control.Lawful.MonadAttach.Lemmas +public import Init.Control.Lawful.Basic +public import Init.Control.State +public import Init.Control.StateRef +public import Init.Ext public instance [Monad m] [LawfulMonad m] [MonadAttach m] [WeaklyLawfulMonadAttach m] : WeaklyLawfulMonadAttach (ReaderT ρ m) where diff --git a/src/Init/Control/Lawful/MonadAttach/Lemmas.lean b/src/Init/Control/Lawful/MonadAttach/Lemmas.lean index 291745975d..4d6f253c31 100644 --- a/src/Init/Control/Lawful/MonadAttach/Lemmas.lean +++ b/src/Init/Control/Lawful/MonadAttach/Lemmas.lean @@ -6,10 +6,12 @@ Authors: Paul Reichert module prelude -public import Init.Control.MonadAttach import all Init.Control.MonadAttach -public import Init.Control.Lawful.Lemmas -public import Init.Control.Lawful.MonadLift.Lemmas +public import Init.Classical +public import Init.Control.Lawful.Basic +public import Init.Control.Lawful.MonadLift.Basic +import Init.Control.Lawful.MonadLift.Lemmas +import Init.RCases public theorem LawfulMonadAttach.canReturn_bind_imp' [Monad m] [LawfulMonad m] [MonadAttach m] [LawfulMonadAttach m] diff --git a/src/Init/Control/Lawful/MonadLift/Basic.lean b/src/Init/Control/Lawful/MonadLift/Basic.lean index 60cdcb428c..bd65715fc3 100644 --- a/src/Init/Control/Lawful/MonadLift/Basic.lean +++ b/src/Init/Control/Lawful/MonadLift/Basic.lean @@ -6,7 +6,7 @@ Authors: Quang Dao module prelude -public import Init.Control.Basic +public import Init.Notation public section diff --git a/src/Init/Control/Lawful/MonadLift/Instances.lean b/src/Init/Control/Lawful/MonadLift/Instances.lean index ae1d449c20..7454ed9dc9 100644 --- a/src/Init/Control/Lawful/MonadLift/Instances.lean +++ b/src/Init/Control/Lawful/MonadLift/Instances.lean @@ -14,8 +14,12 @@ import all Init.Control.StateRef public import Init.Control.StateCps import all Init.Control.StateCps import all Init.Control.Id -public import Init.Control.Lawful.MonadLift.Lemmas -public import Init.Control.Lawful.Instances +public import Init.Control.Lawful.MonadLift.Basic +public import Init.Control.Option +public import Init.Control.State +public import Init.Control.StateRef +import Init.Control.Lawful.Instances +import Init.Control.Lawful.MonadLift.Lemmas public section diff --git a/src/Init/Control/Lawful/MonadLift/Lemmas.lean b/src/Init/Control/Lawful/MonadLift/Lemmas.lean index 984cc7868c..4df3e36fd0 100644 --- a/src/Init/Control/Lawful/MonadLift/Lemmas.lean +++ b/src/Init/Control/Lawful/MonadLift/Lemmas.lean @@ -6,9 +6,9 @@ Authors: Quang Dao module prelude -public import Init.Control.Id public import Init.Control.Lawful.Basic public import Init.Control.Lawful.MonadLift.Basic +import Init.Ext public section diff --git a/src/Init/Control/MonadAttach.lean b/src/Init/Control/MonadAttach.lean index 2631404f4a..49d5167b24 100644 --- a/src/Init/Control/MonadAttach.lean +++ b/src/Init/Control/MonadAttach.lean @@ -6,7 +6,7 @@ Authors: Paul Reichert module prelude -public import Init.Control.Basic +public import Init.Core set_option linter.all true diff --git a/src/Init/Control/Option.lean b/src/Init/Control/Option.lean index e8ebefabb6..56688d610d 100644 --- a/src/Init/Control/Option.lean +++ b/src/Init/Control/Option.lean @@ -7,7 +7,7 @@ module prelude public import Init.Data.Option.Basic -public import Init.Control.Except +public import Init.Control.MonadAttach public section diff --git a/src/Init/Control/StateCps.lean b/src/Init/Control/StateCps.lean index 0818f27c52..96a5339569 100644 --- a/src/Init/Control/StateCps.lean +++ b/src/Init/Control/StateCps.lean @@ -7,6 +7,7 @@ module prelude public import Init.Control.Lawful.Basic +public import Init.Ext public section diff --git a/src/Init/Control/StateRef.lean b/src/Init/Control/StateRef.lean index 35d5dc87d8..833811aa96 100644 --- a/src/Init/Control/StateRef.lean +++ b/src/Init/Control/StateRef.lean @@ -9,6 +9,7 @@ module prelude public import Init.System.ST +public import Init.Control.Reader public section diff --git a/src/Init/Core.lean b/src/Init/Core.lean index d7da47cd2c..1968f4c998 100644 --- a/src/Init/Core.lean +++ b/src/Init/Core.lean @@ -9,6 +9,7 @@ module prelude public import Init.SizeOf +public import Init.Tactics public section set_option linter.missingDocs true -- keep it documented diff --git a/src/Init/Data/AC.lean b/src/Init/Data/AC.lean index f989e31d4e..6d68f645f3 100644 --- a/src/Init/Data/AC.lean +++ b/src/Init/Data/AC.lean @@ -7,7 +7,9 @@ Authors: Dany Fabian module prelude -public import Init.ByCases +public import Init.GetElem +import Init.ByCases +import Init.PropLemmas @[expose] public section diff --git a/src/Init/Data/Array.lean b/src/Init/Data/Array.lean index 39b0806981..9a4c3e613a 100644 --- a/src/Init/Data/Array.lean +++ b/src/Init/Data/Array.lean @@ -33,3 +33,4 @@ public import Init.Data.Array.Extract public import Init.Data.Array.MinMax public import Init.Data.Array.Nat public import Init.Data.Array.Int +public import Init.Data.Array.Count diff --git a/src/Init/Data/Array/Attach.lean b/src/Init/Data/Array/Attach.lean index 834c566f1d..60eca402c2 100644 --- a/src/Init/Data/Array/Attach.lean +++ b/src/Init/Data/Array/Attach.lean @@ -6,8 +6,10 @@ Authors: Joachim Breitner, Mario Carneiro module prelude -public import Init.Data.Array.Count import all Init.Data.List.Attach +public import Init.Data.Array.Lemmas +import Init.Data.Array.Bootstrap +import Init.Data.Array.Count public section diff --git a/src/Init/Data/Array/Basic.lean b/src/Init/Data/Array/Basic.lean index 2d5baf7b89..295194601a 100644 --- a/src/Init/Data/Array/Basic.lean +++ b/src/Init/Data/Array/Basic.lean @@ -11,6 +11,9 @@ public import Init.Data.List.ToArrayImpl import all Init.Data.List.ToArrayImpl public import Init.Data.Array.Set import all Init.Data.Array.Set +public import Init.WF +meta import Init.MetaTypes +import Init.WFTactics public section diff --git a/src/Init/Data/Array/BasicAux.lean b/src/Init/Data/Array/BasicAux.lean index 7620a33654..2a64cbedfb 100644 --- a/src/Init/Data/Array/BasicAux.lean +++ b/src/Init/Data/Array/BasicAux.lean @@ -7,7 +7,9 @@ module prelude import all Init.Data.Array.Basic -public import Init.Data.Nat.Linear +public import Init.Data.Array.Set +public import Init.Util +import Init.Data.Nat.Linear public section diff --git a/src/Init/Data/Array/BinSearch.lean b/src/Init/Data/Array/BinSearch.lean index 3a7335b647..17d037bc10 100644 --- a/src/Init/Data/Array/BinSearch.lean +++ b/src/Init/Data/Array/BinSearch.lean @@ -6,7 +6,10 @@ Authors: Leonardo de Moura module prelude -public import Init.Data.Int.DivMod.Lemmas +public import Init.Data.Array.Basic +import Init.Data.Bool +import Init.Omega +import Init.WFTactics public section universe u v diff --git a/src/Init/Data/Array/Bootstrap.lean b/src/Init/Data/Array/Bootstrap.lean index ac7d7daec8..8300d23bc6 100644 --- a/src/Init/Data/Array/Bootstrap.lean +++ b/src/Init/Data/Array/Bootstrap.lean @@ -7,8 +7,10 @@ Authors: Mario Carneiro module prelude -public import Init.Data.List.TakeDrop import all Init.Data.Array.Basic +public import Init.Data.List.Control +import Init.Data.List.Lemmas +import Init.Data.List.TakeDrop public section diff --git a/src/Init/Data/Array/Count.lean b/src/Init/Data/Array/Count.lean index 8c3f1afcae..43106fe38c 100644 --- a/src/Init/Data/Array/Count.lean +++ b/src/Init/Data/Array/Count.lean @@ -7,9 +7,14 @@ module prelude import all Init.Data.Array.Basic -public import Init.Data.Array.Lemmas -public import Init.Data.List.Nat.Count -import Init.Grind.Util +import Init.Grind.Util -- shake: keep (`@[grind]` dependency) +public import Init.BinderPredicates +public import Init.Ext +public import Init.NotationExtra +import Init.Data.Array.Lemmas +import Init.Data.Bool +import Init.Data.List.Count +import Init.Data.List.Nat.Count public section diff --git a/src/Init/Data/Array/DecidableEq.lean b/src/Init/Data/Array/DecidableEq.lean index 21fe81547f..bb003760fe 100644 --- a/src/Init/Data/Array/DecidableEq.lean +++ b/src/Init/Data/Array/DecidableEq.lean @@ -7,8 +7,14 @@ module prelude import all Init.Data.Array.Basic -public import Init.Data.BEq -public import Init.Data.List.Nat.BEq +public import Init.Data.Array.Basic +public import Init.Data.Nat.Lemmas +import Init.ByCases +import Init.Classical +import Init.Data.BEq +import Init.Data.Bool +import Init.Data.List.Nat.BEq +import Init.RCases public section diff --git a/src/Init/Data/Array/Erase.lean b/src/Init/Data/Array/Erase.lean index 9553b2bbbb..d05ca69268 100644 --- a/src/Init/Data/Array/Erase.lean +++ b/src/Init/Data/Array/Erase.lean @@ -8,6 +8,13 @@ module prelude import all Init.Data.Array.Basic public import Init.Data.Array.Lemmas +import Init.Data.Array.Bootstrap +import Init.Data.Bool +import Init.Data.List.Erase +import Init.Data.List.Nat.Basic +import Init.Data.List.Nat.Erase +import Init.Data.List.TakeDrop +import Init.Omega public section diff --git a/src/Init/Data/Array/Extract.lean b/src/Init/Data/Array/Extract.lean index d84168a609..3126d89a18 100644 --- a/src/Init/Data/Array/Extract.lean +++ b/src/Init/Data/Array/Extract.lean @@ -6,7 +6,16 @@ Authors: Kim Morrison module prelude -public import Init.Data.Array.Lemmas +public import Init.BinderPredicates +public import Init.Ext +public import Init.NotationExtra +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.Array.Lemmas +import Init.Data.Bool +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.TakeDrop +import Init.Omega public section diff --git a/src/Init/Data/Array/FinRange.lean b/src/Init/Data/Array/FinRange.lean index 5bb77f7c6d..dc743a3d23 100644 --- a/src/Init/Data/Array/FinRange.lean +++ b/src/Init/Data/Array/FinRange.lean @@ -6,7 +6,11 @@ Authors: François G. Dorais module prelude -public import Init.Data.Array.OfFn +public import Init.Data.Array.Basic +import Init.Data.Array.Lemmas +import Init.Data.Array.OfFn +import Init.Data.Fin.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/Array/Find.lean b/src/Init/Data/Array/Find.lean index 1b74b4f2a9..d60713d2c1 100644 --- a/src/Init/Data/Array/Find.lean +++ b/src/Init/Data/Array/Find.lean @@ -6,10 +6,22 @@ Authors: Kim Morrison module prelude -public import Init.Data.List.Nat.Find import Init.Data.List.Nat.Sum import all Init.Data.Array.Basic -public import Init.Data.Array.Range +public import Init.Data.Array.Attach +public import Init.Data.Option.BasicAux +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.Array.MapIdx +import Init.Data.Bool +import Init.Data.Fin.Lemmas +import Init.Data.List.Count +import Init.Data.List.Find +import Init.Data.List.Impl +import Init.Data.List.Nat.Find +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.TakeDrop +import Init.Omega public section diff --git a/src/Init/Data/Array/GetLit.lean b/src/Init/Data/Array/GetLit.lean index f2d09e9db4..e8d4594262 100644 --- a/src/Init/Data/Array/GetLit.lean +++ b/src/Init/Data/Array/GetLit.lean @@ -7,7 +7,8 @@ Authors: Leonardo de Moura module prelude -public import Init.Data.Array.Basic +public import Init.GetElem +import Init.Data.Array.Basic public section diff --git a/src/Init/Data/Array/InsertIdx.lean b/src/Init/Data/Array/InsertIdx.lean index 4fd0011101..479dc21cbc 100644 --- a/src/Init/Data/Array/InsertIdx.lean +++ b/src/Init/Data/Array/InsertIdx.lean @@ -6,7 +6,11 @@ Authors: Kim Morrison module prelude -public import Init.Data.Array.Lemmas +public import Init.Data.Array.Basic +import Init.Data.List.Nat.InsertIdx +import Init.Data.List.ToArray +import Init.Data.Nat.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/Array/Int.lean b/src/Init/Data/Array/Int.lean index 9efbfe7f97..4b86da0872 100644 --- a/src/Init/Data/Array/Int.lean +++ b/src/Init/Data/Array/Int.lean @@ -6,11 +6,10 @@ Authors: Kim Morrison, Sebastian Graf, Paul Reichert module prelude -public import Init.Data.List.Int.Sum -public import Init.Data.Array.Lemmas -public import Init.Data.Int.DivMod.Bootstrap -import Init.Data.Int.DivMod.Lemmas -import Init.Data.List.MinMax +public import Init.Data.Array.Basic +import Init.Data.Array.Lemmas +import Init.Data.Int.Lemmas +import Init.Data.List.Int.Sum public section diff --git a/src/Init/Data/Array/Lemmas.lean b/src/Init/Data/Array/Lemmas.lean index c2315129c5..65a19b9b50 100644 --- a/src/Init/Data/Array/Lemmas.lean +++ b/src/Init/Data/Array/Lemmas.lean @@ -6,14 +6,28 @@ Authors: Mario Carneiro, Kim Morrison module prelude -public import Init.Data.List.Nat.Basic -public import Init.Data.Array.Mem -public import Init.Data.Array.DecidableEq -public import Init.Data.Range.Lemmas public import Init.Data.List.ToArray import all Init.Data.List.Control import all Init.Data.Array.Basic import all Init.Data.Array.Bootstrap +public import Init.Data.Nat.Lemmas +public import Init.Data.Nat.MinMax +import Init.ByCases +import Init.Data.Array.DecidableEq +import Init.Data.Bool +import Init.Data.Fin.Lemmas +import Init.Data.List.Find +import Init.Data.List.Nat.Basic +import Init.Data.List.Nat.Modify +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.Range +import Init.Data.List.Zip +import Init.Data.Nat.Linear +import Init.Data.Nat.Simproc +import Init.Data.Option.Lemmas +import Init.Data.Prod +import Init.Omega +import Init.TacticsExtra public section diff --git a/src/Init/Data/Array/Lex/Basic.lean b/src/Init/Data/Array/Lex/Basic.lean index a7f4d91d39..1fe05f6c6a 100644 --- a/src/Init/Data/Array/Lex/Basic.lean +++ b/src/Init/Data/Array/Lex/Basic.lean @@ -6,9 +6,10 @@ Author: Kim Morrison module prelude -public import Init.Data.Range.Polymorphic.Iterators -public import Init.Data.Range.Polymorphic.Nat -import Init.Data.Iterators.Consumers +public import Init.Data.Range.Polymorphic.RangeIterator +import Init.Data.Range.Polymorphic.Iterators +import Init.Data.Range.Polymorphic.Nat +import Init.Omega public section diff --git a/src/Init/Data/Array/Lex/Lemmas.lean b/src/Init/Data/Array/Lex/Lemmas.lean index 7241885e9a..e0abd8d596 100644 --- a/src/Init/Data/Array/Lex/Lemmas.lean +++ b/src/Init/Data/Array/Lex/Lemmas.lean @@ -8,9 +8,13 @@ module prelude import all Init.Data.Array.Lex.Basic public import Init.Data.Array.Lex.Basic -public import Init.Data.Array.Lemmas -public import Init.Data.List.Lex import Init.Data.Range.Polymorphic.NatLemmas +public import Init.Data.BEq +import Init.Data.Array.DecidableEq +import Init.Data.Array.Lemmas +import Init.Data.Bool +import Init.Data.List.Lex +import Init.Data.Range.Polymorphic.Lemmas public section diff --git a/src/Init/Data/Array/MapIdx.lean b/src/Init/Data/Array/MapIdx.lean index 9cac5d9cca..98defc1447 100644 --- a/src/Init/Data/Array/MapIdx.lean +++ b/src/Init/Data/Array/MapIdx.lean @@ -7,9 +7,9 @@ module prelude import all Init.Data.Array.Basic -public import Init.Data.Array.OfFn public import Init.Data.List.MapIdx import all Init.Data.List.MapIdx +import Init.Data.Array.OfFn public section diff --git a/src/Init/Data/Array/Mem.lean b/src/Init/Data/Array/Mem.lean index 3389dc3337..4ba340c829 100644 --- a/src/Init/Data/Array/Mem.lean +++ b/src/Init/Data/Array/Mem.lean @@ -6,7 +6,11 @@ Authors: Leonardo de Moura, Joachim Breitner module prelude -public import Init.Data.List.BasicAux +public import Init.Data.Array.Basic +public import Init.WFTactics +import Init.Data.List.BasicAux +import Init.Data.Nat.Linear +meta import Init.MetaTypes public section diff --git a/src/Init/Data/Array/MinMax.lean b/src/Init/Data/Array/MinMax.lean index fc604a46aa..26c2bc0f30 100644 --- a/src/Init/Data/Array/MinMax.lean +++ b/src/Init/Data/Array/MinMax.lean @@ -6,11 +6,13 @@ Authors: Paul Reichert module prelude -public import Init.Data.Array.Bootstrap public import Init.Data.Array.Lemmas -public import Init.Data.Array.DecidableEq import Init.Data.List.MinMax -import Init.Data.List.ToArray +public import Init.Data.Order.Classes +import Init.Data.Array.Bootstrap +import Init.Data.Array.DecidableEq +import Init.Data.List.TakeDrop +import Init.Data.Order.Lemmas namespace Array diff --git a/src/Init/Data/Array/Monadic.lean b/src/Init/Data/Array/Monadic.lean index 254bf84109..a9b08cc4c9 100644 --- a/src/Init/Data/Array/Monadic.lean +++ b/src/Init/Data/Array/Monadic.lean @@ -9,6 +9,7 @@ prelude import all Init.Data.List.Control import all Init.Data.Array.Basic public import Init.Data.Array.Attach +import Init.Data.Bool public section diff --git a/src/Init/Data/Array/Nat.lean b/src/Init/Data/Array/Nat.lean index aae0b59863..b6db3bb977 100644 --- a/src/Init/Data/Array/Nat.lean +++ b/src/Init/Data/Array/Nat.lean @@ -6,8 +6,11 @@ Authors: Kim Morrison, Sebastian Graf, Paul Reichert module prelude -public import Init.Data.Array.Lemmas import Init.Data.List.Nat.Sum +public import Init.BinderPredicates +public import Init.Data.Array.Basic +public import Init.NotationExtra +import Init.Data.Array.Lemmas public section diff --git a/src/Init/Data/Array/OfFn.lean b/src/Init/Data/Array/OfFn.lean index 01cba7fccd..88c58cc7d9 100644 --- a/src/Init/Data/Array/OfFn.lean +++ b/src/Init/Data/Array/OfFn.lean @@ -7,8 +7,13 @@ module prelude import all Init.Data.Array.Basic -public import Init.Data.Array.Monadic -public import Init.Data.List.FinRange +public import Init.Data.List.OfFn +import Init.Data.Array.Bootstrap +import Init.Data.Array.Monadic +import Init.Data.Fin.Lemmas +import Init.Data.List.FinRange +import Init.Data.Option.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/Array/Perm.lean b/src/Init/Data/Array/Perm.lean index 3360290a0e..800b97924c 100644 --- a/src/Init/Data/Array/Perm.lean +++ b/src/Init/Data/Array/Perm.lean @@ -6,9 +6,13 @@ Authors: Kim Morrison module prelude -public import Init.Data.List.Nat.Perm import all Init.Data.Array.Basic -public import Init.Data.Array.Lemmas +public import Init.Data.Array.Basic +import Init.Data.Array.Lemmas +import Init.Data.List.Nat.Perm +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.Perm +import Init.Omega public section diff --git a/src/Init/Data/Array/QSort/Basic.lean b/src/Init/Data/Array/QSort/Basic.lean index 99661a7f12..6e592e4ecd 100644 --- a/src/Init/Data/Array/QSort/Basic.lean +++ b/src/Init/Data/Array/QSort/Basic.lean @@ -8,6 +8,7 @@ module prelude public import Init.Data.Vector.Basic public import Init.Data.Ord.Basic +import Init.Omega public section diff --git a/src/Init/Data/Array/Range.lean b/src/Init/Data/Array/Range.lean index 981a115fdd..c7e7029668 100644 --- a/src/Init/Data/Array/Range.lean +++ b/src/Init/Data/Array/Range.lean @@ -8,8 +8,16 @@ module prelude import all Init.Data.Array.Basic import all Init.Data.Array.OfFn -public import Init.Data.Array.MapIdx -public import Init.Data.Array.Zip +public import Init.BinderPredicates +public import Init.Data.Nat.Lemmas +public import Init.Ext +import Init.ByCases +import Init.Data.Array.Count +import Init.Data.Array.MapIdx +import Init.Data.Array.Zip +import Init.Data.List.Find +import Init.Data.List.Nat.Range +import Init.Data.List.Range public section diff --git a/src/Init/Data/Array/Subarray.lean b/src/Init/Data/Array/Subarray.lean index 48bb946a92..08738ae2a8 100644 --- a/src/Init/Data/Array/Subarray.lean +++ b/src/Init/Data/Array/Subarray.lean @@ -7,7 +7,6 @@ module prelude public import Init.Data.Array.Basic -import Init.Data.Array.GetLit public import Init.Data.Slice.Basic public section diff --git a/src/Init/Data/Array/Subarray/Split.lean b/src/Init/Data/Array/Subarray/Split.lean index b62e29ae51..7a4482a524 100644 --- a/src/Init/Data/Array/Subarray/Split.lean +++ b/src/Init/Data/Array/Subarray/Split.lean @@ -9,7 +9,7 @@ module prelude public import Init.Data.Array.Subarray import all Init.Data.Array.Subarray -public import Init.Omega +import Init.Omega public section diff --git a/src/Init/Data/Array/TakeDrop.lean b/src/Init/Data/Array/TakeDrop.lean index c4ac04e367..c82aae7e3a 100644 --- a/src/Init/Data/Array/TakeDrop.lean +++ b/src/Init/Data/Array/TakeDrop.lean @@ -7,7 +7,11 @@ module prelude import all Init.Data.Array.Basic -public import Init.Data.Array.Lemmas +public import Init.Data.Array.Basic +public import Init.NotationExtra +import Init.Data.Array.Lemmas +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.TakeDrop public section diff --git a/src/Init/Data/Array/Zip.lean b/src/Init/Data/Array/Zip.lean index 26288415af..792d3c6524 100644 --- a/src/Init/Data/Array/Zip.lean +++ b/src/Init/Data/Array/Zip.lean @@ -7,7 +7,14 @@ module prelude import all Init.Data.Array.Basic -public import Init.Data.Array.TakeDrop +public import Init.Control.Lawful +public import Init.Data.Function +import Init.Data.Array.Lemmas +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.Zip +import Init.Data.Option.Lemmas +import Init.Data.Prod +import Init.Omega public section diff --git a/src/Init/Data/BEq.lean b/src/Init/Data/BEq.lean index e0230ca7a2..7345b9900f 100644 --- a/src/Init/Data/BEq.lean +++ b/src/Init/Data/BEq.lean @@ -6,7 +6,8 @@ Authors: Mario Carneiro, Markus Himmel module prelude -public import Init.Data.Bool +public import Init.Grind.Tactics +import Init.Data.Bool public section diff --git a/src/Init/Data/BitVec/Basic.lean b/src/Init/Data/BitVec/Basic.lean index 1c7b99a9ab..c93343f101 100644 --- a/src/Init/Data/BitVec/Basic.lean +++ b/src/Init/Data/BitVec/Basic.lean @@ -6,8 +6,16 @@ Authors: Joe Hendrix, Wojciech Nawrocki, Leonardo de Moura, Mario Carneiro, Alex module prelude -public import Init.Data.Nat.Bitwise.Lemmas public import Init.Data.Int.Bitwise.Basic +public import Init.Data.Bool +public import Init.Data.Int.DivMod.Basic +public import Init.WF +import Init.Data.Nat.Bitwise.Lemmas +import Init.Data.Nat.Lemmas +import Init.Data.Nat.Linear +import Init.Meta.Defs +import Init.Omega +import Init.WFTactics @[expose] public section @@ -261,7 +269,7 @@ Usually accessed via the `/` operator. -/ @[expose] def udiv (x y : BitVec n) : BitVec n := - (x.toNat / y.toNat)#'(Nat.lt_of_le_of_lt (Nat.div_le_self _ _) x.isLt) + (x.toNat / y.toNat)#'(by exact Nat.lt_of_le_of_lt (Nat.div_le_self _ _) x.isLt) instance : Div (BitVec n) := ⟨.udiv⟩ /-- @@ -271,7 +279,7 @@ SMT-LIB name: `bvurem`. -/ @[expose] def umod (x y : BitVec n) : BitVec n := - (x.toNat % y.toNat)#'(Nat.lt_of_le_of_lt (Nat.mod_le _ _) x.isLt) + (x.toNat % y.toNat)#'(by exact Nat.lt_of_le_of_lt (Nat.mod_le _ _) x.isLt) instance : Mod (BitVec n) := ⟨.umod⟩ /-- @@ -515,7 +523,7 @@ Example: -/ @[expose] protected def and (x y : BitVec n) : BitVec n := - (x.toNat &&& y.toNat)#'(Nat.and_lt_two_pow x.toNat y.isLt) + (x.toNat &&& y.toNat)#'(by exact Nat.and_lt_two_pow x.toNat y.isLt) instance : AndOp (BitVec w) := ⟨.and⟩ /-- @@ -528,7 +536,7 @@ Example: -/ @[expose] protected def or (x y : BitVec n) : BitVec n := - (x.toNat ||| y.toNat)#'(Nat.or_lt_two_pow x.isLt y.isLt) + (x.toNat ||| y.toNat)#'(by exact Nat.or_lt_two_pow x.isLt y.isLt) instance : OrOp (BitVec w) := ⟨.or⟩ /-- @@ -541,7 +549,7 @@ Example: -/ @[expose] protected def xor (x y : BitVec n) : BitVec n := - (x.toNat ^^^ y.toNat)#'(Nat.xor_lt_two_pow x.isLt y.isLt) + (x.toNat ^^^ y.toNat)#'(by exact Nat.xor_lt_two_pow x.isLt y.isLt) instance : XorOp (BitVec w) := ⟨.xor⟩ /-- diff --git a/src/Init/Data/BitVec/BasicAux.lean b/src/Init/Data/BitVec/BasicAux.lean index 67453de38e..6d544b2e3b 100644 --- a/src/Init/Data/BitVec/BasicAux.lean +++ b/src/Init/Data/BitVec/BasicAux.lean @@ -6,7 +6,7 @@ Authors: Joe Hendrix, Wojciech Nawrocki, Leonardo de Moura, Mario Carneiro, Alex module prelude -public import Init.Data.Fin.Basic +public import Init.Grind.Tactics public section diff --git a/src/Init/Data/BitVec/Bitblast.lean b/src/Init/Data/BitVec/Bitblast.lean index 55ff9deae6..0e56de9112 100644 --- a/src/Init/Data/BitVec/Bitblast.lean +++ b/src/Init/Data/BitVec/Bitblast.lean @@ -7,12 +7,20 @@ module prelude import all Init.Data.Nat.Bitwise.Basic -public import Init.Data.Int.DivMod import all Init.Data.Int.DivMod import all Init.Data.BitVec.Basic -public import Init.Data.BitVec.Decidable public import Init.Data.BitVec.Folds -import Init.BinderPredicates +public import Init.BinderPredicates +public import Init.Data.BitVec.Lemmas +public import Init.Data.Nat.Lemmas +import Init.ByCases +import Init.Data.BitVec.Bootstrap +import Init.Data.BitVec.Decidable +import Init.Data.Int.Pow +import Init.Data.Nat.Div.Lemmas +import Init.Data.Nat.Mod +import Init.Data.Nat.Simproc +import Init.TacticsExtra @[expose] public section @@ -2233,7 +2241,7 @@ def aandRec (x y : BitVec w) (s : Nat) (hs : s < w) : Bool := -/ def resRec (x y : BitVec w) (s : Nat) (hs : s < w) (hslt : 0 < s) : Bool := match hs0 : s with - | 0 => by omega + | 0 => False.elim (by omega) | s' + 1 => match hs' : s' with | 0 => aandRec x y 1 (by omega) diff --git a/src/Init/Data/BitVec/Bootstrap.lean b/src/Init/Data/BitVec/Bootstrap.lean index c7c385ef69..3df35da610 100644 --- a/src/Init/Data/BitVec/Bootstrap.lean +++ b/src/Init/Data/BitVec/Bootstrap.lean @@ -8,8 +8,10 @@ module prelude public import Init.Data.BitVec.Basic import all Init.Data.BitVec.Basic -import Init.Data.Int.Bitwise.Lemmas import Init.Ext +import Init.ByCases +import Init.Data.Nat.Div.Lemmas +import Init.TacticsExtra public section diff --git a/src/Init/Data/BitVec/Decidable.lean b/src/Init/Data/BitVec/Decidable.lean index 4b718401df..dc5a1f516a 100644 --- a/src/Init/Data/BitVec/Decidable.lean +++ b/src/Init/Data/BitVec/Decidable.lean @@ -7,8 +7,11 @@ Authors: Joe Hendrix, Harun Khan, Alex Keizer, Abdalrhman M Mohamed, Siddharth B module prelude -public import Init.Data.BitVec.Bootstrap import Init.Ext +public import Init.Data.BitVec.Basic +public import Init.PropLemmas +import Init.Classical +import Init.Data.BitVec.Bootstrap public section diff --git a/src/Init/Data/BitVec/Folds.lean b/src/Init/Data/BitVec/Folds.lean index 2c92b04ae7..37f6220af7 100644 --- a/src/Init/Data/BitVec/Folds.lean +++ b/src/Init/Data/BitVec/Folds.lean @@ -7,8 +7,10 @@ module prelude import all Init.Data.BitVec.Basic -public import Init.Data.BitVec.Lemmas -public import Init.Data.Fin.Iterate +public import Init.Data.BitVec.Basic +public import Init.Ext +import Init.Data.BitVec.Lemmas +import Init.Data.Fin.Iterate public section diff --git a/src/Init/Data/BitVec/Lemmas.lean b/src/Init/Data/BitVec/Lemmas.lean index e47572283f..ac6ef10139 100644 --- a/src/Init/Data/BitVec/Lemmas.lean +++ b/src/Init/Data/BitVec/Lemmas.lean @@ -9,11 +9,20 @@ prelude import all Init.Data.BitVec.Basic import all Init.Data.BitVec.BasicAux public import Init.Data.Fin.Lemmas -public import Init.Data.Int.Bitwise.Lemmas -public import Init.Data.Int.LemmasAux -public import Init.Data.BitVec.Bootstrap public import Init.Data.List.BasicAux import Init.Data.List.Lemmas +public import Init.Data.BitVec.Basic +import Init.ByCases +import Init.Data.BitVec.Bootstrap +import Init.Data.Int.Bitwise.Lemmas +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.LemmasAux +import Init.Data.Int.Pow +import Init.Data.Nat.Div.Lemmas +import Init.Data.Nat.MinMax +import Init.Data.Nat.Mod +import Init.Data.Nat.Simproc +import Init.TacticsExtra public section diff --git a/src/Init/Data/ByteArray/Basic.lean b/src/Init/Data/ByteArray/Basic.lean index 32f11f7e80..c13751b381 100644 --- a/src/Init/Data/ByteArray/Basic.lean +++ b/src/Init/Data/ByteArray/Basic.lean @@ -6,9 +6,12 @@ Author: Leonardo de Moura module prelude -public import Init.Data.UInt.Basic import all Init.Data.UInt.BasicAux -public import Init.Data.Array.Extract +public import Init.Data.Array.DecidableEq +public import Init.Data.List.Attach +import Init.Data.Array.Bootstrap +import Init.Data.Array.Lemmas +import Init.Omega set_option doc.verso true diff --git a/src/Init/Data/ByteArray/Extra.lean b/src/Init/Data/ByteArray/Extra.lean index 3ac3e7adba..db6879d2fd 100644 --- a/src/Init/Data/ByteArray/Extra.lean +++ b/src/Init/Data/ByteArray/Extra.lean @@ -7,7 +7,8 @@ module prelude public import Init.Data.ByteArray.Basic -import Init.Data.String.Basic +import Init.Data.String.Defs +import Init.Data.UInt.Basic set_option doc.verso true diff --git a/src/Init/Data/ByteArray/Lemmas.lean b/src/Init/Data/ByteArray/Lemmas.lean index 8f1202d344..aef7200b8d 100644 --- a/src/Init/Data/ByteArray/Lemmas.lean +++ b/src/Init/Data/ByteArray/Lemmas.lean @@ -7,6 +7,11 @@ module prelude public import Init.Data.ByteArray.Basic +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.Array.Extract +import Init.Data.Array.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/Char/Basic.lean b/src/Init/Data/Char/Basic.lean index 28c701fab0..815256820d 100644 --- a/src/Init/Data/Char/Basic.lean +++ b/src/Init/Data/Char/Basic.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.UInt.BasicAux +import Init.Data.Nat.Div.Basic @[expose] public section diff --git a/src/Init/Data/Char/Lemmas.lean b/src/Init/Data/Char/Lemmas.lean index 3acec3bd69..f064f01613 100644 --- a/src/Init/Data/Char/Lemmas.lean +++ b/src/Init/Data/Char/Lemmas.lean @@ -7,7 +7,9 @@ module prelude import all Init.Data.Char.Basic -public import Init.Data.UInt.Lemmas +public import Init.Data.Char.Basic +public import Init.Ext +import Init.Data.UInt.Lemmas public section diff --git a/src/Init/Data/Char/Order.lean b/src/Init/Data/Char/Order.lean index 7af70161f0..c40fda165b 100644 --- a/src/Init/Data/Char/Order.lean +++ b/src/Init/Data/Char/Order.lean @@ -8,7 +8,9 @@ module prelude public import Init.Data.Char.Basic import Init.Data.Char.Lemmas -public import Init.Data.Order.Factories +public import Init.Data.Order.Classes +import Init.Data.Order.Factories +import Init.PropLemmas open Std diff --git a/src/Init/Data/Char/Ordinal.lean b/src/Init/Data/Char/Ordinal.lean index 2e8160d913..acb5fc9645 100644 --- a/src/Init/Data/Char/Ordinal.lean +++ b/src/Init/Data/Char/Ordinal.lean @@ -7,11 +7,18 @@ module prelude public import Init.Data.Fin.OverflowAware -public import Init.Data.UInt.Basic public import Init.Data.Function import Init.Data.Char.Lemmas import Init.Data.Char.Order import Init.Grind +public import Init.Data.Char.Basic +import Init.ByCases +import Init.Data.Fin.Lemmas +import Init.Data.Int.OfNat +import Init.Data.Nat.Linear +import Init.Data.Nat.Simproc +import Init.Data.Option.Lemmas +import Init.Data.UInt.Lemmas /-! # Bijection between `Char` and `Fin Char.numCodePoints` diff --git a/src/Init/Data/Dyadic/Basic.lean b/src/Init/Data/Dyadic/Basic.lean index 1dc3ec258b..fe78c8478b 100644 --- a/src/Init/Data/Dyadic/Basic.lean +++ b/src/Init/Data/Dyadic/Basic.lean @@ -6,9 +6,17 @@ Authors: Kim Morrison, Robin Arnez module prelude -public import Init.Data.Rat.Lemmas import Init.Data.Int.Bitwise.Lemmas -import Init.Hints +public import Init.Data.Int.Bitwise.Basic +public import Init.Data.Order.Classes +public import Init.Data.Rat.Basic +import Init.ByCases +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.Pow +import Init.Data.Nat.Bitwise.Lemmas +import Init.Data.Option.Lemmas +import Init.Data.Rat.Lemmas +import Init.Omega /-! # The dyadic rationals diff --git a/src/Init/Data/Dyadic/Instances.lean b/src/Init/Data/Dyadic/Instances.lean index 363658375b..b1de3ee29c 100644 --- a/src/Init/Data/Dyadic/Instances.lean +++ b/src/Init/Data/Dyadic/Instances.lean @@ -8,6 +8,7 @@ module prelude public import Init.Data.Dyadic.Basic public import Init.Grind.Ordered.Ring +import Init.Data.Rat.Lemmas /-! # Internal `grind` algebra instances for `Dyadic`. -/ diff --git a/src/Init/Data/Dyadic/Inv.lean b/src/Init/Data/Dyadic/Inv.lean index 356f2fee72..aef891ad71 100644 --- a/src/Init/Data/Dyadic/Inv.lean +++ b/src/Init/Data/Dyadic/Inv.lean @@ -7,8 +7,7 @@ module prelude public import Init.Data.Dyadic.Basic -import Init.Data.Dyadic.Round -import Init.Grind.Ordered.Ring +import Init.Data.Rat.Lemmas /-! # Inversion for dyadic numbers diff --git a/src/Init/Data/Dyadic/Round.lean b/src/Init/Data/Dyadic/Round.lean index aaab5f1a2a..500c5c303c 100644 --- a/src/Init/Data/Dyadic/Round.lean +++ b/src/Init/Data/Dyadic/Round.lean @@ -10,6 +10,12 @@ public import Init.Data.Dyadic.Basic import Init.Data.Dyadic.Instances import Init.Grind.Ordered.Rat import Init.Grind.Ordered.Field +import Init.ByCases +import Init.Data.Int.Bitwise.Lemmas +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.Pow +import Init.Data.Option.Lemmas +import Init.Omega namespace Dyadic diff --git a/src/Init/Data/Fin/Basic.lean b/src/Init/Data/Fin/Basic.lean index cf07dc71e6..4ed9b2c3e8 100644 --- a/src/Init/Data/Fin/Basic.lean +++ b/src/Init/Data/Fin/Basic.lean @@ -7,6 +7,8 @@ module prelude public import Init.Data.Nat.Bitwise.Basic +public import Init.Data.Nat.Basic +import Init.Data.Nat.Div.Basic public section diff --git a/src/Init/Data/Fin/Bitwise.lean b/src/Init/Data/Fin/Bitwise.lean index 83c10ca4af..d0a7b17c02 100644 --- a/src/Init/Data/Fin/Bitwise.lean +++ b/src/Init/Data/Fin/Bitwise.lean @@ -6,7 +6,9 @@ Authors: Markus Himmel module prelude -public import Init.Data.Nat.Bitwise +public import Init.Data.Fin.Basic +import Init.Data.Nat.Bitwise.Lemmas +import Init.Data.Nat.Div.Basic public section diff --git a/src/Init/Data/Fin/Fold.lean b/src/Init/Data/Fin/Fold.lean index 047900ff98..e70887f13b 100644 --- a/src/Init/Data/Fin/Fold.lean +++ b/src/Init/Data/Fin/Fold.lean @@ -7,7 +7,12 @@ module prelude public import Init.Control.Lawful.Basic -public import Init.Data.Fin.Lemmas +public import Init.Ext +import Init.Data.Fin.Lemmas +import Init.Data.Nat.Lemmas +import Init.Omega +import Init.TacticsExtra +import Init.WFTactics public section diff --git a/src/Init/Data/Fin/Iterate.lean b/src/Init/Data/Fin/Iterate.lean index f62034e22e..9e19561829 100644 --- a/src/Init/Data/Fin/Iterate.lean +++ b/src/Init/Data/Fin/Iterate.lean @@ -6,7 +6,9 @@ Authors: Joe Hendrix module prelude -public import Init.PropLemmas +public import Init.Data.Fin.Basic +import Init.PropLemmas +import Init.WFTactics public section diff --git a/src/Init/Data/Fin/Lemmas.lean b/src/Init/Data/Fin/Lemmas.lean index 5b81076e6e..34159ce285 100644 --- a/src/Init/Data/Fin/Lemmas.lean +++ b/src/Init/Data/Fin/Lemmas.lean @@ -6,9 +6,15 @@ Authors: Mario Carneiro, Leonardo de Moura module prelude -public import Init.Data.Nat.Lemmas public import Init.Ext -import Init.Data.Order.Lemmas +public import Init.Data.Nat.Div.Basic +public import Init.Data.Order.Classes +public import Init.NotationExtra +import Init.ByCases +import Init.Data.Nat.Lemmas +import Init.Data.Nat.Linear +import Init.Omega +import Init.TacticsExtra @[expose] public section @@ -986,7 +992,7 @@ For the induction: let rec go (j : Nat) (h) (h2 : i ≤ j) (x : motive ⟨j, h⟩) : motive i := if hi : i.1 = j then _root_.cast (by simp [← hi]) x else match j with - | 0 => by omega + | 0 => False.elim (by omega) | j + 1 => go j (by omega) (by omega) (cast ⟨j, by omega⟩ x) go _ _ (by omega) last diff --git a/src/Init/Data/Fin/Log2.lean b/src/Init/Data/Fin/Log2.lean index d96cf0124a..b648d98604 100644 --- a/src/Init/Data/Fin/Log2.lean +++ b/src/Init/Data/Fin/Log2.lean @@ -6,7 +6,8 @@ Authors: Henrik Böving module prelude -public import Init.Data.Nat.Log2 +public import Init.Prelude +import Init.Data.Nat.Log2 public section diff --git a/src/Init/Data/FloatArray/Basic.lean b/src/Init/Data/FloatArray/Basic.lean index 71d91e9ba9..050b3a9cfc 100644 --- a/src/Init/Data/FloatArray/Basic.lean +++ b/src/Init/Data/FloatArray/Basic.lean @@ -8,7 +8,7 @@ module prelude public import Init.Data.Float import Init.Ext -public import Init.Data.Array.DecidableEq +public import Init.GetElem public section universe u diff --git a/src/Init/Data/Format/Basic.lean b/src/Init/Data/Format/Basic.lean index 4f61c1465d..a9805b366b 100644 --- a/src/Init/Data/Format/Basic.lean +++ b/src/Init/Data/Format/Basic.lean @@ -6,9 +6,10 @@ Author: Leonardo de Moura module prelude -public import Init.Control.State public import Init.Data.Int.Basic public import Init.Data.String.Bootstrap +import Init.Control.State +import Init.Data.Nat.Bitwise.Basic public section diff --git a/src/Init/Data/Format/Instances.lean b/src/Init/Data/Format/Instances.lean index f86959f07a..fa3dcfe717 100644 --- a/src/Init/Data/Format/Instances.lean +++ b/src/Init/Data/Format/Instances.lean @@ -6,8 +6,9 @@ Author: Leonardo de Moura module prelude -public import Init.Data.Array.Basic import Init.Data.String.Search +public import Init.Data.ToString.Basic +import Init.Data.Iterators.Consumers.Collect public section diff --git a/src/Init/Data/Format/Macro.lean b/src/Init/Data/Format/Macro.lean index c426669d13..e2c51ee4ba 100644 --- a/src/Init/Data/Format/Macro.lean +++ b/src/Init/Data/Format/Macro.lean @@ -6,8 +6,8 @@ Author: Leonardo de Moura module prelude -public import Init.Data.Format.Basic -public import Init.Data.ToString.Macro +public meta import Init.Meta +public import Init.Notation public section diff --git a/src/Init/Data/Format/Syntax.lean b/src/Init/Data/Format/Syntax.lean index ddf371145b..4965480f00 100644 --- a/src/Init/Data/Format/Syntax.lean +++ b/src/Init/Data/Format/Syntax.lean @@ -6,10 +6,10 @@ Author: Leonardo de Moura module prelude -public import Init.Data.Format.Macro -public import Init.Data.Format.Instances -public import Init.Meta import Init.Data.ToString.Name +public import Init.Data.ToString.Basic +import Init.Data.Format.Instances +import Init.Data.Format.Macro public section diff --git a/src/Init/Data/Hashable.lean b/src/Init/Data/Hashable.lean index 6a93de946b..e9ca6110b8 100644 --- a/src/Init/Data/Hashable.lean +++ b/src/Init/Data/Hashable.lean @@ -6,7 +6,8 @@ Authors: Leonardo de Moura module prelude -public import Init.Data.String.Basic +public import Init.Data.String.PosRaw +public import Init.Data.UInt.Basic public section universe u diff --git a/src/Init/Data/Int/Basic.lean b/src/Init/Data/Int/Basic.lean index 52866270ff..d65040544f 100644 --- a/src/Init/Data/Int/Basic.lean +++ b/src/Init/Data/Int/Basic.lean @@ -9,7 +9,7 @@ module prelude public import Init.Data.Cast -public import Init.Data.Nat.Div.Basic +public import Init.Data.Nat.Basic public section diff --git a/src/Init/Data/Int/Bitwise/Lemmas.lean b/src/Init/Data/Int/Bitwise/Lemmas.lean index 530458e1c8..a709939782 100644 --- a/src/Init/Data/Int/Bitwise/Lemmas.lean +++ b/src/Init/Data/Int/Bitwise/Lemmas.lean @@ -6,10 +6,16 @@ Authors: Siddharth Bhat, Jeremy Avigad module prelude -public import Init.Data.Nat.Bitwise.Lemmas public import Init.Data.Int.Bitwise.Basic import all Init.Data.Int.Bitwise.Basic -public import Init.Data.Int.DivMod.Lemmas +public import Init.Data.Int.DivMod.Basic +import Init.ByCases +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.Pow +import Init.Data.Nat.Bitwise.Lemmas +import Init.Data.Nat.Lemmas +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Data/Int/Compare.lean b/src/Init/Data/Int/Compare.lean index 40b2dab287..ccee8f2f78 100644 --- a/src/Init/Data/Int/Compare.lean +++ b/src/Init/Data/Int/Compare.lean @@ -8,7 +8,6 @@ module prelude public import Init.Data.Ord.Basic import all Init.Data.Ord.Basic -public import Init.Data.Int.Order import Init.Omega public section diff --git a/src/Init/Data/Int/Cooper.lean b/src/Init/Data/Int/Cooper.lean index 813c3085cf..1646aedc22 100644 --- a/src/Init/Data/Int/Cooper.lean +++ b/src/Init/Data/Int/Cooper.lean @@ -7,6 +7,9 @@ module prelude public import Init.Data.Int.Gcd +import Init.Data.Int.DivMod.Lemmas +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Data/Int/DivMod/Basic.lean b/src/Init/Data/Int/DivMod/Basic.lean index 966154db43..c519d62061 100644 --- a/src/Init/Data/Int/DivMod/Basic.lean +++ b/src/Init/Data/Int/DivMod/Basic.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.Int.Basic +import Init.Data.Nat.Div.Basic public section diff --git a/src/Init/Data/Int/DivMod/Bootstrap.lean b/src/Init/Data/Int/DivMod/Bootstrap.lean index 9c834f3b4c..91f9a4846a 100644 --- a/src/Init/Data/Int/DivMod/Bootstrap.lean +++ b/src/Init/Data/Int/DivMod/Bootstrap.lean @@ -7,9 +7,12 @@ module prelude public import Init.Data.Int.DivMod.Basic -public import Init.Data.Int.Order -public import Init.Data.Nat.Dvd -public import Init.RCases +public import Init.Data.Nat.Div.Basic +import Init.ByCases +import Init.Data.Int.Lemmas +import Init.Data.Int.Order +import Init.Data.Nat.Dvd +import Init.RCases public section diff --git a/src/Init/Data/Int/DivMod/Lemmas.lean b/src/Init/Data/Int/DivMod/Lemmas.lean index c3bdfebc54..3170e8101a 100644 --- a/src/Init/Data/Int/DivMod/Lemmas.lean +++ b/src/Init/Data/Int/DivMod/Lemmas.lean @@ -6,8 +6,16 @@ Authors: Jeremy Avigad, Mario Carneiro, Kim Morrison, Markus Himmel module prelude -public import Init.Data.Nat.Div.Lemmas import Init.TacticsExtra +public import Init.Data.Int.DivMod.Basic +public import Init.Data.Nat.Div.Basic +public import Init.NotationExtra +import Init.ByCases +import Init.Data.Bool +import Init.Data.Nat.Div.Lemmas +import Init.Data.Nat.Lemmas +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Data/Int/DivMod/Pow.lean b/src/Init/Data/Int/DivMod/Pow.lean index f9b2b0fc9b..b573676801 100644 --- a/src/Init/Data/Int/DivMod/Pow.lean +++ b/src/Init/Data/Int/DivMod/Pow.lean @@ -5,8 +5,12 @@ Authors: Kim Morrison -/ module prelude -public import Init.Data.Int.DivMod.Lemmas -public import Init.Data.Int.Pow +import Init.ByCases +import Init.Data.Int.DivMod.Bootstrap +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.Lemmas +import Init.Data.Int.Pow +import Init.RCases /-! # Lemmas about divisibility of powers diff --git a/src/Init/Data/Int/Gcd.lean b/src/Init/Data/Int/Gcd.lean index 49f3b2027d..6837495bbf 100644 --- a/src/Init/Data/Int/Gcd.lean +++ b/src/Init/Data/Int/Gcd.lean @@ -7,8 +7,12 @@ module prelude public import Init.Data.Nat.Lcm -public import Init.Data.Int.DivMod.Lemmas -public import Init.Data.Int.Pow +public import Init.Data.Int.DivMod.Basic +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.Pow +import Init.Data.Nat.Dvd +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Data/Int/Lemmas.lean b/src/Init/Data/Int/Lemmas.lean index 7341056833..8a7f1327e6 100644 --- a/src/Init/Data/Int/Lemmas.lean +++ b/src/Init/Data/Int/Lemmas.lean @@ -6,7 +6,8 @@ Authors: Jeremy Avigad, Deniz Aydin, Floris van Doorn, Mario Carneiro module prelude -public import Init.PropLemmas +public import Init.Data.Int.Basic +import Init.PropLemmas public section diff --git a/src/Init/Data/Int/LemmasAux.lean b/src/Init/Data/Int/LemmasAux.lean index 73f7359e61..291f0da752 100644 --- a/src/Init/Data/Int/LemmasAux.lean +++ b/src/Init/Data/Int/LemmasAux.lean @@ -6,7 +6,10 @@ Authors: Kim Morrison module prelude -public import Init.Data.Int.Pow +public import Init.Data.Int.Lemmas +import Init.ByCases +import Init.Data.Int.Pow +import Init.Omega public section diff --git a/src/Init/Data/Int/Linear.lean b/src/Init/Data/Int/Linear.lean index f0f7ac34e2..6c07229912 100644 --- a/src/Init/Data/Int/Linear.lean +++ b/src/Init/Data/Int/Linear.lean @@ -5,12 +5,14 @@ Authors: Leonardo de Moura -/ module prelude -public import Init.Data.Int.LemmasAux -public import Init.Data.Int.Cooper import all Init.Data.Int.Gcd -public import Init.Data.AC import all Init.Data.AC import Init.LawfulBEqTactics +public import Init.Data.Bool +public import Init.Data.Int.Gcd +public import Init.Data.RArray +import Init.Data.Int.Cooper +import Init.Data.Int.LemmasAux public section namespace Int.Linear diff --git a/src/Init/Data/Int/OfNat.lean b/src/Init/Data/Int/OfNat.lean index 0eb9eef7b7..64248c6aa4 100644 --- a/src/Init/Data/Int/OfNat.lean +++ b/src/Init/Data/Int/OfNat.lean @@ -6,8 +6,13 @@ Authors: Leonardo de Moura module prelude -public import Init.Data.Int.Linear public import Init.GrindInstances.ToInt +public import Init.Data.Nat.Div.Basic +import Init.ByCases +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.LemmasAux +import Init.Data.Int.Pow +import Init.Omega public section diff --git a/src/Init/Data/Int/Order.lean b/src/Init/Data/Int/Order.lean index b68238129b..6123178063 100644 --- a/src/Init/Data/Int/Order.lean +++ b/src/Init/Data/Int/Order.lean @@ -6,10 +6,11 @@ Authors: Jeremy Avigad, Deniz Aydin, Floris van Doorn, Mario Carneiro module prelude -public import Init.Data.Int.Lemmas -public import Init.ByCases -public import Init.Data.Order.Factories import Init.Data.Order.Lemmas +public import Init.Data.Order.Classes +public import Init.NotationExtra +import Init.ByCases +import Init.Data.Int.Lemmas public section diff --git a/src/Init/Data/Int/Pow.lean b/src/Init/Data/Int/Pow.lean index 8cc8b2cb34..0d7f2ddf72 100644 --- a/src/Init/Data/Int/Pow.lean +++ b/src/Init/Data/Int/Pow.lean @@ -6,7 +6,11 @@ Authors: Jeremy Avigad, Deniz Aydin, Floris van Doorn, Mario Carneiro module prelude -public import Init.Data.Nat.Lemmas +public import Init.Data.Int.Basic +import Init.ByCases +import Init.Data.Nat.Lemmas +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Data/Iterators/Basic.lean b/src/Init/Data/Iterators/Basic.lean index da02f9fd67..e2877abf93 100644 --- a/src/Init/Data/Iterators/Basic.lean +++ b/src/Init/Data/Iterators/Basic.lean @@ -6,8 +6,10 @@ Authors: Paul Reichert module prelude -public import Init.Classical -public import Init.Ext +public import Init.NotationExtra +public import Init.WFTactics +import Init.Ext +import Init.PropLemmas set_option doc.verso true set_option linter.missingDocs true diff --git a/src/Init/Data/Iterators/Combinators/Attach.lean b/src/Init/Data/Iterators/Combinators/Attach.lean index 8fe684aba2..a39083fd13 100644 --- a/src/Init/Data/Iterators/Combinators/Attach.lean +++ b/src/Init/Data/Iterators/Combinators/Attach.lean @@ -7,7 +7,6 @@ module prelude public import Init.Data.Iterators.Combinators.Monadic.Attach -public import Init.Data.Iterators.Combinators.FilterMap public section diff --git a/src/Init/Data/Iterators/Combinators/FlatMap.lean b/src/Init/Data/Iterators/Combinators/FlatMap.lean index 60a6367261..51deaec245 100644 --- a/src/Init/Data/Iterators/Combinators/FlatMap.lean +++ b/src/Init/Data/Iterators/Combinators/FlatMap.lean @@ -6,8 +6,8 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Combinators.FilterMap public import Init.Data.Iterators.Combinators.Monadic.FlatMap +import Init.Data.Iterators.Combinators.FilterMap set_option doc.verso true diff --git a/src/Init/Data/Iterators/Combinators/Monadic/Attach.lean b/src/Init/Data/Iterators/Combinators/Monadic/Attach.lean index 60b7040b49..7928d34bb6 100644 --- a/src/Init/Data/Iterators/Combinators/Monadic/Attach.lean +++ b/src/Init/Data/Iterators/Combinators/Monadic/Attach.lean @@ -6,7 +6,7 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Consumers.Loop +public import Init.Data.Iterators.Consumers.Monadic.Loop public section diff --git a/src/Init/Data/Iterators/Combinators/Monadic/FilterMap.lean b/src/Init/Data/Iterators/Combinators/Monadic/FilterMap.lean index 11bf8506d8..f77fe5918c 100644 --- a/src/Init/Data/Iterators/Combinators/Monadic/FilterMap.lean +++ b/src/Init/Data/Iterators/Combinators/Monadic/FilterMap.lean @@ -6,8 +6,9 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Consumers.Loop public import Init.Data.Iterators.PostconditionMonad +public import Init.Data.Iterators.Consumers.Monadic.Loop +import Init.PropLemmas public section diff --git a/src/Init/Data/Iterators/Combinators/Monadic/FlatMap.lean b/src/Init/Data/Iterators/Combinators/Monadic/FlatMap.lean index 87b3c0b485..46f4210b5a 100644 --- a/src/Init/Data/Iterators/Combinators/Monadic/FlatMap.lean +++ b/src/Init/Data/Iterators/Combinators/Monadic/FlatMap.lean @@ -7,7 +7,7 @@ module prelude public import Init.Data.Iterators.Combinators.Monadic.FilterMap -public import Init.Data.Option.Lemmas +import Init.Data.Option.Lemmas /-! # Monadic `flatMap` combinator diff --git a/src/Init/Data/Iterators/Combinators/Monadic/Take.lean b/src/Init/Data/Iterators/Combinators/Monadic/Take.lean index aacc447752..f20d912a32 100644 --- a/src/Init/Data/Iterators/Combinators/Monadic/Take.lean +++ b/src/Init/Data/Iterators/Combinators/Monadic/Take.lean @@ -6,9 +6,10 @@ Authors: Paul Reichert module prelude -public import Init.Data.Nat.Lemmas -public import Init.Data.Iterators.Consumers.Monadic.Collect public import Init.Data.Iterators.Consumers.Monadic.Loop +public import Init.Classical +import Init.ByCases +import Init.Omega @[expose] public section diff --git a/src/Init/Data/Iterators/Consumers/Access.lean b/src/Init/Data/Iterators/Consumers/Access.lean index 27f64e257c..205861a4d2 100644 --- a/src/Init/Data/Iterators/Consumers/Access.lean +++ b/src/Init/Data/Iterators/Consumers/Access.lean @@ -6,8 +6,11 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Consumers.Loop public import Init.Data.Iterators.Consumers.Monadic.Access +public import Init.Data.Iterators.Consumers.Partial +public import Init.Data.Iterators.Consumers.Total +public import Init.Ext +public import Init.WFExtrinsicFix set_option linter.missingDocs true diff --git a/src/Init/Data/Iterators/Consumers/Loop.lean b/src/Init/Data/Iterators/Consumers/Loop.lean index 9370f7e77f..005feac839 100644 --- a/src/Init/Data/Iterators/Consumers/Loop.lean +++ b/src/Init/Data/Iterators/Consumers/Loop.lean @@ -6,8 +6,9 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Consumers.Collect public import Init.Data.Iterators.Consumers.Monadic.Loop +public import Init.Data.Iterators.Consumers.Partial +public import Init.Data.Iterators.Consumers.Total set_option linter.missingDocs true diff --git a/src/Init/Data/Iterators/Consumers/Monadic/Collect.lean b/src/Init/Data/Iterators/Consumers/Monadic/Collect.lean index e5b35a75ad..69464b868d 100644 --- a/src/Init/Data/Iterators/Consumers/Monadic/Collect.lean +++ b/src/Init/Data/Iterators/Consumers/Monadic/Collect.lean @@ -8,8 +8,8 @@ module prelude public import Init.Data.Iterators.Consumers.Monadic.Partial public import Init.Data.Iterators.Consumers.Monadic.Total -public import Init.Data.Iterators.Internal.LawfulMonadLiftFunction public import Init.WFExtrinsicFix +public import Init.Ext set_option linter.missingDocs true diff --git a/src/Init/Data/Iterators/Consumers/Monadic/Loop.lean b/src/Init/Data/Iterators/Consumers/Monadic/Loop.lean index 2cb67bf4bf..dd36749558 100644 --- a/src/Init/Data/Iterators/Consumers/Monadic/Loop.lean +++ b/src/Init/Data/Iterators/Consumers/Monadic/Loop.lean @@ -10,6 +10,7 @@ public import Init.Data.Iterators.Consumers.Monadic.Partial public import Init.Data.Iterators.Internal.LawfulMonadLiftFunction public import Init.WFExtrinsicFix public import Init.Data.Iterators.Consumers.Monadic.Total +import Init.PropLemmas set_option linter.missingDocs true diff --git a/src/Init/Data/Iterators/Consumers/Stream.lean b/src/Init/Data/Iterators/Consumers/Stream.lean index b62968042a..9e477f0663 100644 --- a/src/Init/Data/Iterators/Consumers/Stream.lean +++ b/src/Init/Data/Iterators/Consumers/Stream.lean @@ -7,7 +7,7 @@ module prelude public import Init.Data.Stream -public import Init.Data.Iterators.Consumers.Access +public import Init.Data.Iterators.Consumers.Monadic.Access set_option linter.missingDocs true diff --git a/src/Init/Data/Iterators/Lemmas/Combinators/Attach.lean b/src/Init/Data/Iterators/Lemmas/Combinators/Attach.lean index c5f70936ca..44c67fb79b 100644 --- a/src/Init/Data/Iterators/Lemmas/Combinators/Attach.lean +++ b/src/Init/Data/Iterators/Lemmas/Combinators/Attach.lean @@ -9,10 +9,11 @@ prelude public import Init.Data.Iterators.Combinators.Attach import all Init.Data.Iterators.Combinators.Attach import all Init.Data.Iterators.Combinators.Monadic.Attach -public import Init.Data.Iterators.Lemmas.Combinators.Monadic.Attach public import Init.Data.Iterators.Lemmas.Consumers.Collect -public import Init.Data.Iterators.Lemmas.Consumers.Loop public import Init.Data.Array.Attach +public import Init.Data.Iterators.Consumers.Loop +import Init.Data.Iterators.Lemmas.Combinators.Monadic.Attach +import Init.Data.Iterators.Lemmas.Consumers.Loop public section diff --git a/src/Init/Data/Iterators/Lemmas/Combinators/FilterMap.lean b/src/Init/Data/Iterators/Lemmas/Combinators/FilterMap.lean index 84f72bda55..b2811ecdf3 100644 --- a/src/Init/Data/Iterators/Lemmas/Combinators/FilterMap.lean +++ b/src/Init/Data/Iterators/Lemmas/Combinators/FilterMap.lean @@ -6,10 +6,17 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Lemmas.Consumers -public import Init.Data.Iterators.Lemmas.Combinators.Monadic.FilterMap public import Init.Data.Iterators.Combinators.FilterMap -import Init.Control.Lawful.MonadAttach.Lemmas +public import Init.Data.Iterators.Consumers.Collect +public import Init.Data.Iterators.Consumers.Loop +public import Init.Data.List.Control +import Init.Data.Array.Lemmas +import Init.Data.Bool +import Init.Data.Iterators.Lemmas.Basic +import Init.Data.Iterators.Lemmas.Combinators.Monadic.FilterMap +import Init.Data.Iterators.Lemmas.Consumers.Collect +import Init.Data.Iterators.Lemmas.Consumers.Loop +import Init.Data.Iterators.Lemmas.Consumers.Monadic.Loop public section diff --git a/src/Init/Data/Iterators/Lemmas/Combinators/FlatMap.lean b/src/Init/Data/Iterators/Lemmas/Combinators/FlatMap.lean index 362cddb639..5d1bf63d65 100644 --- a/src/Init/Data/Iterators/Lemmas/Combinators/FlatMap.lean +++ b/src/Init/Data/Iterators/Lemmas/Combinators/FlatMap.lean @@ -9,8 +9,12 @@ prelude import Init.Data.Iterators.Lemmas.Combinators.FilterMap public import Init.Data.Iterators.Combinators.FlatMap import all Init.Data.Iterators.Combinators.FlatMap -public import Init.Data.Iterators.Lemmas.Combinators.Monadic.FlatMap -import Init.Control.Lawful.MonadAttach.Lemmas +public import Init.Data.Iterators.Combinators.FilterMap +public import Init.Data.Iterators.Consumers.Collect +import Init.Data.Iterators.Lemmas.Combinators.Monadic.FilterMap +import Init.Data.Iterators.Lemmas.Combinators.Monadic.FlatMap +import Init.Data.List.Monadic +import Init.Data.Option.Lemmas namespace Std open Std.Internal Std.Iterators diff --git a/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/Attach.lean b/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/Attach.lean index 5d356d40cb..91b4c1b423 100644 --- a/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/Attach.lean +++ b/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/Attach.lean @@ -8,8 +8,12 @@ module prelude public import Init.Data.Iterators.Combinators.Monadic.Attach import all Init.Data.Iterators.Combinators.Monadic.Attach -public import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect -public import Init.Data.Iterators.Lemmas.Consumers.Monadic.Loop +public import Init.Data.Iterators.Consumers.Monadic.Collect +public import Init.Data.List.Attach +import Init.Data.Array.Lemmas +import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect +import Init.Data.Iterators.Lemmas.Consumers.Monadic.Loop +import Init.Data.Iterators.Lemmas.Monadic.Basic public section diff --git a/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/FilterMap.lean b/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/FilterMap.lean index bb41e62517..05c9113137 100644 --- a/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/FilterMap.lean +++ b/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/FilterMap.lean @@ -7,10 +7,14 @@ module prelude public import Init.Data.Iterators.Combinators.Monadic.FilterMap -public import Init.Data.Iterators.Lemmas.Consumers.Monadic import all Init.Data.Iterators.Consumers.Monadic.Collect -import Init.Control.Lawful.MonadAttach.Lemmas import Init.Data.Array.Monadic +public import Init.Data.Iterators.Consumers.Monadic.Collect +public import Init.Data.List.Control +import Init.Data.Bool +import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect +import Init.Data.Iterators.Lemmas.Consumers.Monadic.Loop +import Init.Data.Iterators.Lemmas.Monadic.Basic public section diff --git a/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/FlatMap.lean b/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/FlatMap.lean index cb8ea6dd1d..9a5f792712 100644 --- a/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/FlatMap.lean +++ b/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/FlatMap.lean @@ -10,6 +10,10 @@ import Init.Data.Iterators.Lemmas.Combinators.Monadic.FilterMap public import Init.Data.Iterators.Combinators.Monadic.FlatMap import all Init.Data.Iterators.Combinators.Monadic.FlatMap +public import Init.Data.Iterators.Consumers.Monadic.Collect +import Init.Data.Array.Lemmas +import Init.Data.Iterators.Lemmas.Consumers.Monadic +import Init.Data.Iterators.Lemmas.Monadic.Basic namespace Std open Std.Internal Std.Iterators diff --git a/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/Take.lean b/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/Take.lean index d24632d81e..18c278f2bd 100644 --- a/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/Take.lean +++ b/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/Take.lean @@ -7,7 +7,10 @@ module prelude public import Init.Data.Iterators.Combinators.Monadic.Take -public import Init.Data.Iterators.Lemmas.Consumers.Monadic +public import Init.Data.Iterators.Consumers.Monadic.Collect +import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect +import Init.Data.Iterators.Lemmas.Monadic.Basic +import Init.Data.Nat.Lemmas @[expose] public section diff --git a/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/ULift.lean b/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/ULift.lean index 16c7095646..247b7c6db7 100644 --- a/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/ULift.lean +++ b/src/Init/Data/Iterators/Lemmas/Combinators/Monadic/ULift.lean @@ -7,8 +7,10 @@ module prelude public import Init.Data.Iterators.Combinators.Monadic.ULift -public import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect -public import Init.Data.Iterators.Lemmas.Consumers.Monadic.Loop +import Init.Data.Array.Lemmas +import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect +import Init.Data.Iterators.Lemmas.Consumers.Monadic.Loop +import Init.Data.Iterators.Lemmas.Monadic.Basic public section diff --git a/src/Init/Data/Iterators/Lemmas/Combinators/Take.lean b/src/Init/Data/Iterators/Lemmas/Combinators/Take.lean index 7ebed8cedc..85fb8060c0 100644 --- a/src/Init/Data/Iterators/Lemmas/Combinators/Take.lean +++ b/src/Init/Data/Iterators/Lemmas/Combinators/Take.lean @@ -8,7 +8,13 @@ module prelude public import Init.Data.Iterators.Combinators.Take public import Init.Data.Iterators.Lemmas.Combinators.Monadic.Take -public import Init.Data.Iterators.Lemmas.Consumers +public import Init.Data.Iterators.Consumers.Access +public import Init.Data.Iterators.Consumers.Collect +import Init.Data.Array.Lemmas +import Init.Data.Iterators.Lemmas.Basic +import Init.Data.Iterators.Lemmas.Consumers.Access +import Init.Data.Iterators.Lemmas.Consumers.Collect +import Init.Data.List.Nat.TakeDrop @[expose] public section diff --git a/src/Init/Data/Iterators/Lemmas/Combinators/ULift.lean b/src/Init/Data/Iterators/Lemmas/Combinators/ULift.lean index af1983e64c..65c8f3d6cf 100644 --- a/src/Init/Data/Iterators/Lemmas/Combinators/ULift.lean +++ b/src/Init/Data/Iterators/Lemmas/Combinators/ULift.lean @@ -8,9 +8,12 @@ module prelude public import Init.Data.Iterators.Combinators.ULift import all Init.Data.Iterators.Combinators.ULift -public import Init.Data.Iterators.Lemmas.Combinators.Monadic.ULift -public import Init.Data.Iterators.Lemmas.Consumers.Collect -public import Init.Data.Iterators.Lemmas.Consumers.Loop +public import Init.Data.Iterators.Consumers.Collect +public import Init.Data.Iterators.Consumers.Loop +import Init.Data.Array.Lemmas +import Init.Data.Iterators.Lemmas.Combinators.Monadic.ULift +import Init.Data.Iterators.Lemmas.Consumers.Collect +import Init.Data.Iterators.Lemmas.Consumers.Loop public section diff --git a/src/Init/Data/Iterators/Lemmas/Consumers/Access.lean b/src/Init/Data/Iterators/Lemmas/Consumers/Access.lean index 7f65ada4eb..43bd0f8c9d 100644 --- a/src/Init/Data/Iterators/Lemmas/Consumers/Access.lean +++ b/src/Init/Data/Iterators/Lemmas/Consumers/Access.lean @@ -7,7 +7,6 @@ module prelude public import Init.Data.Iterators.Consumers.Access -import Init.Data.Iterators.Lemmas.Basic namespace Std.Iter open Std.Iterators diff --git a/src/Init/Data/Iterators/Lemmas/Consumers/Collect.lean b/src/Init/Data/Iterators/Lemmas/Consumers/Collect.lean index 4cbd67706a..939816b5e9 100644 --- a/src/Init/Data/Iterators/Lemmas/Consumers/Collect.lean +++ b/src/Init/Data/Iterators/Lemmas/Consumers/Collect.lean @@ -6,13 +6,17 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Lemmas.Basic -public import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect public import Init.Data.Iterators.Consumers.Access import all Init.Data.Iterators.Consumers.Access import all Init.Data.Iterators.Consumers.Collect import all Init.Data.Iterators.Consumers.Total import all Init.Data.Iterators.Consumers.Monadic.Total +public import Init.Data.Iterators.Consumers.Collect +import Init.Data.Array.Bootstrap +import Init.Data.Array.Lemmas +import Init.Data.Iterators.Lemmas.Basic +import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/Iterators/Lemmas/Consumers/Loop.lean b/src/Init/Data/Iterators/Lemmas/Consumers/Loop.lean index bda20f4589..62c9ae918e 100644 --- a/src/Init/Data/Iterators/Lemmas/Consumers/Loop.lean +++ b/src/Init/Data/Iterators/Lemmas/Consumers/Loop.lean @@ -6,12 +6,17 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Lemmas.Consumers.Collect -public import Init.Data.Iterators.Lemmas.Consumers.Monadic.Loop import all Init.Data.Iterators.Lemmas.Consumers.Monadic.Loop import all Init.Data.Iterators.Consumers.Loop import all Init.Data.Iterators.Consumers.Monadic.Collect import Init.Data.Array.Monadic +public import Init.Data.Iterators.Consumers.Collect +public import Init.Data.Iterators.Consumers.Loop +public import Init.Data.List.Monadic +import Init.Data.Iterators.Lemmas.Basic +import Init.Data.Iterators.Lemmas.Consumers.Collect +import Init.Data.List.Find +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/Iterators/Lemmas/Consumers/Monadic/Collect.lean b/src/Init/Data/Iterators/Lemmas/Consumers/Monadic/Collect.lean index d4fbd96085..c1a9330390 100644 --- a/src/Init/Data/Iterators/Lemmas/Consumers/Monadic/Collect.lean +++ b/src/Init/Data/Iterators/Lemmas/Consumers/Monadic/Collect.lean @@ -6,12 +6,14 @@ Authors: Paul Reichert module prelude -public import Init.Data.Array.Lemmas -public import Init.Data.Iterators.Lemmas.Monadic.Basic public import Init.Data.Iterators.Consumers.Monadic.Collect import all Init.Data.Iterators.Consumers.Monadic.Collect import all Init.Data.Iterators.Consumers.Monadic.Total import all Init.WFExtrinsicFix +public import Init.Control.Lawful +import Init.Data.Array.Bootstrap +import Init.Data.Array.Lemmas +import Init.Data.Iterators.Lemmas.Monadic.Basic public section diff --git a/src/Init/Data/Iterators/Lemmas/Consumers/Monadic/Loop.lean b/src/Init/Data/Iterators/Lemmas/Consumers/Monadic/Loop.lean index 1d742483c2..10c29290b6 100644 --- a/src/Init/Data/Iterators/Lemmas/Consumers/Monadic/Loop.lean +++ b/src/Init/Data/Iterators/Lemmas/Consumers/Monadic/Loop.lean @@ -6,9 +6,15 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect public import Init.Data.Iterators.Consumers.Monadic.Loop import all Init.Data.Iterators.Consumers.Monadic.Loop +public import Init.Data.Iterators.Consumers.Monadic.Collect +public import Init.Data.List.Control +import Init.Data.Array.Lemmas +import Init.Data.Bool +import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect +import Init.Data.Iterators.Lemmas.Monadic.Basic +import Init.Omega public section diff --git a/src/Init/Data/Iterators/Lemmas/Producers/List.lean b/src/Init/Data/Iterators/Lemmas/Producers/List.lean index e49423bbc8..ffb9894a10 100644 --- a/src/Init/Data/Iterators/Lemmas/Producers/List.lean +++ b/src/Init/Data/Iterators/Lemmas/Producers/List.lean @@ -6,9 +6,9 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Lemmas.Consumers.Collect public import Init.Data.Iterators.Producers.List -public import Init.Data.Iterators.Lemmas.Producers.Monadic.List +import Init.Data.Iterators.Lemmas.Consumers.Collect +import Init.Data.Iterators.Lemmas.Producers.Monadic.List @[expose] public section diff --git a/src/Init/Data/Iterators/Lemmas/Producers/Monadic/List.lean b/src/Init/Data/Iterators/Lemmas/Producers/Monadic/List.lean index f8db191d7f..5924c76916 100644 --- a/src/Init/Data/Iterators/Lemmas/Producers/Monadic/List.lean +++ b/src/Init/Data/Iterators/Lemmas/Producers/Monadic/List.lean @@ -6,8 +6,9 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Lemmas.Consumers.Monadic public import Init.Data.Iterators.Producers.Monadic.List +import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect +import Init.Data.List.ToArray @[expose] public section diff --git a/src/Init/Data/Iterators/PostconditionMonad.lean b/src/Init/Data/Iterators/PostconditionMonad.lean index 205bcbc8ff..3adc32dd52 100644 --- a/src/Init/Data/Iterators/PostconditionMonad.lean +++ b/src/Init/Data/Iterators/PostconditionMonad.lean @@ -7,9 +7,11 @@ module prelude public import Init.Control.Lawful.Basic -public import Init.Data.Subtype.Basic -public import Init.PropLemmas public import Init.Control.Lawful.MonadLift.Basic +public import Init.Ext +public import Init.NotationExtra +import Init.Data.Subtype.Basic +import Init.PropLemmas public section diff --git a/src/Init/Data/Iterators/Producers/Monadic/List.lean b/src/Init/Data/Iterators/Producers/Monadic/List.lean index b8db65e64e..31b1f43091 100644 --- a/src/Init/Data/Iterators/Producers/Monadic/List.lean +++ b/src/Init/Data/Iterators/Producers/Monadic/List.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.Iterators.Consumers +import Init.Data.Nat.Lemmas @[expose] public section diff --git a/src/Init/Data/Iterators/ToIterator.lean b/src/Init/Data/Iterators/ToIterator.lean index 65bcfb3874..a80cba068f 100644 --- a/src/Init/Data/Iterators/ToIterator.lean +++ b/src/Init/Data/Iterators/ToIterator.lean @@ -6,7 +6,7 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Consumers.Loop +public import Init.Data.Iterators.Basic public section diff --git a/src/Init/Data/List.lean b/src/Init/Data/List.lean index 3e0dc8481a..97377630d4 100644 --- a/src/Init/Data/List.lean +++ b/src/Init/Data/List.lean @@ -34,3 +34,4 @@ public import Init.Data.List.MapIdx public import Init.Data.List.OfFn public import Init.Data.List.FinRange public import Init.Data.List.Lex +public import Init.Data.List.Range diff --git a/src/Init/Data/List/Attach.lean b/src/Init/Data/List/Attach.lean index b1b5bb5973..660518dc26 100644 --- a/src/Init/Data/List/Attach.lean +++ b/src/Init/Data/List/Attach.lean @@ -7,8 +7,9 @@ module prelude import all Init.Data.List.Lemmas -- for dsimping with `getElem?_cons_succ` -public import Init.Data.List.Count -public import Init.Data.Subtype.Basic +public import Init.Data.List.Lemmas +import Init.Data.List.Count +import Init.Data.Subtype.Basic public section diff --git a/src/Init/Data/List/Basic.lean b/src/Init/Data/List/Basic.lean index 1f380c4130..72cbdf71bc 100644 --- a/src/Init/Data/List/Basic.lean +++ b/src/Init/Data/List/Basic.lean @@ -7,7 +7,10 @@ module prelude public import Init.Data.List.Notation -public import Init.Data.Nat.Div.Basic +public import Init.Data.Zero +public import Init.Grind.Tactics +public import Init.SimpLemmas +import Init.Data.Nat.Basic public section diff --git a/src/Init/Data/List/BasicAux.lean b/src/Init/Data/List/BasicAux.lean index 123f322713..750751cbf8 100644 --- a/src/Init/Data/List/BasicAux.lean +++ b/src/Init/Data/List/BasicAux.lean @@ -6,7 +6,12 @@ Author: Leonardo de Moura module prelude -public import Init.Data.Nat.Linear +public import Init.GetElem +public import Init.WFTactics +import Init.ByCases +import Init.Classical +import Init.Data.Array.Basic +import Init.Data.Nat.Linear public section diff --git a/src/Init/Data/List/Count.lean b/src/Init/Data/List/Count.lean index 4cd2cf5477..514beca269 100644 --- a/src/Init/Data/List/Count.lean +++ b/src/Init/Data/List/Count.lean @@ -6,8 +6,16 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.List.Sublist -import Init.Grind.Util +import Init.Grind.Util -- shake: keep (`@[grind]` dependency) +public import Init.BinderPredicates +public import Init.Ext +public import Init.NotationExtra +import Init.ByCases +import Init.Data.Bool +import Init.Data.List.Lemmas +import Init.Data.List.Sublist +import Init.Data.Option.Lemmas +import Init.TacticsExtra public section diff --git a/src/Init/Data/List/Erase.lean b/src/Init/Data/List/Erase.lean index dd778e246d..043b4fd6a5 100644 --- a/src/Init/Data/List/Erase.lean +++ b/src/Init/Data/List/Erase.lean @@ -7,7 +7,18 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.List.Find +public import Init.BinderPredicates +public import Init.Ext +public import Init.NotationExtra +import Init.ByCases +import Init.Data.Bool +import Init.Data.List.Find +import Init.Data.List.Pairwise +import Init.Data.List.Sublist +import Init.Data.List.TakeDrop +import Init.Data.Nat.Lemmas +import Init.Omega +import Init.TacticsExtra public section diff --git a/src/Init/Data/List/FinRange.lean b/src/Init/Data/List/FinRange.lean index aa86031d2c..6f9b08b943 100644 --- a/src/Init/Data/List/FinRange.lean +++ b/src/Init/Data/List/FinRange.lean @@ -7,7 +7,9 @@ module prelude import all Init.Data.List.OfFn -public import Init.Data.List.Monadic +public import Init.Data.List.Control +public import Init.Data.List.OfFn +import Init.Data.List.Monadic public section diff --git a/src/Init/Data/List/Find.lean b/src/Init/Data/List/Find.lean index 1db28dac46..57f9ccb471 100644 --- a/src/Init/Data/List/Find.lean +++ b/src/Init/Data/List/Find.lean @@ -7,10 +7,16 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.List.Range -public import Init.Data.List.Impl import all Init.Data.List.Attach -public import Init.Data.Fin.Lemmas +public import Init.Data.List.Attach +import Init.Data.Fin.Lemmas +import Init.Data.List.Impl +import Init.Data.List.Range +import Init.Data.List.Sublist +import Init.Data.List.TakeDrop +import Init.Data.Nat.Lemmas +import Init.Data.Prod +import Init.Omega public section diff --git a/src/Init/Data/List/Impl.lean b/src/Init/Data/List/Impl.lean index 6b85759293..e7d073ac1a 100644 --- a/src/Init/Data/List/Impl.lean +++ b/src/Init/Data/List/Impl.lean @@ -6,7 +6,11 @@ Authors: Leonardo de Moura module prelude -public import Init.Data.Array.Bootstrap +public import Init.Ext +import Init.Data.Array.Bootstrap +import Init.Data.Bool +import Init.Data.List.Lemmas +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/List/Int/Sum.lean b/src/Init/Data/List/Int/Sum.lean index 2f83ff6464..6b8de8528f 100644 --- a/src/Init/Data/List/Int/Sum.lean +++ b/src/Init/Data/List/Int/Sum.lean @@ -6,9 +6,11 @@ Authors: Kim Morrison, Sebastian Graf, Paul Reichert module prelude -public import Init.Data.Int.DivMod.Bootstrap import Init.Data.Int.DivMod.Lemmas import Init.Data.List.MinMax +public import Init.Data.Int.DivMod.Basic +public import Init.Data.List.Basic +import Init.Omega public section diff --git a/src/Init/Data/List/Lemmas.lean b/src/Init/Data/List/Lemmas.lean index 76fc5b9447..b0e7d1550a 100644 --- a/src/Init/Data/List/Lemmas.lean +++ b/src/Init/Data/List/Lemmas.lean @@ -7,13 +7,17 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.Option.Lemmas public import Init.Data.List.BasicAux import all Init.Data.List.BasicAux public import Init.Data.List.Control import all Init.Data.List.Control public import Init.BinderPredicates import Init.Grind.Annotated +public import Init.Data.BEq +public import Init.Data.Option.Instances +import Init.Data.Bool +import Init.Data.Option.Lemmas +import Init.TacticsExtra grind_annotated "2025-01-24" diff --git a/src/Init/Data/List/Lex.lean b/src/Init/Data/List/Lex.lean index 90145021d7..5b27bfa374 100644 --- a/src/Init/Data/List/Lex.lean +++ b/src/Init/Data/List/Lex.lean @@ -6,8 +6,17 @@ Authors: Kim Morrison module prelude -public import Init.Data.List.Nat.TakeDrop import Init.Data.Order.Lemmas +public import Init.Data.BEq +public import Init.Data.Order.Classes +public import Init.Ext +public import Init.NotationExtra +import Init.ByCases +import Init.Data.Bool +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.TakeDrop +import Init.Data.Nat.Lemmas +import Init.TacticsExtra public section diff --git a/src/Init/Data/List/MapIdx.lean b/src/Init/Data/List/MapIdx.lean index 8c406d192c..37501e4081 100644 --- a/src/Init/Data/List/MapIdx.lean +++ b/src/Init/Data/List/MapIdx.lean @@ -7,8 +7,17 @@ Authors: Kim Morrison, Mario Carneiro module prelude -public import Init.Data.List.Nat.Range public import Init.Data.Option.Attach +public import Init.Data.List.OfFn +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.List.Nat.Range +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.Range +import Init.Data.List.TakeDrop +import Init.Data.Prod +import Init.Data.Subtype.Basic +import Init.Omega public section diff --git a/src/Init/Data/List/MinMax.lean b/src/Init/Data/List/MinMax.lean index b7d27683a0..1b0e1e4970 100644 --- a/src/Init/Data/List/MinMax.lean +++ b/src/Init/Data/List/MinMax.lean @@ -6,9 +6,14 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.List.Pairwise public import Init.Data.Subtype.Order import Init.Data.Order.Lemmas +public import Init.Data.List.Attach +import Init.Data.Bool +import Init.Data.List.Pairwise +import Init.Data.List.Sublist +import Init.Data.Option.Lemmas +import Init.Data.Subtype.Basic public section diff --git a/src/Init/Data/List/MinMaxIdx.lean b/src/Init/Data/List/MinMaxIdx.lean index 12d813c800..90061c47fb 100644 --- a/src/Init/Data/List/MinMaxIdx.lean +++ b/src/Init/Data/List/MinMaxIdx.lean @@ -7,13 +7,12 @@ module prelude public import Init.Data.List.MinMaxOn -import Init.Data.List.MinMaxOn -public import Init.Data.List.Pairwise -public import Init.Data.Subtype.Order -import Init.Data.Order.Lemmas import Init.Data.List.Nat.TakeDrop -import Init.Data.Order.Opposite -import Init.Data.Nat.Order +import Init.ByCases +import Init.Data.Bool +import Init.Data.List.Sublist +import Init.Data.Nat.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/List/MinMaxOn.lean b/src/Init/Data/List/MinMaxOn.lean index e7f2df6428..f9672acaa0 100644 --- a/src/Init/Data/List/MinMaxOn.lean +++ b/src/Init/Data/List/MinMaxOn.lean @@ -7,13 +7,14 @@ module prelude public import Init.Data.Order.MinMaxOn -public import Init.Data.Int.OfNat public import Init.Data.List.Lemmas public import Init.Data.List.TakeDrop import Init.Data.Order.Lemmas import Init.Data.List.Sublist import Init.Data.List.MinMax -import Init.Data.Order.Opposite +public import Init.Data.Option.Lemmas +import Init.ByCases +import Init.Data.Bool set_option doc.verso true set_option linter.missingDocs true diff --git a/src/Init/Data/List/Monadic.lean b/src/Init/Data/List/Monadic.lean index 419f78451d..8dd6a2a530 100644 --- a/src/Init/Data/List/Monadic.lean +++ b/src/Init/Data/List/Monadic.lean @@ -7,9 +7,9 @@ module prelude public import Init.Data.List.Attach -public import Init.Data.List.OfFn -public import Init.Data.Array.Bootstrap import all Init.Data.List.Control +import Init.Data.Array.Bootstrap +import Init.Data.Bool public section diff --git a/src/Init/Data/List/Nat/BEq.lean b/src/Init/Data/List/Nat/BEq.lean index 765a99d4b8..50003973e5 100644 --- a/src/Init/Data/List/Nat/BEq.lean +++ b/src/Init/Data/List/Nat/BEq.lean @@ -8,6 +8,7 @@ module prelude public import Init.Data.Nat.Lemmas import Init.Data.List.Lemmas +import Init.Data.Bool public section diff --git a/src/Init/Data/List/Nat/Basic.lean b/src/Init/Data/List/Nat/Basic.lean index 15e6a068f7..d74a60c5be 100644 --- a/src/Init/Data/List/Nat/Basic.lean +++ b/src/Init/Data/List/Nat/Basic.lean @@ -6,9 +6,14 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.List.Find public import Init.Data.List.MinMax -import Init.Data.Nat.Order +import Init.Data.Bool +import Init.Data.List.Count +import Init.Data.Nat.Lemmas +import Init.Data.Nat.Linear +import Init.Data.Nat.MinMax +import Init.Data.Option.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/List/Nat/Count.lean b/src/Init/Data/List/Nat/Count.lean index 5d212ac322..94e1a55ad7 100644 --- a/src/Init/Data/List/Nat/Count.lean +++ b/src/Init/Data/List/Nat/Count.lean @@ -6,8 +6,15 @@ Authors: Kim Morrison module prelude -public import Init.Data.List.Count -public import Init.Data.Nat.Lemmas +public import Init.GetElem +import Init.ByCases +import Init.Data.Bool +import Init.Data.List.Count +import Init.Data.List.Lemmas +import Init.Data.List.Sublist +import Init.Data.Nat.Lemmas +import Init.Data.Nat.MinMax +import Init.Omega public section diff --git a/src/Init/Data/List/Nat/Erase.lean b/src/Init/Data/List/Nat/Erase.lean index ff3f8fb9fe..e4d2441eb5 100644 --- a/src/Init/Data/List/Nat/Erase.lean +++ b/src/Init/Data/List/Nat/Erase.lean @@ -6,8 +6,11 @@ Authors: Kim Morrison module prelude -public import Init.Data.List.Nat.TakeDrop -public import Init.Data.List.Erase +public import Init.GetElem +import Init.Data.List.Erase +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.TakeDrop +import Init.Omega public section diff --git a/src/Init/Data/List/Nat/Find.lean b/src/Init/Data/List/Nat/Find.lean index c7c71cada7..a9718613bf 100644 --- a/src/Init/Data/List/Nat/Find.lean +++ b/src/Init/Data/List/Nat/Find.lean @@ -6,7 +6,15 @@ Authors: Kim Morrison module prelude -public import Init.Data.List.Nat.Range +public import Init.BinderPredicates +public import Init.NotationExtra +import Init.Data.List.Find +import Init.Data.List.Nat.Range +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.TakeDrop +import Init.Data.Option.Lemmas +import Init.Data.Prod +import Init.Omega public section diff --git a/src/Init/Data/List/Nat/InsertIdx.lean b/src/Init/Data/List/Nat/InsertIdx.lean index cd2179429b..a1e0ace46a 100644 --- a/src/Init/Data/List/Nat/InsertIdx.lean +++ b/src/Init/Data/List/Nat/InsertIdx.lean @@ -6,7 +6,13 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.List.Nat.Modify +public import Init.GetElem +import Init.Data.List.Erase +import Init.Data.List.Lemmas +import Init.Data.List.Nat.Modify +import Init.Data.Nat.Lemmas +import Init.Data.Option.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/List/Nat/Modify.lean b/src/Init/Data/List/Nat/Modify.lean index df4737c5a5..829f204d67 100644 --- a/src/Init/Data/List/Nat/Modify.lean +++ b/src/Init/Data/List/Nat/Modify.lean @@ -7,7 +7,16 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.List.Nat.Erase +public import Init.Ext +public import Init.NotationExtra +import Init.ByCases +import Init.Data.List.Erase +import Init.Data.List.Nat.Erase +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.TakeDrop +import Init.Data.Nat.Lemmas +import Init.Data.Option.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/List/Nat/Pairwise.lean b/src/Init/Data/List/Nat/Pairwise.lean index 3ea050cb76..97eb00fcd7 100644 --- a/src/Init/Data/List/Nat/Pairwise.lean +++ b/src/Init/Data/List/Nat/Pairwise.lean @@ -6,7 +6,12 @@ Authors: Mario Carneiro, James Gallicchio module prelude -public import Init.Data.List.Nat.TakeDrop +public import Init.NotationExtra +import Init.Data.Fin.Lemmas +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.Pairwise +import Init.Data.List.Sublist +import Init.Data.List.TakeDrop public section diff --git a/src/Init/Data/List/Nat/Perm.lean b/src/Init/Data/List/Nat/Perm.lean index 5ef9790000..45a60f08a7 100644 --- a/src/Init/Data/List/Nat/Perm.lean +++ b/src/Init/Data/List/Nat/Perm.lean @@ -6,8 +6,12 @@ Authors: Kim Morrison module prelude -public import Init.Data.List.Nat.TakeDrop -public import Init.Data.List.Perm +public import Init.GetElem +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.Perm +import Init.Data.List.TakeDrop +import Init.Omega +import Init.TacticsExtra public section diff --git a/src/Init/Data/List/Nat/Range.lean b/src/Init/Data/List/Nat/Range.lean index f27fbbf6b3..258b26ad38 100644 --- a/src/Init/Data/List/Nat/Range.lean +++ b/src/Init/Data/List/Nat/Range.lean @@ -6,8 +6,19 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.List.Nat.TakeDrop -public import Init.Data.List.Erase +public import Init.Data.Nat.Lemmas +public import Init.Ext +import Init.ByCases +import Init.Data.List.Erase +import Init.Data.List.Find +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.Pairwise +import Init.Data.List.Range +import Init.Data.List.Zip +import Init.Data.Nat.Dvd +import Init.Data.Option.Lemmas +import Init.Omega +import Init.TacticsExtra public section diff --git a/src/Init/Data/List/Nat/Sublist.lean b/src/Init/Data/List/Nat/Sublist.lean index 443f301847..12143e2733 100644 --- a/src/Init/Data/List/Nat/Sublist.lean +++ b/src/Init/Data/List/Nat/Sublist.lean @@ -6,8 +6,15 @@ Authors: Kim Morrison module prelude -public import Init.Data.List.Nat.Basic -public import Init.Data.List.Nat.TakeDrop +public import Init.Data.Function +public import Init.Ext +public import Init.NotationExtra +import Init.Data.List.Nat.Basic +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.Sublist +import Init.Data.List.TakeDrop +import Init.Data.Nat.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/List/Nat/Sum.lean b/src/Init/Data/List/Nat/Sum.lean index 85bb70732c..4cd6c4b0e0 100644 --- a/src/Init/Data/List/Nat/Sum.lean +++ b/src/Init/Data/List/Nat/Sum.lean @@ -6,9 +6,14 @@ Authors: Kim Morrison, Sebastian Graf, Paul Reichert module prelude -public import Init.Data.Int.DivMod.Bootstrap -import Init.Data.Int.DivMod.Lemmas import Init.Data.List.MinMax +public import Init.BinderPredicates +public import Init.NotationExtra +import Init.Data.Nat.Div.Lemmas +import Init.Data.Nat.Lemmas +import Init.Data.Nat.MinMax +import Init.Data.Option.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/List/Nat/TakeDrop.lean b/src/Init/Data/List/Nat/TakeDrop.lean index 14b5738e6a..568a83b057 100644 --- a/src/Init/Data/List/Nat/TakeDrop.lean +++ b/src/Init/Data/List/Nat/TakeDrop.lean @@ -6,7 +6,17 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.List.Find +public import Init.Data.List.Lemmas +public import Init.Data.Nat.MinMax +import Init.ByCases +import Init.Data.Bool +import Init.Data.List.Find +import Init.Data.List.Sublist +import Init.Data.List.TakeDrop +import Init.Data.List.Zip +import Init.Data.Nat.Lemmas +import Init.Data.Option.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/List/Notation.lean b/src/Init/Data/List/Notation.lean index 4b61b8c403..d41a97a6ad 100644 --- a/src/Init/Data/List/Notation.lean +++ b/src/Init/Data/List/Notation.lean @@ -6,7 +6,8 @@ Author: Leonardo de Moura module prelude -public meta import Init.Data.Nat.Div.Basic +public meta import Init.Grind.Tactics +public import Init.Notation public section diff --git a/src/Init/Data/List/OfFn.lean b/src/Init/Data/List/OfFn.lean index f1b5186d36..f07e3ac75d 100644 --- a/src/Init/Data/List/OfFn.lean +++ b/src/Init/Data/List/OfFn.lean @@ -7,7 +7,11 @@ module prelude public import Init.Data.Fin.Fold -public import Init.Data.List.Lemmas +public import Init.NotationExtra +import Init.Data.Fin.Lemmas +import Init.Data.List.Lemmas +import Init.Data.Nat.Lemmas +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/List/Pairwise.lean b/src/Init/Data/List/Pairwise.lean index b8323894a4..ab72091378 100644 --- a/src/Init/Data/List/Pairwise.lean +++ b/src/Init/Data/List/Pairwise.lean @@ -7,6 +7,11 @@ module prelude public import Init.Data.List.Attach +import Init.ByCases +import Init.Data.List.Count +import Init.Data.List.Sublist +import Init.Data.List.TakeDrop +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/List/Perm.lean b/src/Init/Data/List/Perm.lean index bc8e3d9db3..349301ec96 100644 --- a/src/Init/Data/List/Perm.lean +++ b/src/Init/Data/List/Perm.lean @@ -6,8 +6,13 @@ Authors: Leonardo de Moura, Jeremy Avigad, Mario Carneiro module prelude -public import Init.Data.List.Erase import all Init.Data.List.Attach +public import Init.Data.List.Attach +import Init.Data.List.Erase +import Init.Data.List.Pairwise +import Init.Data.List.Sublist +import Init.Data.List.TakeDrop +import Init.Data.Nat.Lemmas public section diff --git a/src/Init/Data/List/Range.lean b/src/Init/Data/List/Range.lean index f86464ab5b..1239bb6bc3 100644 --- a/src/Init/Data/List/Range.lean +++ b/src/Init/Data/List/Range.lean @@ -6,8 +6,13 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.List.Pairwise -public import Init.Data.List.Zip +public import Init.BinderPredicates +public import Init.Ext +public import Init.NotationExtra +import Init.Data.List.Lemmas +import Init.Data.List.Sublist +import Init.Data.List.Zip +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/List/Sort/Basic.lean b/src/Init/Data/List/Sort/Basic.lean index c71d2aa8b7..3b62966c7f 100644 --- a/src/Init/Data/List/Sort/Basic.lean +++ b/src/Init/Data/List/Sort/Basic.lean @@ -6,7 +6,11 @@ Authors: Kim Morrison module prelude -public import Init.Data.List.Nat.TakeDrop +public import Init.Ext +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.TakeDrop +import Init.Data.Nat.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/List/Sort/Impl.lean b/src/Init/Data/List/Sort/Impl.lean index 11b3ae0cc8..41e13fca20 100644 --- a/src/Init/Data/List/Sort/Impl.lean +++ b/src/Init/Data/List/Sort/Impl.lean @@ -7,7 +7,9 @@ module prelude import all Init.Data.List.Sort.Basic -public import Init.Data.List.Sort.Lemmas +public import Init.Data.List.Sort.Basic +import Init.Data.List.Sort.Lemmas +import Init.Data.Nat.Linear public section diff --git a/src/Init/Data/List/Sort/Lemmas.lean b/src/Init/Data/List/Sort/Lemmas.lean index 6342e83918..c1a39e81de 100644 --- a/src/Init/Data/List/Sort/Lemmas.lean +++ b/src/Init/Data/List/Sort/Lemmas.lean @@ -6,10 +6,17 @@ Authors: Kim Morrison, Eric Wieser, François G. Dorais module prelude -public import Init.Data.List.Perm public import Init.Data.List.Sort.Basic import all Init.Data.List.Sort.Basic -public import Init.Data.List.Nat.Range +public import Init.BinderPredicates +public import Init.Data.Bool +import Init.Data.List.Nat.Range +import Init.Data.List.Pairwise +import Init.Data.List.Perm +import Init.Data.List.Range +import Init.Data.List.Sublist +import Init.Data.Nat.Linear +import Init.Data.Prod public section diff --git a/src/Init/Data/List/Sublist.lean b/src/Init/Data/List/Sublist.lean index 0649d5c7fd..dfce99100e 100644 --- a/src/Init/Data/List/Sublist.lean +++ b/src/Init/Data/List/Sublist.lean @@ -7,7 +7,13 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.List.TakeDrop +public import Init.BinderPredicates +public import Init.Ext +public import Init.PropLemmas +import Init.Data.Bool +import Init.Data.List.Lemmas +import Init.Data.List.TakeDrop +import Init.TacticsExtra public section diff --git a/src/Init/Data/List/TakeDrop.lean b/src/Init/Data/List/TakeDrop.lean index 8ff5a9295f..9f519ac2ed 100644 --- a/src/Init/Data/List/TakeDrop.lean +++ b/src/Init/Data/List/TakeDrop.lean @@ -7,7 +7,13 @@ module prelude import all Init.Data.List.Basic -public import Init.Data.List.Lemmas +public import Init.BinderPredicates +public import Init.Ext +import Init.ByCases +import Init.Data.Bool +import Init.Data.List.Lemmas +import Init.Data.Nat.Div.Basic +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/List/ToArray.lean b/src/Init/Data/List/ToArray.lean index ccf17cd8ed..34c8352fd6 100644 --- a/src/Init/Data/List/ToArray.lean +++ b/src/Init/Data/List/ToArray.lean @@ -8,9 +8,23 @@ module prelude import all Init.Data.List.Control public import Init.Data.List.Monadic -public import Init.Data.List.Nat.InsertIdx import all Init.Data.Array.Basic import all Init.Data.Array.Set +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.Bool +import Init.Data.List.Erase +import Init.Data.List.Find +import Init.Data.List.Nat.Erase +import Init.Data.List.Nat.InsertIdx +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.Sublist +import Init.Data.List.TakeDrop +import Init.Data.List.Zip +import Init.Data.Nat.Lemmas +import Init.Data.Option.Lemmas +import Init.Omega +import Init.TacticsExtra public section diff --git a/src/Init/Data/List/ToArrayImpl.lean b/src/Init/Data/List/ToArrayImpl.lean index fce7ae0249..6847221baf 100644 --- a/src/Init/Data/List/ToArrayImpl.lean +++ b/src/Init/Data/List/ToArrayImpl.lean @@ -6,7 +6,7 @@ Authors: Henrik Böving module prelude -public import Init.Data.List.Basic +public import Init.Prelude public section diff --git a/src/Init/Data/List/Zip.lean b/src/Init/Data/List/Zip.lean index ba153fcd5e..75787595ff 100644 --- a/src/Init/Data/List/Zip.lean +++ b/src/Init/Data/List/Zip.lean @@ -6,8 +6,12 @@ Authors: Parikshit Khanna, Jeremy Avigad, Leonardo de Moura, Floris van Doorn, M module prelude -public import Init.Data.List.TakeDrop public import Init.Data.Function +public import Init.Ext +public import Init.NotationExtra +import Init.Data.List.Lemmas +import Init.Data.List.TakeDrop +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/Nat/Bitwise/Basic.lean b/src/Init/Data/Nat/Bitwise/Basic.lean index b62018dec0..d5a19263f0 100644 --- a/src/Init/Data/Nat/Bitwise/Basic.lean +++ b/src/Init/Data/Nat/Bitwise/Basic.lean @@ -6,7 +6,10 @@ Authors: Leonardo de Moura module prelude -public import Init.Data.Nat.Div.Basic +public import Init.Grind.Tactics +import Init.Data.Nat.Div.Basic +meta import Init.MetaTypes +import Init.WFTactics public section diff --git a/src/Init/Data/Nat/Bitwise/Lemmas.lean b/src/Init/Data/Nat/Bitwise/Lemmas.lean index 253b44d25b..3052c57800 100644 --- a/src/Init/Data/Nat/Bitwise/Lemmas.lean +++ b/src/Init/Data/Nat/Bitwise/Lemmas.lean @@ -7,11 +7,16 @@ Authors: Joe Hendrix module prelude -public import Init.Data.Int.Pow import all Init.Data.Nat.Bitwise.Basic -public import Init.Data.Nat.Simproc -public import Init.TacticsExtra -import Init.BinderPredicates +public import Init.BinderPredicates +public import Init.Data.Bool +public import Init.Data.Nat.Log2 +import Init.ByCases +import Init.Data.Int.Pow +import Init.Data.Nat.Lemmas +import Init.Omega +import Init.RCases +import Init.TacticsExtra public section diff --git a/src/Init/Data/Nat/Control.lean b/src/Init/Data/Nat/Control.lean index dda47725e9..5ff15262f7 100644 --- a/src/Init/Data/Nat/Control.lean +++ b/src/Init/Data/Nat/Control.lean @@ -6,7 +6,8 @@ Author: Leonardo de Moura module prelude -public import Init.Omega +public import Init.Notation +import Init.Omega public section diff --git a/src/Init/Data/Nat/Coprime.lean b/src/Init/Data/Nat/Coprime.lean index be297ab90b..b8eac03865 100644 --- a/src/Init/Data/Nat/Coprime.lean +++ b/src/Init/Data/Nat/Coprime.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.Nat.Gcd +import Init.Data.Nat.Dvd public section diff --git a/src/Init/Data/Nat/Div/Basic.lean b/src/Init/Data/Nat/Div/Basic.lean index 98a7f0f358..b1645a4d16 100644 --- a/src/Init/Data/Nat/Div/Basic.lean +++ b/src/Init/Data/Nat/Div/Basic.lean @@ -6,8 +6,10 @@ Authors: Leonardo de Moura module prelude -public import Init.WFTactics -public meta import Init.MetaTypes +public import Init.Data.NeZero +public import Init.WF +meta import Init.MetaTypes +import Init.WFTactics public section diff --git a/src/Init/Data/Nat/Div/Lemmas.lean b/src/Init/Data/Nat/Div/Lemmas.lean index 95b7553b9d..b74db44843 100644 --- a/src/Init/Data/Nat/Div/Lemmas.lean +++ b/src/Init/Data/Nat/Div/Lemmas.lean @@ -6,8 +6,14 @@ Authors: Kim Morrison module prelude -public import Init.Data.Nat.Simproc import Init.TacticsExtra +public import Init.Data.Nat.Dvd +public import Init.NotationExtra +import Init.ByCases +import Init.Data.Nat.Lemmas +import Init.Data.Nat.Simproc +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Data/Nat/Dvd.lean b/src/Init/Data/Nat/Dvd.lean index 73d917cc06..996481d2e0 100644 --- a/src/Init/Data/Nat/Dvd.lean +++ b/src/Init/Data/Nat/Dvd.lean @@ -6,7 +6,11 @@ Authors: Leonardo de Moura, Jeremy Avigad, Mario Carneiro module prelude -public import Init.Meta +public import Init.Data.Nat.Div.Basic +public import Init.SimpLemmas +import Init.Data.List.Notation +import Init.Data.Nat.Basic +meta import Init.Meta.Defs public section diff --git a/src/Init/Data/Nat/Fold.lean b/src/Init/Data/Nat/Fold.lean index 0d289b9940..d7b6760e83 100644 --- a/src/Init/Data/Nat/Fold.lean +++ b/src/Init/Data/Nat/Fold.lean @@ -7,6 +7,9 @@ module prelude public import Init.Data.List.FinRange +import Init.Data.Fin.Lemmas +import Init.Data.List.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/Nat/Gcd.lean b/src/Init/Data/Nat/Gcd.lean index 60ef917ea4..487470c2fc 100644 --- a/src/Init/Data/Nat/Gcd.lean +++ b/src/Init/Data/Nat/Gcd.lean @@ -6,9 +6,11 @@ Authors: Jeremy Avigad, Leonardo de Moura, Mario Carneiro, Markus Himmel module prelude -public import Init.Data.Nat.Dvd public import Init.NotationExtra -public import Init.RCases +public import Init.Data.Nat.Div.Basic +import Init.Data.Nat.Dvd +import Init.RCases +import Init.WFTactics public section diff --git a/src/Init/Data/Nat/Lcm.lean b/src/Init/Data/Nat/Lcm.lean index cd13108468..72a9d77088 100644 --- a/src/Init/Data/Nat/Lcm.lean +++ b/src/Init/Data/Nat/Lcm.lean @@ -6,7 +6,10 @@ Authors: Jeremy Avigad, Leonardo de Moura, Mario Carneiro, Markus Himmel module prelude -public import Init.Data.Nat.Lemmas +public import Init.Data.Nat.Gcd +import Init.Data.Nat.Dvd +import Init.Data.Nat.Lemmas +import Init.RCases public section diff --git a/src/Init/Data/Nat/Lemmas.lean b/src/Init/Data/Nat/Lemmas.lean index 1b7ebe8a5d..14ef0aee44 100644 --- a/src/Init/Data/Nat/Lemmas.lean +++ b/src/Init/Data/Nat/Lemmas.lean @@ -7,13 +7,18 @@ module prelude import all Init.Data.Nat.Bitwise.Basic -public import Init.Data.Nat.MinMax public import Init.Data.Nat.Log2 import all Init.Data.Nat.Log2 -public import Init.Data.Nat.Power2.Basic -public import Init.Data.Nat.Mod import Init.TacticsExtra -import Init.BinderPredicates +public import Init.Data.Nat.Div.Basic +public import Init.PropLemmas +import Init.ByCases +import Init.Data.Nat.Dvd +import Init.Data.Nat.Linear +import Init.Data.Nat.MinMax +import Init.Data.Nat.Mod +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Data/Nat/Linear.lean b/src/Init/Data/Nat/Linear.lean index 0514e59588..61bc2adbb2 100644 --- a/src/Init/Data/Nat/Linear.lean +++ b/src/Init/Data/Nat/Linear.lean @@ -6,10 +6,10 @@ Authors: Leonardo de Moura module prelude -public import Init.ByCases -public import Init.Data.Prod public import Init.Data.RArray import Init.LawfulBEqTactics +import Init.ByCases +import Init.Data.Prod public section diff --git a/src/Init/Data/Nat/Log2.lean b/src/Init/Data/Nat/Log2.lean index 59162e7775..3e7666b99c 100644 --- a/src/Init/Data/Nat/Log2.lean +++ b/src/Init/Data/Nat/Log2.lean @@ -6,7 +6,10 @@ Authors: Gabriel Ebner, Robin Arnez module prelude -public import Init.Data.Nat.Linear +public import Init.Grind.Tactics +import Init.Data.Nat.Div.Basic +import Init.NotationExtra +import Init.WFTactics public section diff --git a/src/Init/Data/Nat/MinMax.lean b/src/Init/Data/Nat/MinMax.lean index 7a50036c05..a5072a240a 100644 --- a/src/Init/Data/Nat/MinMax.lean +++ b/src/Init/Data/Nat/MinMax.lean @@ -6,7 +6,9 @@ Authors: Leonardo de Moura, Jeremy Avigad, Mario Carneiro module prelude -public import Init.ByCases +public import Init.Data.Nat.Basic +import Init.ByCases +import Init.PropLemmas public section diff --git a/src/Init/Data/Nat/Mod.lean b/src/Init/Data/Nat/Mod.lean index 366cce004f..463a9cd95e 100644 --- a/src/Init/Data/Nat/Mod.lean +++ b/src/Init/Data/Nat/Mod.lean @@ -6,7 +6,10 @@ Authors: Kim Morrison module prelude -public import Init.Omega +public import Init.Grind.Tactics +import Init.Data.Nat.Dvd +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Data/Nat/Order.lean b/src/Init/Data/Nat/Order.lean index 543ea97bd6..35a2ae9728 100644 --- a/src/Init/Data/Nat/Order.lean +++ b/src/Init/Data/Nat/Order.lean @@ -8,7 +8,9 @@ module prelude public import Init.Data.Nat.Basic import Init.Data.Nat.MinMax -public import Init.Data.Order.Factories +public import Init.Data.Order.Classes +import Init.Data.Order.Factories +import Init.NotationExtra open Std diff --git a/src/Init/Data/Nat/Power2/Basic.lean b/src/Init/Data/Nat/Power2/Basic.lean index fa89e03949..eb668b42a1 100644 --- a/src/Init/Data/Nat/Power2/Basic.lean +++ b/src/Init/Data/Nat/Power2/Basic.lean @@ -6,7 +6,10 @@ Authors: Leonardo de Moura module prelude -public import Init.Data.Nat.Linear +public import Init.Grind.Tactics +import Init.Data.Nat.Linear +import Init.NotationExtra +import Init.WFTactics public section diff --git a/src/Init/Data/Nat/Power2/Lemmas.lean b/src/Init/Data/Nat/Power2/Lemmas.lean index ec584ae31e..0c27078249 100644 --- a/src/Init/Data/Nat/Power2/Lemmas.lean +++ b/src/Init/Data/Nat/Power2/Lemmas.lean @@ -7,7 +7,15 @@ module prelude import all Init.Data.Nat.Power2.Basic -public import Init.Data.Nat.Bitwise.Lemmas +public import Init.Data.Nat.Log2 +public import Init.Data.Nat.Power2.Basic +public import Init.PropLemmas +import Init.ByCases +import Init.Data.Int.Pow +import Init.Data.Nat.Bitwise.Lemmas +import Init.Data.Nat.Lemmas +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Data/Nat/SOM.lean b/src/Init/Data/Nat/SOM.lean index 483bc62d22..f5bc77f0bb 100644 --- a/src/Init/Data/Nat/SOM.lean +++ b/src/Init/Data/Nat/SOM.lean @@ -5,7 +5,11 @@ Authors: Leonardo de Moura -/ module prelude -public import Init.Data.List.BasicAux +public import Init.Data.Nat.Linear +import Init.ByCases +import Init.Data.List.BasicAux +import Init.Data.Prod +import Init.Meta public section namespace Nat.SOM diff --git a/src/Init/Data/Nat/Simproc.lean b/src/Init/Data/Nat/Simproc.lean index 9177637973..da022245ae 100644 --- a/src/Init/Data/Nat/Simproc.lean +++ b/src/Init/Data/Nat/Simproc.lean @@ -6,8 +6,9 @@ Authors: Joe Hendrix module prelude -public import Init.Data.Bool -public import Init.Data.Nat.Lemmas +public import Init.Grind.Tactics +import Init.Data.Bool +import Init.Data.Nat.Lemmas public section diff --git a/src/Init/Data/NeZero.lean b/src/Init/Data/NeZero.lean index 7e3361253f..6f8af22793 100644 --- a/src/Init/Data/NeZero.lean +++ b/src/Init/Data/NeZero.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.Zero +public import Init.Core public section diff --git a/src/Init/Data/OfScientific.lean b/src/Init/Data/OfScientific.lean index 38f79cc043..6887327f46 100644 --- a/src/Init/Data/OfScientific.lean +++ b/src/Init/Data/OfScientific.lean @@ -7,7 +7,8 @@ module prelude public import Init.Data.Float32 -public import Init.Data.Nat.Log2 +import Init.Data.Nat.Log2 +import Init.Meta public section diff --git a/src/Init/Data/Option/Array.lean b/src/Init/Data/Option/Array.lean index da53eba29f..40a1546132 100644 --- a/src/Init/Data/Option/Array.lean +++ b/src/Init/Data/Option/Array.lean @@ -6,9 +6,14 @@ Authors: Markus Himmel module prelude -public import Init.Data.Array.Lemmas -public import Init.Data.Option.List import all Init.Data.Option.Instances +public import Init.Control.Lawful +public import Init.Data.Option.Lemmas +import Init.Data.Array.Bootstrap +import Init.Data.Array.Lemmas +import Init.Data.Bool +import Init.Data.List.Zip +import Init.Data.Option.List public section diff --git a/src/Init/Data/Option/Attach.lean b/src/Init/Data/Option/Attach.lean index f3d731a302..39cc812639 100644 --- a/src/Init/Data/Option/Attach.lean +++ b/src/Init/Data/Option/Attach.lean @@ -6,8 +6,12 @@ Authors: Kim Morrison module prelude -public import Init.Data.Option.Array public import Init.Data.Array.Attach +public import Init.Data.Option.Lemmas +import Init.Data.Bool +import Init.Data.Option.Array +import Init.Data.Option.List +import Init.Data.Subtype.Basic public section diff --git a/src/Init/Data/Option/Function.lean b/src/Init/Data/Option/Function.lean index e1034b9ed7..e1735a438a 100644 --- a/src/Init/Data/Option/Function.lean +++ b/src/Init/Data/Option/Function.lean @@ -7,7 +7,7 @@ module prelude public import Init.Data.Function -import Init.Data.Option.Lemmas +import Init.NotationExtra public section diff --git a/src/Init/Data/Option/Lemmas.lean b/src/Init/Data/Option/Lemmas.lean index 340668685a..d0e823c625 100644 --- a/src/Init/Data/Option/Lemmas.lean +++ b/src/Init/Data/Option/Lemmas.lean @@ -9,9 +9,12 @@ prelude import all Init.Data.Option.BasicAux public import Init.Data.Option.Instances import all Init.Data.Option.Instances -public import Init.Data.BEq -public import Init.Classical public import Init.Ext +public import Init.Data.Option.BasicAux +public import Init.PropLemmas +import Init.Classical +import Init.Data.BEq +import Init.Data.Bool public section diff --git a/src/Init/Data/Option/List.lean b/src/Init/Data/Option/List.lean index 497f093f2b..a5893eaa62 100644 --- a/src/Init/Data/Option/List.lean +++ b/src/Init/Data/Option/List.lean @@ -6,9 +6,12 @@ Authors: Kim Morrison module prelude -public import Init.Data.List.Lemmas import all Init.Data.List.Control import all Init.Data.Option.Instances +public import Init.Data.List.Control +public import Init.Data.Option.Lemmas +import Init.Data.Bool +import Init.Data.List.Lemmas public section diff --git a/src/Init/Data/Option/Monadic.lean b/src/Init/Data/Option/Monadic.lean index abd97b478b..fccafe5507 100644 --- a/src/Init/Data/Option/Monadic.lean +++ b/src/Init/Data/Option/Monadic.lean @@ -8,7 +8,8 @@ module prelude import all Init.Data.Option.Instances -public import Init.Data.Option.Attach +public import Init.Control.Lawful +public import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/Ord/Array.lean b/src/Init/Data/Ord/Array.lean index 6450aec3cf..c231f893cd 100644 --- a/src/Init/Data/Ord/Array.lean +++ b/src/Init/Data/Ord/Array.lean @@ -8,6 +8,9 @@ module prelude public import Init.Data.Ord.Basic import Init.Omega +import Init.ByCases +import Init.Data.Array.Basic +import Init.WFTactics public section diff --git a/src/Init/Data/Ord/Basic.lean b/src/Init/Data/Ord/Basic.lean index 12b20dfb9e..e3ea9cb16f 100644 --- a/src/Init/Data/Ord/Basic.lean +++ b/src/Init/Data/Ord/Basic.lean @@ -9,6 +9,8 @@ prelude import Init.ByCases import Init.Ext public import Init.PropLemmas +public import Init.Data.Char.Basic +import Init.Classical public section diff --git a/src/Init/Data/Ord/BitVec.lean b/src/Init/Data/Ord/BitVec.lean index 968316eb22..aff142b875 100644 --- a/src/Init/Data/Ord/BitVec.lean +++ b/src/Init/Data/Ord/BitVec.lean @@ -7,7 +7,7 @@ module prelude public import Init.Data.Order.Ord -public import Init.Data.BitVec.Lemmas +import Init.Data.BitVec.Lemmas public section diff --git a/src/Init/Data/Ord/SInt.lean b/src/Init/Data/Ord/SInt.lean index ac835c8328..ea1b7c668e 100644 --- a/src/Init/Data/Ord/SInt.lean +++ b/src/Init/Data/Ord/SInt.lean @@ -7,7 +7,8 @@ module prelude public import Init.Data.Order.Ord -public import Init.Data.SInt.Lemmas +public import Init.Data.SInt.Basic +import Init.Data.SInt.Lemmas public section diff --git a/src/Init/Data/Ord/String.lean b/src/Init/Data/Ord/String.lean index d0947c9229..dd4fb21cb3 100644 --- a/src/Init/Data/Ord/String.lean +++ b/src/Init/Data/Ord/String.lean @@ -7,7 +7,9 @@ module prelude public import Init.Data.Order.Ord -public import Init.Data.String.Lemmas +public import Init.Data.String.Basic +import Init.Data.Char.Lemmas +import Init.Data.String.Lemmas public section diff --git a/src/Init/Data/Ord/UInt.lean b/src/Init/Data/Ord/UInt.lean index c0bbbf36dc..5dbcd11f5b 100644 --- a/src/Init/Data/Ord/UInt.lean +++ b/src/Init/Data/Ord/UInt.lean @@ -7,7 +7,8 @@ module prelude public import Init.Data.Order.Ord -public import Init.Data.UInt.Lemmas +public import Init.Data.UInt.Basic +import Init.Data.UInt.Lemmas public section diff --git a/src/Init/Data/Ord/Vector.lean b/src/Init/Data/Ord/Vector.lean index 6b1571e399..cd4255afbd 100644 --- a/src/Init/Data/Ord/Vector.lean +++ b/src/Init/Data/Ord/Vector.lean @@ -7,7 +7,8 @@ module prelude public import Init.Data.Order.Ord -public import Init.Data.Vector.Lemmas +public import Init.Data.Vector.Basic +import Init.Data.Vector.Lemmas public section diff --git a/src/Init/Data/Order/ClassesExtra.lean b/src/Init/Data/Order/ClassesExtra.lean index 3f5d1d1100..168e3797e0 100644 --- a/src/Init/Data/Order/ClassesExtra.lean +++ b/src/Init/Data/Order/ClassesExtra.lean @@ -6,7 +6,6 @@ Authors: Paul Reichert module prelude -public import Init.Data.Order.Classes public import Init.Data.Ord.Basic namespace Std diff --git a/src/Init/Data/Order/FactoriesExtra.lean b/src/Init/Data/Order/FactoriesExtra.lean index 412ef3c59f..dd65609887 100644 --- a/src/Init/Data/Order/FactoriesExtra.lean +++ b/src/Init/Data/Order/FactoriesExtra.lean @@ -8,7 +8,8 @@ module prelude public import Init.Data.Order.ClassesExtra public import Init.Data.Order.Ord -import Init.Data.Order.Lemmas +public import Init.Data.Order.Classes +import Init.Data.Bool namespace Std diff --git a/src/Init/Data/Order/Lemmas.lean b/src/Init/Data/Order/Lemmas.lean index d06a6253a8..d107db50ce 100644 --- a/src/Init/Data/Order/Lemmas.lean +++ b/src/Init/Data/Order/Lemmas.lean @@ -10,6 +10,7 @@ public import Init.Data.Order.Factories import all Init.Data.Order.Factories public import Init.Classical public import Init.Data.BEq +import Init.Data.Bool namespace Std diff --git a/src/Init/Data/Order/LemmasExtra.lean b/src/Init/Data/Order/LemmasExtra.lean index 370a100935..3efa8897cd 100644 --- a/src/Init/Data/Order/LemmasExtra.lean +++ b/src/Init/Data/Order/LemmasExtra.lean @@ -6,9 +6,14 @@ Authors: Paul Reichert module prelude -public import Init.Data.Order.FactoriesExtra -public import Init.Data.Order.Lemmas import Init.ByCases +public import Init.Classical +public import Init.Data.Order.Classes +public import Init.Data.Order.ClassesExtra +public import Init.Data.Order.Ord +import Init.Data.Bool +import Init.Data.Order.FactoriesExtra +import Init.Data.Order.Lemmas namespace Std diff --git a/src/Init/Data/Order/MinMaxOn.lean b/src/Init/Data/Order/MinMaxOn.lean index b04edfc271..f240d8f69d 100644 --- a/src/Init/Data/Order/MinMaxOn.lean +++ b/src/Init/Data/Order/MinMaxOn.lean @@ -6,9 +6,8 @@ Authors: Paul Reichert module prelude -public import Init.NotationExtra -public import Init.Data.Order.Lemmas public import Init.Data.Order.Opposite +import Init.Data.Order.Lemmas open Std open scoped OppositeOrderInstances diff --git a/src/Init/Data/Order/Opposite.lean b/src/Init/Data/Order/Opposite.lean index d198947442..d238a12d9a 100644 --- a/src/Init/Data/Order/Opposite.lean +++ b/src/Init/Data/Order/Opposite.lean @@ -7,7 +7,9 @@ module prelude public import Init.Data.Order.ClassesExtra -public import Init.Data.Order.LemmasExtra +public import Init.Data.Order.Classes +import Init.Data.Order.FactoriesExtra +import Init.Data.Order.Lemmas public section diff --git a/src/Init/Data/Order/Ord.lean b/src/Init/Data/Order/Ord.lean index ef2d54d92a..e8cd89c313 100644 --- a/src/Init/Data/Order/Ord.lean +++ b/src/Init/Data/Order/Ord.lean @@ -10,6 +10,12 @@ import Init.Data.List.Lemmas import Init.Data.Array.DecidableEq public import Init.Data.Ord.Array public import Init.Data.BEq +public import Init.Data.Array.Basic +import Init.ByCases +import Init.Data.Bool +import Init.Data.Int.Order +import Init.Data.List.Nat.BEq +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/Order/PackageFactories.lean b/src/Init/Data/Order/PackageFactories.lean index 502c259808..40c060f6a3 100644 --- a/src/Init/Data/Order/PackageFactories.lean +++ b/src/Init/Data/Order/PackageFactories.lean @@ -6,7 +6,10 @@ Authors: Paul Reichert module prelude -public import Init.Data.Order.LemmasExtra +public import Init.Data.Order.LemmasExtra -- shake: keep (instance inlined by `haveI`) +public import Init.Data.Order.FactoriesExtra +import Init.Data.Bool +import Init.Data.Order.Lemmas namespace Std diff --git a/src/Init/Data/RArray.lean b/src/Init/Data/RArray.lean index 74d39622a9..6dbb0a7397 100644 --- a/src/Init/Data/RArray.lean +++ b/src/Init/Data/RArray.lean @@ -7,7 +7,8 @@ Authors: Joachim Breitner module prelude -public import Init.PropLemmas +public import Init.GetElem +import Init.PropLemmas public section diff --git a/src/Init/Data/Range/Basic.lean b/src/Init/Data/Range/Basic.lean index 1ca1e8dc80..22f5473c40 100644 --- a/src/Init/Data/Range/Basic.lean +++ b/src/Init/Data/Range/Basic.lean @@ -6,7 +6,11 @@ Authors: Leonardo de Moura module prelude -public import Init.Omega +public import Init.Control.Basic +public import Init.Grind.Tactics +public meta import Init.Grind.Tactics +import Init.Omega +import Init.WFTactics public section diff --git a/src/Init/Data/Range/Lemmas.lean b/src/Init/Data/Range/Lemmas.lean index 8f4b8733b0..ebedf0c84d 100644 --- a/src/Init/Data/Range/Lemmas.lean +++ b/src/Init/Data/Range/Lemmas.lean @@ -8,9 +8,11 @@ module prelude public import Init.Data.Range.Basic import all Init.Data.Range.Basic -public import Init.Data.List.Range -public import Init.Data.List.Monadic -public import Init.Data.Nat.Div.Lemmas +public import Init.Data.List.Control +import Init.Data.List.Monadic +import Init.Data.List.Range +import Init.Data.Nat.Div.Lemmas +import Init.TacticsExtra public section diff --git a/src/Init/Data/Range/Polymorphic/Basic.lean b/src/Init/Data/Range/Polymorphic/Basic.lean index c73e1305df..9e6d6fda63 100644 --- a/src/Init/Data/Range/Polymorphic/Basic.lean +++ b/src/Init/Data/Range/Polymorphic/Basic.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.Range.Polymorphic.PRange +public import Init.Data.Option.Instances set_option doc.verso true diff --git a/src/Init/Data/Range/Polymorphic/BitVec.lean b/src/Init/Data/Range/Polymorphic/BitVec.lean index 0fca919d0d..5a8261da69 100644 --- a/src/Init/Data/Range/Polymorphic/BitVec.lean +++ b/src/Init/Data/Range/Polymorphic/BitVec.lean @@ -7,9 +7,11 @@ module prelude public import Init.Data.Range.Polymorphic.Instances -public import Init.Data.Order.Lemmas -public import Init.Data.UInt import Init.Omega +import Init.Data.BitVec.Bootstrap +import Init.Data.BitVec.Lemmas +import Init.Data.Nat.Lemmas +import Init.Data.Option.Lemmas open Std Std.PRange diff --git a/src/Init/Data/Range/Polymorphic/Char.lean b/src/Init/Data/Range/Polymorphic/Char.lean index 6388518c95..2b2086145a 100644 --- a/src/Init/Data/Range/Polymorphic/Char.lean +++ b/src/Init/Data/Range/Polymorphic/Char.lean @@ -8,9 +8,10 @@ module prelude public import Init.Data.Char.Ordinal public import Init.Data.Range.Polymorphic.Fin -import Init.Data.Range.Polymorphic.Lemmas import Init.Data.Range.Polymorphic.Map import Init.Data.Char.Order +import Init.Data.Fin.Lemmas +import Init.Data.Option.Lemmas open Std Std.PRange Std.PRange.UpwardEnumerable diff --git a/src/Init/Data/Range/Polymorphic/Fin.lean b/src/Init/Data/Range/Polymorphic/Fin.lean index 01b7eaa33f..8dd0ad0caf 100644 --- a/src/Init/Data/Range/Polymorphic/Fin.lean +++ b/src/Init/Data/Range/Polymorphic/Fin.lean @@ -9,6 +9,10 @@ prelude public import Init.Data.Range.Polymorphic.Instances public import Init.Data.Fin.OverflowAware import Init.Grind +import Init.Data.Fin.Lemmas +import Init.Data.Int.OfNat +import Init.Data.Nat.Linear +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/Range/Polymorphic/GetElemTactic.lean b/src/Init/Data/Range/Polymorphic/GetElemTactic.lean index 211001498d..02019b7716 100644 --- a/src/Init/Data/Range/Polymorphic/GetElemTactic.lean +++ b/src/Init/Data/Range/Polymorphic/GetElemTactic.lean @@ -6,8 +6,10 @@ Authors: Paul Reichert module prelude -public import Init.Data.Vector.Basic -public import Init.Data.Slice.Array.Lemmas +public meta import Init.Grind.Tactics +public import Init.Data.Range.Polymorphic.Basic -- shake: keep (macro output dependency) +public import Init.Data.Vector.Basic -- shake: keep (macro output dependency) +public import Init.Data.Slice.Array.Lemmas -- shake: keep (macro output dependency) public section diff --git a/src/Init/Data/Range/Polymorphic/Instances.lean b/src/Init/Data/Range/Polymorphic/Instances.lean index 8042bb8392..4926f7a9ee 100644 --- a/src/Init/Data/Range/Polymorphic/Instances.lean +++ b/src/Init/Data/Range/Polymorphic/Instances.lean @@ -8,7 +8,9 @@ module prelude public import Init.Data.Range.Polymorphic.Basic import Init.Data.Nat.Lemmas -import Init.Data.Order.Lemmas +import Init.ByCases +import Init.Data.Option.Lemmas +import Init.Omega /-! This module provides instances that reduce the amount of code necessary to make a type compatible diff --git a/src/Init/Data/Range/Polymorphic/Int.lean b/src/Init/Data/Range/Polymorphic/Int.lean index 3d63036bd9..d4d13133aa 100644 --- a/src/Init/Data/Range/Polymorphic/Int.lean +++ b/src/Init/Data/Range/Polymorphic/Int.lean @@ -7,7 +7,6 @@ module prelude public import Init.Data.Range.Polymorphic.Instances -public import Init.Data.Int.Order import Init.Omega public section diff --git a/src/Init/Data/Range/Polymorphic/IntLemmas.lean b/src/Init/Data/Range/Polymorphic/IntLemmas.lean index c02f372f77..cb763c6b5c 100644 --- a/src/Init/Data/Range/Polymorphic/IntLemmas.lean +++ b/src/Init/Data/Range/Polymorphic/IntLemmas.lean @@ -7,7 +7,14 @@ module prelude public import Init.Data.Range.Polymorphic.Int -public import Init.Data.Range.Polymorphic.Lemmas +public import Init.Data.List.BasicAux +public import Init.Data.Range.Polymorphic.Iterators +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.Array.Lemmas +import Init.Data.Option.Lemmas +import Init.Data.Range.Polymorphic.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/Range/Polymorphic/Internal/SignedBitVec.lean b/src/Init/Data/Range/Polymorphic/Internal/SignedBitVec.lean index 7595e5962a..de7135cd6c 100644 --- a/src/Init/Data/Range/Polymorphic/Internal/SignedBitVec.lean +++ b/src/Init/Data/Range/Polymorphic/Internal/SignedBitVec.lean @@ -6,7 +6,16 @@ Authors: Paul Reichert module prelude -public import Init.Data.Range.Polymorphic.BitVec +import Init.Data.BitVec.Bootstrap +import Init.Data.BitVec.Lemmas +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.Pow +import Init.Data.Nat.Div.Lemmas +import Init.Data.Nat.Lemmas +import Init.Data.Nat.Mod +import Init.Data.Option.Lemmas +import Init.Data.Range.Polymorphic.BitVec +import Init.Omega /-! # Ranges on signed bit vectors diff --git a/src/Init/Data/Range/Polymorphic/Iterators.lean b/src/Init/Data/Range/Polymorphic/Iterators.lean index 9a62893009..e9a1c2b063 100644 --- a/src/Init/Data/Range/Polymorphic/Iterators.lean +++ b/src/Init/Data/Range/Polymorphic/Iterators.lean @@ -8,7 +8,9 @@ module prelude public import Init.Data.Range.Polymorphic.RangeIterator public import Init.Data.Range.Polymorphic.Basic -public import Init.Data.Iterators.Combinators.Attach +public import Init.Data.Iterators.Consumers.Collect +import Init.Data.Iterators.Consumers.Loop +import Init.Data.Option.Lemmas @[expose] public section diff --git a/src/Init/Data/Range/Polymorphic/Lemmas.lean b/src/Init/Data/Range/Polymorphic/Lemmas.lean index abca192c4d..b01b01619f 100644 --- a/src/Init/Data/Range/Polymorphic/Lemmas.lean +++ b/src/Init/Data/Range/Polymorphic/Lemmas.lean @@ -6,7 +6,6 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Lemmas.Consumers.Loop import Init.Data.Iterators.Lemmas.Consumers.Collect import all Init.Data.Range.Polymorphic.Basic import all Init.Data.Range.Polymorphic.RangeIterator @@ -14,6 +13,14 @@ public import Init.Data.Range.Polymorphic.Iterators import all Init.Data.Range.Polymorphic.Iterators import all Init.Data.Iterators.Consumers.Loop import Init.Data.Array.Monadic +public import Init.Data.List.Control +public import Init.Data.Order.Lemmas +import Init.Data.Array.Bootstrap +import Init.Data.Iterators.Lemmas.Basic +import Init.Data.Iterators.Lemmas.Consumers.Loop +import Init.Data.List.Pairwise +import Init.Data.Nat.Linear +import Init.Omega public section diff --git a/src/Init/Data/Range/Polymorphic/Map.lean b/src/Init/Data/Range/Polymorphic/Map.lean index 80f7b79671..da7c21a3c1 100644 --- a/src/Init/Data/Range/Polymorphic/Map.lean +++ b/src/Init/Data/Range/Polymorphic/Map.lean @@ -6,10 +6,11 @@ Authors: Markus Himmel module prelude -public import Init.Data.Range.Polymorphic.Instances public import Init.Data.Function import Init.Data.Order.Lemmas import Init.Data.Option.Function +public import Init.Data.Range.Polymorphic.Basic +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/Range/Polymorphic/Nat.lean b/src/Init/Data/Range/Polymorphic/Nat.lean index 65b031a6e5..e4fee53568 100644 --- a/src/Init/Data/Range/Polymorphic/Nat.lean +++ b/src/Init/Data/Range/Polymorphic/Nat.lean @@ -7,9 +7,10 @@ module prelude import Init.Data.Nat.Lemmas -public import Init.Data.Nat.Order public import Init.Data.Range.Polymorphic.Instances -public import Init.Data.Order.Lemmas +import Init.Data.Nat.MinMax +import Init.Omega +import Init.RCases set_option doc.verso true diff --git a/src/Init/Data/Range/Polymorphic/NatLemmas.lean b/src/Init/Data/Range/Polymorphic/NatLemmas.lean index 1956d2120b..73d12260da 100644 --- a/src/Init/Data/Range/Polymorphic/NatLemmas.lean +++ b/src/Init/Data/Range/Polymorphic/NatLemmas.lean @@ -7,7 +7,16 @@ module prelude public import Init.Data.Range.Polymorphic.Nat -public import Init.Data.Range.Polymorphic.Lemmas +public import Init.Data.List.BasicAux +public import Init.Data.Range.Polymorphic.Iterators +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.Array.Lemmas +import Init.Data.List.Range +import Init.Data.Nat.Simproc +import Init.Data.Option.Lemmas +import Init.Data.Range.Polymorphic.Lemmas +import Init.Omega set_option doc.verso true diff --git a/src/Init/Data/Range/Polymorphic/RangeIterator.lean b/src/Init/Data/Range/Polymorphic/RangeIterator.lean index 93525286d7..76b5c86ec2 100644 --- a/src/Init/Data/Range/Polymorphic/RangeIterator.lean +++ b/src/Init/Data/Range/Polymorphic/RangeIterator.lean @@ -6,11 +6,15 @@ Authors: Paul Reichert module prelude -public import Init.Data.Iterators.Consumers.Access import Init.Data.Iterators.Lemmas.Consumers.Monadic.Loop public import Init.Data.Range.Polymorphic.PRange -public import Init.Data.List.Sublist -public import Init.WFExtrinsicFix +public import Init.Data.Iterators.Consumers.Monadic.Access +public import Init.Data.Iterators.Consumers.Monadic.Loop +import Init.ByCases +import Init.Data.Bool +import Init.Data.List.Lemmas +import Init.Data.List.Sublist +import Init.Data.Option.Lemmas set_option doc.verso true diff --git a/src/Init/Data/Range/Polymorphic/SInt.lean b/src/Init/Data/Range/Polymorphic/SInt.lean index fdb66a4ab2..a93d553057 100644 --- a/src/Init/Data/Range/Polymorphic/SInt.lean +++ b/src/Init/Data/Range/Polymorphic/SInt.lean @@ -8,12 +8,13 @@ module prelude public import Init.Data.Range.Polymorphic.Instances -public import Init.Data.Order.Lemmas public import Init.Data.SInt -import Init.Data.Range.Polymorphic.UInt import all Init.Data.SInt.Basic import all Init.Data.Range.Polymorphic.Internal.SignedBitVec +import Init.ByCases +import Init.Data.Int.LemmasAux +import Init.System.Platform open Std Std.PRange diff --git a/src/Init/Data/Range/Polymorphic/Stream.lean b/src/Init/Data/Range/Polymorphic/Stream.lean index 65f0ac78e3..8fbdc2eb6f 100644 --- a/src/Init/Data/Range/Polymorphic/Stream.lean +++ b/src/Init/Data/Range/Polymorphic/Stream.lean @@ -7,7 +7,7 @@ module prelude public import Init.Data.Range.Polymorphic.Iterators -public import Init.Data.Iterators.Consumers.Stream +public import Init.Data.Stream public section diff --git a/src/Init/Data/Range/Polymorphic/UInt.lean b/src/Init/Data/Range/Polymorphic/UInt.lean index 086afc6cf7..0712f759c8 100644 --- a/src/Init/Data/Range/Polymorphic/UInt.lean +++ b/src/Init/Data/Range/Polymorphic/UInt.lean @@ -6,8 +6,11 @@ Authors: Paul Reichert module prelude -import Init.Omega public import Init.Data.Range.Polymorphic.BitVec +public import Init.Data.UInt +import Init.ByCases +import Init.Data.BitVec.Lemmas +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/Range/Polymorphic/UpwardEnumerable.lean b/src/Init/Data/Range/Polymorphic/UpwardEnumerable.lean index 4ac26ef21d..4e86610496 100644 --- a/src/Init/Data/Range/Polymorphic/UpwardEnumerable.lean +++ b/src/Init/Data/Range/Polymorphic/UpwardEnumerable.lean @@ -6,8 +6,9 @@ Authors: Paul Reichert module prelude -public import Init.Data.Option.Lemmas public import Init.Data.Order.Classes +public import Init.Classical +import Init.Data.Option.Lemmas public section diff --git a/src/Init/Data/Rat/Basic.lean b/src/Init/Data/Rat/Basic.lean index 0ce67508df..463297de2a 100644 --- a/src/Init/Data/Rat/Basic.lean +++ b/src/Init/Data/Rat/Basic.lean @@ -7,9 +7,17 @@ module prelude public import Init.Data.Nat.Coprime -public import Init.Data.Hashable public import Init.Data.OfScientific -import Init.Data.Int.Bitwise +public import Init.Data.Int.DivMod.Basic +public import Init.Data.String.Defs +public import Init.Data.ToString.Macro +import Init.Data.Hashable +import Init.Data.Int.DivMod.Bootstrap +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.Lemmas +import Init.Data.Int.Order +import Init.Data.Int.Pow +import Init.Data.Nat.Dvd @[expose] public section diff --git a/src/Init/Data/Rat/Lemmas.lean b/src/Init/Data/Rat/Lemmas.lean index 4114878c91..d61b26a64e 100644 --- a/src/Init/Data/Rat/Lemmas.lean +++ b/src/Init/Data/Rat/Lemmas.lean @@ -8,7 +8,13 @@ prelude public import Init.Data.Rat.Basic public import Init.Data.Int.Gcd -import Init.Data.Int.Bitwise.Lemmas +import Init.ByCases +import Init.Data.Bool +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.Pow +import Init.Data.Nat.Dvd +import Init.Omega +import Init.TacticsExtra @[expose] public section diff --git a/src/Init/Data/Repr.lean b/src/Init/Data/Repr.lean index 35b5faebe3..2d998a5533 100644 --- a/src/Init/Data/Repr.lean +++ b/src/Init/Data/Repr.lean @@ -7,6 +7,9 @@ module prelude public import Init.Data.Format.Basic +public import Init.Control.Id +public import Init.Data.UInt.BasicAux +import Init.Data.Char.Basic public section open Sum Subtype Nat diff --git a/src/Init/Data/SInt/Bitwise.lean b/src/Init/Data/SInt/Bitwise.lean index c2639858e1..7670d989c8 100644 --- a/src/Init/Data/SInt/Bitwise.lean +++ b/src/Init/Data/SInt/Bitwise.lean @@ -7,11 +7,14 @@ module prelude import all Init.Data.UInt.Basic -public import Init.Data.UInt.Bitwise import all Init.Data.BitVec.Basic import all Init.Data.BitVec.Lemmas import all Init.Data.SInt.Basic -public import Init.Data.SInt.Lemmas +public import Init.Data.SInt.Basic +public import Init.Ext +import Init.Data.BitVec.Bitblast +import Init.Data.SInt.Lemmas +import Init.System.Platform public section diff --git a/src/Init/Data/SInt/Lemmas.lean b/src/Init/Data/SInt/Lemmas.lean index 58807a1bb4..9480cea4e5 100644 --- a/src/Init/Data/SInt/Lemmas.lean +++ b/src/Init/Data/SInt/Lemmas.lean @@ -10,10 +10,17 @@ import all Init.Data.Nat.Bitwise.Basic public import Init.Data.SInt.Basic import all Init.Data.SInt.Basic import all Init.Data.BitVec.Basic -public import Init.Data.BitVec.Bitblast import all Init.Data.UInt.Basic -public import Init.Data.UInt.Lemmas -import Init.Data.Order.Lemmas +public import Init.Data.BitVec.Lemmas +public import Init.Data.Int.Order +import Init.ByCases +import Init.Data.BitVec.Bitblast +import Init.Data.BitVec.Bootstrap +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.LemmasAux +import Init.Data.Int.Pow +import Init.Data.UInt.Lemmas +import Init.System.Platform public section diff --git a/src/Init/Data/Slice/Array/Iterator.lean b/src/Init/Data/Slice/Array/Iterator.lean index 4340e70eaf..cd2c4cbd9c 100644 --- a/src/Init/Data/Slice/Array/Iterator.lean +++ b/src/Init/Data/Slice/Array/Iterator.lean @@ -6,15 +6,10 @@ Authors: Paul Reichert module prelude -public import Init.Data.Slice.Array.Basic public import Init.Data.Slice.Operations -import Init.Data.Iterators.Combinators.Attach -public import Init.Data.Iterators.Combinators.ULift import all Init.Data.Range.Polymorphic.Basic -public import Init.Data.Range.Polymorphic.Iterators -public import Init.Data.Slice.Operations import Init.Omega -import Init.Data.Iterators.Lemmas.Combinators.Monadic.FilterMap +public import Init.Data.Array.Subarray public section diff --git a/src/Init/Data/Slice/Array/Lemmas.lean b/src/Init/Data/Slice/Array/Lemmas.lean index 1a6deba3a7..6d2110d342 100644 --- a/src/Init/Data/Slice/Array/Lemmas.lean +++ b/src/Init/Data/Slice/Array/Lemmas.lean @@ -13,12 +13,13 @@ public import Init.Data.Slice.Array.Iterator import all Init.Data.Slice.Array.Iterator import all Init.Data.Slice.Operations import all Init.Data.Range.Polymorphic.Iterators -public import Init.Data.Range.Polymorphic.Lemmas import all Init.Data.Range.Polymorphic.Lemmas -public import Init.Data.Slice.Lemmas -public import Init.Data.Iterators.Lemmas import Init.Data.Slice.List.Lemmas -import Init.Data.Range.Polymorphic.NatLemmas +public import Init.Data.List.Control +public import Init.Data.Nat.MinMax +public import Init.Data.Slice.Array.Basic +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.TakeDrop open Std Std.Iterators Std.PRange Std.Slice diff --git a/src/Init/Data/Slice/Lemmas.lean b/src/Init/Data/Slice/Lemmas.lean index d5e436e523..ee80aba660 100644 --- a/src/Init/Data/Slice/Lemmas.lean +++ b/src/Init/Data/Slice/Lemmas.lean @@ -8,9 +8,9 @@ module prelude public import Init.Data.Slice.Operations import all Init.Data.Slice.Operations -import Init.Data.Iterators.Consumers import Init.Data.Iterators.Lemmas.Consumers public import Init.Data.List.Control +public import Init.Data.Iterators.Consumers.Collect public section diff --git a/src/Init/Data/Slice/List/Basic.lean b/src/Init/Data/Slice/List/Basic.lean index 5c8c3906fc..d92e0eadde 100644 --- a/src/Init/Data/Slice/List/Basic.lean +++ b/src/Init/Data/Slice/List/Basic.lean @@ -8,7 +8,6 @@ module prelude public import Init.Data.Slice.Basic public import Init.Data.Slice.Notation -public import Init.Data.Range.Polymorphic.Nat set_option linter.missingDocs true diff --git a/src/Init/Data/Slice/List/Iterator.lean b/src/Init/Data/Slice/List/Iterator.lean index b10f9bb6e4..23e681c900 100644 --- a/src/Init/Data/Slice/List/Iterator.lean +++ b/src/Init/Data/Slice/List/Iterator.lean @@ -10,9 +10,7 @@ public import Init.Data.Slice.List.Basic public import Init.Data.Iterators.Producers.List public import Init.Data.Iterators.Combinators.Take import all Init.Data.Range.Polymorphic.Basic -public import Init.Data.Range.Polymorphic.Iterators public import Init.Data.Slice.Operations -import Init.Omega public section diff --git a/src/Init/Data/Slice/List/Lemmas.lean b/src/Init/Data/Slice/List/Lemmas.lean index 79278cd7dd..54659693f6 100644 --- a/src/Init/Data/Slice/List/Lemmas.lean +++ b/src/Init/Data/Slice/List/Lemmas.lean @@ -12,8 +12,12 @@ import all Init.Data.Slice.List.Iterator import all Init.Data.Slice.Operations import all Init.Data.Range.Polymorphic.Iterators import all Init.Data.Range.Polymorphic.Lemmas -public import Init.Data.Slice.Lemmas -public import Init.Data.Iterators.Lemmas +import Init.Data.Iterators.Lemmas.Combinators.Take +import Init.Data.Iterators.Lemmas.Producers.List +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.TakeDrop +import Init.Data.Nat.Simproc +import Init.Data.Slice.Lemmas open Std Std.PRange Std.Slice diff --git a/src/Init/Data/Slice/Operations.lean b/src/Init/Data/Slice/Operations.lean index 67b8f79d74..96af021773 100644 --- a/src/Init/Data/Slice/Operations.lean +++ b/src/Init/Data/Slice/Operations.lean @@ -7,8 +7,9 @@ module prelude public import Init.Data.Slice.Basic -public import Init.Data.Slice.Notation public import Init.Data.Iterators.ToIterator +public import Init.Data.Iterators.Consumers.Loop +import Init.Data.Iterators.Consumers.Collect public section diff --git a/src/Init/Data/String/Basic.lean b/src/Init/Data/String/Basic.lean index c0d1430e6c..afe8d31580 100644 --- a/src/Init/Data/String/Basic.lean +++ b/src/Init/Data/String/Basic.lean @@ -8,9 +8,17 @@ module prelude public import Init.Data.String.Decode public import Init.Data.String.Defs -public import Init.Data.String.PosRaw import Init.Data.ByteArray.Lemmas import Init.Data.Char.Lemmas +public import Init.Data.Char.Basic +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.Array.Lemmas +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.Sublist +import Init.Data.List.TakeDrop +import Init.Data.Option.Lemmas +import Init.Omega /-! # Strings diff --git a/src/Init/Data/String/Bootstrap.lean b/src/Init/Data/String/Bootstrap.lean index 91f2f68310..267148ce88 100644 --- a/src/Init/Data/String/Bootstrap.lean +++ b/src/Init/Data/String/Bootstrap.lean @@ -6,8 +6,8 @@ Author: Leonardo de Moura, Mario Carneiro module prelude -public import Init.Data.Char.Basic public import Init.Data.ByteArray.Bootstrap +import Init.Data.Char.Basic public section diff --git a/src/Init/Data/String/Decode.lean b/src/Init/Data/String/Decode.lean index 0bddf82383..89f63cb211 100644 --- a/src/Init/Data/String/Decode.lean +++ b/src/Init/Data/String/Decode.lean @@ -6,10 +6,18 @@ Author: Markus Himmel module prelude -public import Init.Data.UInt.Bitwise import Init.Data.Char.Lemmas public import Init.Data.ByteArray.Basic import Init.Data.ByteArray.Lemmas +public import Init.Data.UInt.Basic +import Init.Data.BitVec.Bootstrap +import Init.Data.BitVec.Lemmas +import Init.Data.Nat.Linear +import Init.Data.Nat.MinMax +import Init.Data.Option.Lemmas +import Init.Data.UInt.Bitwise +import Init.Data.UInt.Lemmas +import Init.Omega /-! # UTF-8 decoding diff --git a/src/Init/Data/String/Defs.lean b/src/Init/Data/String/Defs.lean index 03ad8ad924..249e043987 100644 --- a/src/Init/Data/String/Defs.lean +++ b/src/Init/Data/String/Defs.lean @@ -6,9 +6,9 @@ Author: Leonardo de Moura, Mario Carneiro module prelude -public import Init.Data.ByteArray.Basic public import Init.Data.String.PosRaw import Init.Data.ByteArray.Lemmas +import Init.Omega /-! # Preliminary developments for strings diff --git a/src/Init/Data/String/Extra.lean b/src/Init/Data/String/Extra.lean index 27eef7986c..efd475a871 100644 --- a/src/Init/Data/String/Extra.lean +++ b/src/Init/Data/String/Extra.lean @@ -9,9 +9,8 @@ prelude import all Init.Data.ByteArray.Basic public import Init.Data.String.Basic import all Init.Data.String.Basic -public import Init.Data.String.Substring -public import Init.Data.String.Modify import Init.Data.String.Search +import Init.Data.String.Termination public section diff --git a/src/Init/Data/String/FindPos.lean b/src/Init/Data/String/FindPos.lean index 4a887afd50..e67075aa8c 100644 --- a/src/Init/Data/String/FindPos.lean +++ b/src/Init/Data/String/FindPos.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.String.Basic +import Init.Omega set_option doc.verso true diff --git a/src/Init/Data/String/Iterator.lean b/src/Init/Data/String/Iterator.lean index 5d7f55ec89..593ae97d4c 100644 --- a/src/Init/Data/String/Iterator.lean +++ b/src/Init/Data/String/Iterator.lean @@ -6,7 +6,6 @@ Author: Leonardo de Moura, Mario Carneiro module prelude -public import Init.Data.String.Basic public import Init.Data.String.Modify /-! diff --git a/src/Init/Data/String/Lemmas.lean b/src/Init/Data/String/Lemmas.lean index 609178f22c..563a9b079e 100644 --- a/src/Init/Data/String/Lemmas.lean +++ b/src/Init/Data/String/Lemmas.lean @@ -13,11 +13,11 @@ public import Init.Data.String.Lemmas.FindPos public import Init.Data.String.Lemmas.Basic public import Init.Data.String.Lemmas.Order public import Init.Data.String.Lemmas.IsEmpty -public import Init.Data.Char.Order -public import Init.Data.Char.Lemmas -public import Init.Data.List.Lex import Init.Data.Order.Lemmas public import Init.Data.String.Basic +import Init.Data.Char.Lemmas +import Init.Data.Char.Order +import Init.Data.List.Lex public section diff --git a/src/Init/Data/String/Lemmas/FindPos.lean b/src/Init/Data/String/Lemmas/FindPos.lean index c69550487c..834f67c1f1 100644 --- a/src/Init/Data/String/Lemmas/FindPos.lean +++ b/src/Init/Data/String/Lemmas/FindPos.lean @@ -9,8 +9,8 @@ prelude public import Init.Data.String.FindPos import all Init.Data.String.FindPos import Init.Data.String.OrderInstances -import Init.Data.String.Lemmas.Basic import Init.Data.String.Lemmas.Order +import Init.Data.Order.Lemmas public section diff --git a/src/Init/Data/String/Lemmas/Order.lean b/src/Init/Data/String/Lemmas/Order.lean index be657eb82a..fca08910e4 100644 --- a/src/Init/Data/String/Lemmas/Order.lean +++ b/src/Init/Data/String/Lemmas/Order.lean @@ -9,6 +9,7 @@ prelude public import Init.Data.String.Basic import Init.Data.String.OrderInstances import Init.Data.String.Lemmas.Basic +import Init.Data.Order.Lemmas public section diff --git a/src/Init/Data/String/Lemmas/Splits.lean b/src/Init/Data/String/Lemmas/Splits.lean index 9b16ac464a..ee2b4bc39e 100644 --- a/src/Init/Data/String/Lemmas/Splits.lean +++ b/src/Init/Data/String/Lemmas/Splits.lean @@ -9,6 +9,7 @@ prelude public import Init.Data.String.Basic import Init.Data.ByteArray.Lemmas import Init.Data.String.Lemmas.Basic +import Init.Data.Nat.MinMax /-! # `Splits` predicates on `String.Pos` and `String.Slice.Pos`. diff --git a/src/Init/Data/String/Modify.lean b/src/Init/Data/String/Modify.lean index 49db60be06..904e1d39cc 100644 --- a/src/Init/Data/String/Modify.lean +++ b/src/Init/Data/String/Modify.lean @@ -6,7 +6,6 @@ Author: Leonardo de Moura, Mario Carneiro module prelude -public import Init.Data.String.Basic public import Init.Data.String.Termination import Init.Data.ByteArray.Lemmas import Init.Data.Char.Lemmas diff --git a/src/Init/Data/String/OrderInstances.lean b/src/Init/Data/String/OrderInstances.lean index 51ac6f6097..2cd0dd2970 100644 --- a/src/Init/Data/String/OrderInstances.lean +++ b/src/Init/Data/String/OrderInstances.lean @@ -8,6 +8,8 @@ module prelude public import Init.Data.String.Defs public import Init.Grind.ToInt +public import Init.Data.Order.Classes +import Init.Omega public section diff --git a/src/Init/Data/String/Pattern/Basic.lean b/src/Init/Data/String/Pattern/Basic.lean index f2ad7a34b5..e34d1b1794 100644 --- a/src/Init/Data/String/Pattern/Basic.lean +++ b/src/Init/Data/String/Pattern/Basic.lean @@ -6,13 +6,15 @@ Authors: Henrik Böving, Markus Himmel module prelude -public import Init.Data.String.Basic -public import Init.Data.Iterators.Basic -public import Init.Data.Iterators.Consumers.Loop +public import Init.Data.Iterators.Consumers.Monadic.Loop +public import Init.Data.String.Defs +import Init.Data.Iterators.Consumers.Loop +import Init.Omega import Init.Data.String.Lemmas.IsEmpty import Init.Data.String.Termination import Init.Data.String.OrderInstances import Init.Data.String.Lemmas.Order +public import Init.Data.String.Basic set_option doc.verso true diff --git a/src/Init/Data/String/Pattern/Char.lean b/src/Init/Data/String/Pattern/Char.lean index e1cc27897d..f77ac32914 100644 --- a/src/Init/Data/String/Pattern/Char.lean +++ b/src/Init/Data/String/Pattern/Char.lean @@ -7,10 +7,11 @@ module prelude public import Init.Data.String.Pattern.Basic -public import Init.Data.Iterators.Consumers.Monadic.Loop import Init.Data.String.Termination +public import Init.Data.String.Basic import Init.Data.String.Lemmas.IsEmpty import Init.Data.String.Lemmas.Order +import Init.Data.Option.Lemmas set_option doc.verso true diff --git a/src/Init/Data/String/Pattern/Pred.lean b/src/Init/Data/String/Pattern/Pred.lean index 1de25ad6f8..d3c6911b4e 100644 --- a/src/Init/Data/String/Pattern/Pred.lean +++ b/src/Init/Data/String/Pattern/Pred.lean @@ -7,10 +7,12 @@ module prelude public import Init.Data.String.Pattern.Basic -public import Init.Data.Iterators.Consumers.Monadic.Loop import Init.Data.String.Termination +public import Init.Data.String.Basic +import Init.Omega public import Init.Data.String.Lemmas.IsEmpty import Init.Data.String.Lemmas.Order +import Init.Data.Option.Lemmas set_option doc.verso true diff --git a/src/Init/Data/String/Pattern/String.lean b/src/Init/Data/String/Pattern/String.lean index 1d7fe24d67..3248e03d7f 100644 --- a/src/Init/Data/String/Pattern/String.lean +++ b/src/Init/Data/String/Pattern/String.lean @@ -7,11 +7,14 @@ module prelude public import Init.Data.String.Pattern.Basic -public import Init.Data.Iterators.Consumers.Monadic.Loop public import Init.Data.Vector.Basic public import Init.Data.String.FindPos import Init.Data.String.Termination import Init.Data.String.Lemmas.FindPos +import Init.ByCases +import Init.Data.Array.Lemmas +import Init.Data.Option.Lemmas +import Init.Omega set_option doc.verso true diff --git a/src/Init/Data/String/PosRaw.lean b/src/Init/Data/String/PosRaw.lean index 30411fb565..1717c3d4d7 100644 --- a/src/Init/Data/String/PosRaw.lean +++ b/src/Init/Data/String/PosRaw.lean @@ -6,8 +6,8 @@ Author: Leonardo de Moura, Mario Carneiro module prelude -public import Init.Data.String.Bootstrap public import Init.Data.ByteArray.Basic +import Init.Data.Nat.Simproc /-! # Arithmetic of `String.Pos.Raw` diff --git a/src/Init/Data/String/Search.lean b/src/Init/Data/String/Search.lean index d1f666f0b7..44da85ac7f 100644 --- a/src/Init/Data/String/Search.lean +++ b/src/Init/Data/String/Search.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.String.Slice +import Init.Data.Iterators.Consumers.Collect -- shake: keep (used in verso) set_option doc.verso true diff --git a/src/Init/Data/String/Slice.lean b/src/Init/Data/String/Slice.lean index 5d33d5b5f7..ef606ac48b 100644 --- a/src/Init/Data/String/Slice.lean +++ b/src/Init/Data/String/Slice.lean @@ -10,7 +10,11 @@ public import Init.Data.String.Pattern public import Init.Data.Ord.Basic public import Init.Data.Iterators.Combinators.FilterMap public import Init.Data.String.ToSlice -public import Init.Data.String.Termination +import Init.Data.Iterators.Consumers.Collect +import Init.Data.Iterators.Consumers.Loop +import Init.Data.Option.Lemmas +import Init.Data.String.Termination +import Init.Omega set_option doc.verso true diff --git a/src/Init/Data/String/Substring.lean b/src/Init/Data/String/Substring.lean index 038a733d8b..2f2d9a9dfa 100644 --- a/src/Init/Data/String/Substring.lean +++ b/src/Init/Data/String/Substring.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.String.Slice +import Init.Data.Option.BasicAux /-! # The `Substring` type diff --git a/src/Init/Data/String/TakeDrop.lean b/src/Init/Data/String/TakeDrop.lean index f49bce41f5..c2bb547bc0 100644 --- a/src/Init/Data/String/TakeDrop.lean +++ b/src/Init/Data/String/TakeDrop.lean @@ -6,7 +6,6 @@ Author: Leonardo de Moura, Mario Carneiro, Markus Himmel module prelude -public import Init.Data.String.Slice public import Init.Data.String.Substring set_option doc.verso true diff --git a/src/Init/Data/String/Termination.lean b/src/Init/Data/String/Termination.lean index fae1fdb997..8fa3ef9bc5 100644 --- a/src/Init/Data/String/Termination.lean +++ b/src/Init/Data/String/Termination.lean @@ -6,8 +6,9 @@ Author: Markus Himmel module prelude -public import Init.Data.String.Basic public import Init.Data.String.Lemmas.Splits +import Init.Data.Option.Lemmas +import Init.Omega /-! # Helpers for termination arguments about functions operating on strings diff --git a/src/Init/Data/Subtype/Order.lean b/src/Init/Data/Subtype/Order.lean index dfcd69c7e4..01e643e214 100644 --- a/src/Init/Data/Subtype/Order.lean +++ b/src/Init/Data/Subtype/Order.lean @@ -6,9 +6,9 @@ Authors: Paul Reichert module prelude -public import Init.Data.Order.Lemmas -import Init.Data.Order.Factories -import Init.Data.Subtype.Basic +public import Init.Data.Order.Classes +import Init.Data.Order.Lemmas +import Init.Ext namespace Subtype open Std diff --git a/src/Init/Data/Subtype/OrderExtra.lean b/src/Init/Data/Subtype/OrderExtra.lean index dce9b422a2..3bb06c17ed 100644 --- a/src/Init/Data/Subtype/OrderExtra.lean +++ b/src/Init/Data/Subtype/OrderExtra.lean @@ -6,7 +6,6 @@ Authors: Paul Reichert module prelude -public import Init.Data.Subtype.Order public import Init.Data.Ord.Basic public instance {α : Type u} [Ord α] {P : α → Prop} : Ord (Subtype P) where diff --git a/src/Init/Data/ToString/Basic.lean b/src/Init/Data/ToString/Basic.lean index e4fbf2fc63..20ff534088 100644 --- a/src/Init/Data/ToString/Basic.lean +++ b/src/Init/Data/ToString/Basic.lean @@ -7,7 +7,7 @@ module prelude public import Init.Data.Repr -public import Init.Data.Option.Basic +import Init.Data.Char.Basic public section diff --git a/src/Init/Data/ToString/Macro.lean b/src/Init/Data/ToString/Macro.lean index 2618286e15..38bfdbf518 100644 --- a/src/Init/Data/ToString/Macro.lean +++ b/src/Init/Data/ToString/Macro.lean @@ -7,6 +7,7 @@ module prelude public meta import Init.Meta +public import Init.Notation public section diff --git a/src/Init/Data/UInt/Basic.lean b/src/Init/Data/UInt/Basic.lean index 79861d8009..d78c8d183b 100644 --- a/src/Init/Data/UInt/Basic.lean +++ b/src/Init/Data/UInt/Basic.lean @@ -7,7 +7,6 @@ module prelude public import Init.Data.BitVec.Basic -import Init.Data.Order.Factories @[expose] public section diff --git a/src/Init/Data/UInt/BasicAux.lean b/src/Init/Data/UInt/BasicAux.lean index e439ae1c43..4dd3d314ce 100644 --- a/src/Init/Data/UInt/BasicAux.lean +++ b/src/Init/Data/UInt/BasicAux.lean @@ -7,6 +7,8 @@ module prelude public import Init.Data.BitVec.BasicAux +public import Init.Data.Fin.Basic +import Init.Data.Nat.Div.Basic public section diff --git a/src/Init/Data/UInt/Bitwise.lean b/src/Init/Data/UInt/Bitwise.lean index 5030aaf6a9..686df21c65 100644 --- a/src/Init/Data/UInt/Bitwise.lean +++ b/src/Init/Data/UInt/Bitwise.lean @@ -8,7 +8,15 @@ module prelude import all Init.Data.BitVec.Basic import all Init.Data.UInt.Basic -public import Init.Data.UInt.Lemmas +public import Init.Data.Nat.Bitwise +public import Init.Data.Nat.Lemmas +public import Init.Data.UInt.Basic +public import Init.Ext +import Init.Data.BitVec.Bootstrap +import Init.Data.BitVec.Lemmas +import Init.Data.Fin.Bitwise +import Init.Data.UInt.Lemmas +import Init.System.Platform public section diff --git a/src/Init/Data/UInt/Lemmas.lean b/src/Init/Data/UInt/Lemmas.lean index 544fb83ae0..6d1cd67f49 100644 --- a/src/Init/Data/UInt/Lemmas.lean +++ b/src/Init/Data/UInt/Lemmas.lean @@ -9,13 +9,17 @@ prelude public import Init.Data.UInt.Basic import all Init.Data.UInt.Basic import all Init.Data.UInt.BasicAux -public import Init.Data.Fin.Bitwise import all Init.Data.Fin.Bitwise import all Init.Data.BitVec.BasicAux import all Init.Data.BitVec.Basic -public import Init.Data.BitVec.Lemmas -public import Init.System.Platform -import Init.Data.Order.Lemmas +public import Init.Data.Nat.Div.Lemmas +public import Init.Data.Order.Classes +public import Init.Ext +import Init.ByCases +import Init.Data.BitVec.Bootstrap +import Init.Data.BitVec.Lemmas +import Init.Data.Int.DivMod.Lemmas +import Init.System.Platform public section diff --git a/src/Init/Data/UInt/Log2.lean b/src/Init/Data/UInt/Log2.lean index 5b14bfac01..3e793cc247 100644 --- a/src/Init/Data/UInt/Log2.lean +++ b/src/Init/Data/UInt/Log2.lean @@ -6,7 +6,9 @@ Authors: Henrik Böving module prelude -public import Init.Data.Fin.Log2 +public import Init.Prelude +import Init.Data.Fin.Log2 +import Init.Data.UInt.BasicAux public section diff --git a/src/Init/Data/Vector/Algebra.lean b/src/Init/Data/Vector/Algebra.lean index 6abc8e4c6f..db098b3660 100644 --- a/src/Init/Data/Vector/Algebra.lean +++ b/src/Init/Data/Vector/Algebra.lean @@ -6,8 +6,9 @@ Authors: Kim Morrison module prelude -public import Init.Data.Vector.Lemmas public import Init.Grind +public import Init.Data.Vector.Basic +import Init.Data.Vector.Lemmas /-! # Componentwise algebraic structures on `Vector α n`. diff --git a/src/Init/Data/Vector/Basic.lean b/src/Init/Data/Vector/Basic.lean index 1fb44b248b..878a020e6a 100644 --- a/src/Init/Data/Vector/Basic.lean +++ b/src/Init/Data/Vector/Basic.lean @@ -7,12 +7,15 @@ Authors: Shreyas Srinivas, François G. Dorais, Kim Morrison module prelude -public import Init.Data.Array.InsertIdx -public import Init.Data.Array.Range -public import Init.Data.Range -- TODO: Making this private leads to a panic in Init.Grind.Ring.Poly. -public import Init.Data.Slice.Array.Iterator import Init.Data.Array.Nat +public import Init.Data.Array.DecidableEq +public import Init.Data.Range.Polymorphic.RangeIterator +import Init.Data.Array.InsertIdx +import Init.Data.Array.MapIdx +import Init.Data.Range.Polymorphic.Iterators +import Init.Data.Range.Polymorphic.Nat +import Init.Omega public section diff --git a/src/Init/Data/Vector/Count.lean b/src/Init/Data/Vector/Count.lean index d8100d7e96..1fc2b395b9 100644 --- a/src/Init/Data/Vector/Count.lean +++ b/src/Init/Data/Vector/Count.lean @@ -8,7 +8,9 @@ module prelude import all Init.Data.Array.Count import all Init.Data.Vector.Basic -public import Init.Data.Vector.Lemmas +public import Init.BinderPredicates +public import Init.Data.Vector.Basic +import Init.Data.Vector.Lemmas public section diff --git a/src/Init/Data/Vector/DecidableEq.lean b/src/Init/Data/Vector/DecidableEq.lean index f29fc8fb2b..8e78e9f7e5 100644 --- a/src/Init/Data/Vector/DecidableEq.lean +++ b/src/Init/Data/Vector/DecidableEq.lean @@ -6,7 +6,8 @@ Authors: Kim Morrison module prelude -public import Init.Data.Vector.Lemmas +public import Init.Data.Vector.Basic +import Init.Data.Vector.Lemmas public section diff --git a/src/Init/Data/Vector/Erase.lean b/src/Init/Data/Vector/Erase.lean index 9662cd74fb..0a81bb175f 100644 --- a/src/Init/Data/Vector/Erase.lean +++ b/src/Init/Data/Vector/Erase.lean @@ -6,8 +6,11 @@ Authors: Kim Morrison module prelude -public import Init.Data.Vector.Lemmas -public import Init.Data.Array.Erase +public import Init.BinderPredicates +public import Init.Data.Vector.Basic +import Init.Data.Array.Erase +import Init.Data.Vector.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/Vector/Extract.lean b/src/Init/Data/Vector/Extract.lean index 39b2ae7723..c912d676ea 100644 --- a/src/Init/Data/Vector/Extract.lean +++ b/src/Init/Data/Vector/Extract.lean @@ -6,8 +6,12 @@ Authors: Kim Morrison module prelude -public import Init.Data.Vector.Lemmas -public import Init.Data.Array.Extract +public import Init.Data.Vector.Basic +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.Array.Extract +import Init.Data.Vector.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/Vector/FinRange.lean b/src/Init/Data/Vector/FinRange.lean index 25c23f7217..a9a78b1a06 100644 --- a/src/Init/Data/Vector/FinRange.lean +++ b/src/Init/Data/Vector/FinRange.lean @@ -6,8 +6,11 @@ Authors: François G. Dorais module prelude -public import Init.Data.Array.FinRange -public import Init.Data.Vector.OfFn +public import Init.Data.Vector.Basic +import Init.Data.Fin.Lemmas +import Init.Data.Vector.Lemmas +import Init.Data.Vector.OfFn +import Init.Omega public section diff --git a/src/Init/Data/Vector/Find.lean b/src/Init/Data/Vector/Find.lean index aeb211aaec..018e9abfcc 100644 --- a/src/Init/Data/Vector/Find.lean +++ b/src/Init/Data/Vector/Find.lean @@ -8,7 +8,13 @@ module prelude import all Init.Data.Array.Basic import all Init.Data.Vector.Basic -public import Init.Data.Vector.Range +public import Init.Data.Vector.Attach +import Init.Data.Array.Find +import Init.Data.Bool +import Init.Data.Fin.Lemmas +import Init.Data.List.Find +import Init.Data.List.Impl +import Init.Data.Subtype.Basic public section diff --git a/src/Init/Data/Vector/InsertIdx.lean b/src/Init/Data/Vector/InsertIdx.lean index c9fbcdee0c..1ff69a4935 100644 --- a/src/Init/Data/Vector/InsertIdx.lean +++ b/src/Init/Data/Vector/InsertIdx.lean @@ -6,7 +6,10 @@ Authors: Kim Morrison module prelude -public import Init.Data.Vector.Lemmas +public import Init.Data.Vector.Basic +import Init.Data.Array.InsertIdx +import Init.Data.Vector.Lemmas +import Init.Omega public section diff --git a/src/Init/Data/Vector/Int.lean b/src/Init/Data/Vector/Int.lean index 90f52d05ee..f1b4315b40 100644 --- a/src/Init/Data/Vector/Int.lean +++ b/src/Init/Data/Vector/Int.lean @@ -6,9 +6,10 @@ Authors: Kim Morrison, Sebastian Graf, Paul Reichert module prelude -public import Init.Data.Vector.Lemmas public import Init.Data.Vector.Basic import Init.Data.Array.Int +import Init.Data.Int.Lemmas +import Init.Data.Vector.Lemmas public section diff --git a/src/Init/Data/Vector/Lemmas.lean b/src/Init/Data/Vector/Lemmas.lean index de61d68ae0..63e249c24a 100644 --- a/src/Init/Data/Vector/Lemmas.lean +++ b/src/Init/Data/Vector/Lemmas.lean @@ -9,7 +9,17 @@ prelude import all Init.Data.Array.Basic public import Init.Data.Vector.Basic import all Init.Data.Vector.Basic -public import Init.Data.Array.Find +public import Init.Data.List.MapIdx +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.Array.Count +import Init.Data.Array.Find +import Init.Data.Array.OfFn +import Init.Data.Bool +import Init.Data.Fin.Lemmas +import Init.Data.List.TakeDrop +import Init.Data.Nat.Simproc +import Init.TacticsExtra public section diff --git a/src/Init/Data/Vector/Lex.lean b/src/Init/Data/Vector/Lex.lean index 990821753a..8e429896a5 100644 --- a/src/Init/Data/Vector/Lex.lean +++ b/src/Init/Data/Vector/Lex.lean @@ -7,10 +7,13 @@ module prelude import all Init.Data.Vector.Basic -public import Init.Data.Vector.Lemmas import all Init.Data.Array.Lex.Basic -public import Init.Data.Array.Lex.Lemmas import Init.Data.Range.Polymorphic.Lemmas +public import Init.Data.Array.Lex.Basic +public import Init.Data.BEq +public import Init.Data.Vector.Basic +import Init.Data.Array.Lex.Lemmas +import Init.Data.Vector.Lemmas public section diff --git a/src/Init/Data/Vector/MapIdx.lean b/src/Init/Data/Vector/MapIdx.lean index dba66e46c2..f9842b72cb 100644 --- a/src/Init/Data/Vector/MapIdx.lean +++ b/src/Init/Data/Vector/MapIdx.lean @@ -9,6 +9,7 @@ prelude import all Init.Data.Array.Basic import all Init.Data.Vector.Basic public import Init.Data.Vector.Attach +import Init.ByCases public section diff --git a/src/Init/Data/Vector/Monadic.lean b/src/Init/Data/Vector/Monadic.lean index ffed339a1e..4f1e5f7e12 100644 --- a/src/Init/Data/Vector/Monadic.lean +++ b/src/Init/Data/Vector/Monadic.lean @@ -8,6 +8,7 @@ module prelude import all Init.Data.Vector.Basic public import Init.Data.Vector.Attach +import Init.Data.Array.Monadic public section diff --git a/src/Init/Data/Vector/Nat.lean b/src/Init/Data/Vector/Nat.lean index 5421620a65..4824a37fd3 100644 --- a/src/Init/Data/Vector/Nat.lean +++ b/src/Init/Data/Vector/Nat.lean @@ -6,9 +6,10 @@ Authors: Kim Morrison, Sebastian Graf, Paul Reichert module prelude -public import Init.Data.Vector.Lemmas public import Init.Data.Vector.Basic import Init.Data.Array.Nat +public import Init.BinderPredicates +import Init.Data.Vector.Lemmas public section diff --git a/src/Init/Data/Vector/OfFn.lean b/src/Init/Data/Vector/OfFn.lean index 79751b71ed..33402360ad 100644 --- a/src/Init/Data/Vector/OfFn.lean +++ b/src/Init/Data/Vector/OfFn.lean @@ -7,7 +7,11 @@ module prelude import all Init.Data.Vector.Basic -public import Init.Data.Vector.Monadic +public import Init.Data.Array.OfFn +public import Init.Data.Vector.Basic +import Init.Data.Fin.Lemmas +import Init.Data.Vector.Monadic +import Init.TacticsExtra public section diff --git a/src/Init/Data/Vector/Perm.lean b/src/Init/Data/Vector/Perm.lean index 8358ad987b..9a54873498 100644 --- a/src/Init/Data/Vector/Perm.lean +++ b/src/Init/Data/Vector/Perm.lean @@ -9,7 +9,9 @@ prelude import all Init.Data.Array.Basic public import Init.Data.Array.Perm import all Init.Data.Vector.Basic -public import Init.Data.Vector.Lemmas +public import Init.Data.Vector.Basic +import Init.Data.List.Nat.Perm +import Init.Data.Vector.Lemmas public section diff --git a/src/Init/Data/Vector/Range.lean b/src/Init/Data/Vector/Range.lean index 95c83f1f22..418e962679 100644 --- a/src/Init/Data/Vector/Range.lean +++ b/src/Init/Data/Vector/Range.lean @@ -8,8 +8,13 @@ module prelude import all Init.Data.Array.Basic import all Init.Data.Vector.Basic -public import Init.Data.Vector.Zip -public import Init.Data.Vector.MapIdx +public import Init.BinderPredicates +public import Init.Data.Vector.Basic +import Init.ByCases +import Init.Data.Array.Find +import Init.Data.Array.Range +import Init.Data.Vector.MapIdx +import Init.Data.Vector.Zip public section diff --git a/src/Init/Data/Vector/Stream.lean b/src/Init/Data/Vector/Stream.lean index 6bdae5488e..6ad9b1dd55 100644 --- a/src/Init/Data/Vector/Stream.lean +++ b/src/Init/Data/Vector/Stream.lean @@ -8,6 +8,7 @@ module prelude public import Init.Data.Stream public import Init.Data.Vector.Basic +import Init.Data.Slice.Array.Basic namespace Vector diff --git a/src/Init/Data/Vector/Zip.lean b/src/Init/Data/Vector/Zip.lean index 44f31aa9ff..907e17b821 100644 --- a/src/Init/Data/Vector/Zip.lean +++ b/src/Init/Data/Vector/Zip.lean @@ -8,7 +8,10 @@ module prelude import all Init.Data.Array.Basic import all Init.Data.Vector.Basic -public import Init.Data.Vector.Lemmas +public import Init.Data.Function +public import Init.Data.Vector.Basic +import Init.Data.Array.Zip +import Init.Data.Vector.Lemmas public section diff --git a/src/Init/Data/Zero.lean b/src/Init/Data/Zero.lean index ffcf7bb1a6..0e33018d06 100644 --- a/src/Init/Data/Zero.lean +++ b/src/Init/Data/Zero.lean @@ -6,7 +6,7 @@ Authors: Gabriel Ebner, Mario Carneiro module prelude -public import Init.Core +public import Init.Tactics public section diff --git a/src/Init/Dynamic.lean b/src/Init/Dynamic.lean index a414d6ffb4..0be390c3fe 100644 --- a/src/Init/Dynamic.lean +++ b/src/Init/Dynamic.lean @@ -7,7 +7,8 @@ Authors: Gabriel Ebner module prelude -public import Init.Core +public import Init.Prelude +import Init.Core public section diff --git a/src/Init/Ext.lean b/src/Init/Ext.lean index d3a6685a43..e9b83b38e6 100644 --- a/src/Init/Ext.lean +++ b/src/Init/Ext.lean @@ -6,8 +6,6 @@ Authors: Gabriel Ebner, Mario Carneiro module prelude -public import Init.Data.ToString.Macro -public import Init.TacticsExtra public import Init.RCases public section diff --git a/src/Init/GetElem.lean b/src/Init/GetElem.lean index 8c440891e0..7d6300b1d5 100644 --- a/src/Init/GetElem.lean +++ b/src/Init/GetElem.lean @@ -7,6 +7,7 @@ module prelude public import Init.Util +public import Init.Data.Option.Basic public section diff --git a/src/Init/Grind.lean b/src/Init/Grind.lean index 33671594a0..77ffba16e1 100644 --- a/src/Init/Grind.lean +++ b/src/Init/Grind.lean @@ -20,7 +20,6 @@ public import Init.Grind.Ext public import Init.Grind.ToInt public import Init.Grind.ToIntLemmas public import Init.Grind.Attr -public import Init.Data.Int.OfNat -- This may not have otherwise been imported, breaking `grind` proofs. public import Init.Grind.AC public import Init.Grind.Injective public import Init.Grind.Order @@ -28,3 +27,4 @@ public import Init.Grind.Interactive public import Init.Grind.Lint public import Init.Grind.Annotated public import Init.Grind.FieldNormNum +public import Init.Grind.Config diff --git a/src/Init/Grind/AC.lean b/src/Init/Grind/AC.lean index ede4fc5e78..5927188343 100644 --- a/src/Init/Grind/AC.lean +++ b/src/Init/Grind/AC.lean @@ -6,9 +6,10 @@ Authors: Leonardo de Moura module prelude -public import Init.Data.Nat.Lemmas public import Init.Data.Bool import Init.LawfulBEqTactics +public import Init.Data.RArray +import Init.Classical @[expose] public section diff --git a/src/Init/Grind/Annotated.lean b/src/Init/Grind/Annotated.lean index cb329fc404..0d803ab3ae 100644 --- a/src/Init/Grind/Annotated.lean +++ b/src/Init/Grind/Annotated.lean @@ -5,7 +5,7 @@ Authors: Kim Morrison -/ module prelude -public import Init.Tactics +public import Init.Notation public section namespace Lean.Parser.Command diff --git a/src/Init/Grind/FieldNormNum.lean b/src/Init/Grind/FieldNormNum.lean index 0cda80a9df..d5e1cec6d4 100644 --- a/src/Init/Grind/FieldNormNum.lean +++ b/src/Init/Grind/FieldNormNum.lean @@ -8,6 +8,8 @@ prelude public import Init.Grind.Ring.Field public import Init.Data.Rat.Basic import Init.Data.Rat.Lemmas +import Init.ByCases +import Init.Omega public section namespace Lean.Grind.Field.NormNum diff --git a/src/Init/Grind/Injective.lean b/src/Init/Grind/Injective.lean index d38301a6c3..41bacca76a 100644 --- a/src/Init/Grind/Injective.lean +++ b/src/Init/Grind/Injective.lean @@ -6,7 +6,8 @@ Authors: Leonardo de Moura module prelude public import Init.Data.Function -public import Init.Classical +public import Init.NotationExtra +import Init.Classical public section namespace Lean.Grind open Function diff --git a/src/Init/Grind/Lemmas.lean b/src/Init/Grind/Lemmas.lean index 057988c09a..ed020b2416 100644 --- a/src/Init/Grind/Lemmas.lean +++ b/src/Init/Grind/Lemmas.lean @@ -5,9 +5,11 @@ Authors: Leonardo de Moura -/ module prelude -public import Init.ByCases -public import Init.Grind.Util public import Init.Grind.Ring.Basic +public import Init.NotationExtra +import Init.ByCases +import Init.Classical +import Init.Data.Bool public section namespace Lean.Grind diff --git a/src/Init/Grind/Lint.lean b/src/Init/Grind/Lint.lean index 4aa847bf82..2425a75e46 100644 --- a/src/Init/Grind/Lint.lean +++ b/src/Init/Grind/Lint.lean @@ -5,8 +5,7 @@ Authors: Leonardo de Moura -/ module prelude -public import Init.Grind.Interactive -public import Init.Grind.Config +public import Init.Tactics public section namespace Lean.Grind open Parser Tactic Grind diff --git a/src/Init/Grind/Module/Envelope.lean b/src/Init/Grind/Module/Envelope.lean index b676da308e..d0b4345d9c 100644 --- a/src/Init/Grind/Module/Envelope.lean +++ b/src/Init/Grind/Module/Envelope.lean @@ -7,8 +7,9 @@ module prelude public import Init.Grind.Ordered.Module -public import Init.Data.AC import all Init.Data.AC +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Grind/Module/NatModuleNorm.lean b/src/Init/Grind/Module/NatModuleNorm.lean index 6a1bbb93ff..96c4deaaa7 100644 --- a/src/Init/Grind/Module/NatModuleNorm.lean +++ b/src/Init/Grind/Module/NatModuleNorm.lean @@ -5,8 +5,11 @@ Authors: Leonardo de Moura -/ module prelude -public import Init.Grind.Module.Envelope public import Init.Grind.Ordered.Linarith +import Init.Data.AC +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.LemmasAux +import Init.Omega @[expose] public section namespace Lean.Grind.Linarith open Std diff --git a/src/Init/Grind/Norm.lean b/src/Init/Grind/Norm.lean index 81d78e541d..b16b002d2d 100644 --- a/src/Init/Grind/Norm.lean +++ b/src/Init/Grind/Norm.lean @@ -5,10 +5,14 @@ Authors: Leonardo de Moura -/ module prelude -public import Init.Data.Int.Linear -public import Init.Grind.Ring.Field -public import Init.Data.Rat.Lemmas -public import Init.Grind.Ring.OfScientific +public import Init.Data.Int.Lemmas -- shake: keep (used in `init_grind_norm`) +public import Init.Data.Int.Linear -- shake: keep (used in `init_grind_norm`) +public import Init.Data.Rat.Lemmas -- shake: keep (used in `init_grind_norm`) +public import Init.Grind.Ring.OfScientific -- shake: keep (used in `init_grind_norm`) +public import Init.Data.Int.Pow -- shake: keep (used in `init_grind_norm`) +public import Init.Data.Int.DivMod.Lemmas -- shake: keep (used in `init_grind_norm`) +public import Init.Omega +import Init.ByCases public section namespace Lean.Grind diff --git a/src/Init/Grind/Offset.lean b/src/Init/Grind/Offset.lean index ec1d133404..4a62312a08 100644 --- a/src/Init/Grind/Offset.lean +++ b/src/Init/Grind/Offset.lean @@ -6,7 +6,8 @@ Authors: Leonardo de Moura module prelude -public import Init.Omega +public import Init.Grind.Tactics +import Init.Omega public section diff --git a/src/Init/Grind/Order.lean b/src/Init/Grind/Order.lean index 06f17d4008..88e200c572 100644 --- a/src/Init/Grind/Order.lean +++ b/src/Init/Grind/Order.lean @@ -6,7 +6,10 @@ Authors: Leonardo de Moura module prelude public import Init.Grind.Ordered.Ring -import Init.Grind.Ring +import Init.Data.Int.LemmasAux +import Init.Ext +import Init.Grind.Ordered.Order +import Init.Omega public section namespace Lean.Grind.Order diff --git a/src/Init/Grind/Ordered/Field.lean b/src/Init/Grind/Ordered/Field.lean index 5d62f9c212..dba1a34cc1 100644 --- a/src/Init/Grind/Ordered/Field.lean +++ b/src/Init/Grind/Ordered/Field.lean @@ -8,6 +8,8 @@ module prelude public import Init.Grind.Ring.Field public import Init.Grind.Ordered.Ring +import Init.Grind.Ordered.Order +import Init.RCases public section diff --git a/src/Init/Grind/Ordered/Int.lean b/src/Init/Grind/Ordered/Int.lean index c179a64c20..8301298840 100644 --- a/src/Init/Grind/Ordered/Int.lean +++ b/src/Init/Grind/Ordered/Int.lean @@ -8,6 +8,7 @@ module prelude public import Init.Grind.Ordered.Ring public import Init.GrindInstances.Ring.Int +import Init.Omega public section diff --git a/src/Init/Grind/Ordered/Linarith.lean b/src/Init/Grind/Ordered/Linarith.lean index 1239955158..f88dc0b115 100644 --- a/src/Init/Grind/Ordered/Linarith.lean +++ b/src/Init/Grind/Ordered/Linarith.lean @@ -7,11 +7,16 @@ module prelude public import Init.Grind.Ordered.Ring public import Init.Grind.Ring.Field -public import Init.Data.Ord.Basic import all Init.Data.Ord.Basic -public import Init.Data.AC import all Init.Data.AC import Init.LawfulBEqTactics +public import Init.Data.Bool +public import Init.Data.RArray +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Nat.Lemmas +import Init.Grind.Ordered.Order +import Init.Omega +import Init.WFTactics @[expose] public section diff --git a/src/Init/Grind/Ordered/Module.lean b/src/Init/Grind/Ordered/Module.lean index 3011d6585c..f2a657d568 100644 --- a/src/Init/Grind/Ordered/Module.lean +++ b/src/Init/Grind/Ordered/Module.lean @@ -7,7 +7,13 @@ module prelude public import Init.Grind.Module.Basic -public import Init.Grind.Ordered.Order +public import Init.Data.Order.Classes +public import Init.NotationExtra +import Init.ByCases +import Init.Data.Nat.Lemmas +import Init.Grind.Ordered.Order +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Grind/Ordered/Order.lean b/src/Init/Grind/Ordered/Order.lean index 5c46c625a2..0f34648355 100644 --- a/src/Init/Grind/Ordered/Order.lean +++ b/src/Init/Grind/Ordered/Order.lean @@ -6,8 +6,9 @@ Authors: Kim Morrison module prelude -public import Init.Data.Int.Order -public import Init.Data.Order.Lemmas +public import Init.Data.Order.Classes +public import Init.Grind.Tactics +import Init.Data.Order.Lemmas public section diff --git a/src/Init/Grind/Ordered/Ring.lean b/src/Init/Grind/Ordered/Ring.lean index 9dbeac9ac7..036c94a9e5 100644 --- a/src/Init/Grind/Ordered/Ring.lean +++ b/src/Init/Grind/Ordered/Ring.lean @@ -8,6 +8,10 @@ module prelude public import Init.Grind.Ring.Basic public import Init.Grind.Ordered.Module +import Init.Data.Nat.Lemmas +import Init.Grind.Ordered.Order +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Grind/PP.lean b/src/Init/Grind/PP.lean index 23faf83c09..2b852ccc8b 100644 --- a/src/Init/Grind/PP.lean +++ b/src/Init/Grind/PP.lean @@ -6,8 +6,8 @@ Authors: Leonardo de Moura module prelude -public import Init.NotationExtra -public meta import Init.Data.String.Basic +public meta import Init.Data.String.Defs +public import Init.Grind.Tactics public section diff --git a/src/Init/Grind/Propagator.lean b/src/Init/Grind/Propagator.lean index fc1c1abf49..1435a61c64 100644 --- a/src/Init/Grind/Propagator.lean +++ b/src/Init/Grind/Propagator.lean @@ -6,7 +6,9 @@ Authors: Leonardo de Moura module prelude -public import Init.NotationExtra +public meta import Init.Meta +public import Init.Tactics +import Init.Meta.Defs public section diff --git a/src/Init/Grind/Ring/Basic.lean b/src/Init/Grind/Ring/Basic.lean index 7a860bc17b..fbcfd2bb33 100644 --- a/src/Init/Grind/Ring/Basic.lean +++ b/src/Init/Grind/Ring/Basic.lean @@ -6,9 +6,15 @@ Authors: Kim Morrison module prelude -public import Init.Data.Int.LemmasAux -public import Init.TacticsExtra public import Init.Grind.Module.Basic +import Init.ByCases +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.LemmasAux +import Init.Data.Int.Pow +import Init.Data.Nat.Div.Lemmas +import Init.Data.Nat.Lemmas +import Init.Omega +import Init.RCases public section diff --git a/src/Init/Grind/Ring/CommSemiringAdapter.lean b/src/Init/Grind/Ring/CommSemiringAdapter.lean index 1d958a08e8..bef07089fb 100644 --- a/src/Init/Grind/Ring/CommSemiringAdapter.lean +++ b/src/Init/Grind/Ring/CommSemiringAdapter.lean @@ -7,6 +7,8 @@ module prelude public import Init.Grind.Ring.Envelope public import Init.Grind.Ring.CommSolver +import Init.Data.Int.LemmasAux +import Init.Omega @[expose] public section namespace Lean.Grind namespace CommRing diff --git a/src/Init/Grind/Ring/CommSolver.lean b/src/Init/Grind/Ring/CommSolver.lean index 59557b1436..9ab3fce34d 100644 --- a/src/Init/Grind/Ring/CommSolver.lean +++ b/src/Init/Grind/Ring/CommSolver.lean @@ -5,13 +5,22 @@ Authors: Leonardo de Moura -/ module prelude -public import Init.Data.Hashable public import Init.Data.Ord.Basic public import Init.Grind.Ring.Field public import Init.Grind.Ordered.Ring public import Init.GrindInstances.Ring.Int import all Init.Data.Ord.Basic import Init.LawfulBEqTactics +public import Init.Classical +public import Init.Data.Bool +public import Init.Data.Int.DivMod.Lemmas +public import Init.Data.RArray +public import Init.Ext +import Init.Data.Hashable +import Init.Data.Int.LemmasAux +import Init.Data.Nat.Linear +import Init.Grind.Ordered.Order +import Init.Omega @[expose] public section diff --git a/src/Init/Grind/Ring/Envelope.lean b/src/Init/Grind/Ring/Envelope.lean index 6daca3677b..6dd4ebb40b 100644 --- a/src/Init/Grind/Ring/Envelope.lean +++ b/src/Init/Grind/Ring/Envelope.lean @@ -7,8 +7,9 @@ module prelude public import Init.Grind.Ordered.Ring -public import Init.Data.AC import all Init.Data.AC +import Init.Omega +import Init.RCases @[expose] public section diff --git a/src/Init/Grind/Ring/Field.lean b/src/Init/Grind/Ring/Field.lean index c5d51a6e60..b9165295e3 100644 --- a/src/Init/Grind/Ring/Field.lean +++ b/src/Init/Grind/Ring/Field.lean @@ -7,6 +7,11 @@ module prelude public import Init.Grind.Ring.Basic +public import Init.Data.Nat.Div.Basic +import Init.ByCases +import Init.Omega +import Init.RCases +import Init.TacticsExtra public section diff --git a/src/Init/Grind/Ring/ToInt.lean b/src/Init/Grind/Ring/ToInt.lean index 4a9c8b322b..0edce337c7 100644 --- a/src/Init/Grind/Ring/ToInt.lean +++ b/src/Init/Grind/Ring/ToInt.lean @@ -7,6 +7,8 @@ module prelude public import Init.Grind.Ring.Basic +import Init.Conv +import Init.Data.Int.Pow public section diff --git a/src/Init/Grind/Tactics.lean b/src/Init/Grind/Tactics.lean index de5ecc74de..1ca0f48ba9 100644 --- a/src/Init/Grind/Tactics.lean +++ b/src/Init/Grind/Tactics.lean @@ -7,7 +7,6 @@ module prelude public import Init.Core public import Init.Grind.Interactive -public import Init.Grind.Config public section namespace Lean.Parser.Tactic open Parser.Tactic.Grind diff --git a/src/Init/Grind/ToInt.lean b/src/Init/Grind/ToInt.lean index 344510f1a2..6d8f91a9e0 100644 --- a/src/Init/Grind/ToInt.lean +++ b/src/Init/Grind/ToInt.lean @@ -6,8 +6,12 @@ Authors: Kim Morrison module prelude -public import Init.Data.Int.DivMod.Lemmas import Init.LawfulBEqTactics +public import Init.Data.Int.DivMod.Basic +public meta import Init.Grind.Tactics +import Init.ByCases +import Init.Data.Int.DivMod.Lemmas +import Init.Omega public section diff --git a/src/Init/Grind/ToIntLemmas.lean b/src/Init/Grind/ToIntLemmas.lean index 6f281655f5..2c0ad482de 100644 --- a/src/Init/Grind/ToIntLemmas.lean +++ b/src/Init/Grind/ToIntLemmas.lean @@ -8,6 +8,7 @@ module prelude public import Init.Grind.ToInt import all Init.Grind.ToInt +public import Init.Data.Option.Basic public section diff --git a/src/Init/Grind/Util.lean b/src/Init/Grind/Util.lean index 66b6d8bce1..0e913ba44c 100644 --- a/src/Init/Grind/Util.lean +++ b/src/Init/Grind/Util.lean @@ -5,7 +5,10 @@ Authors: Leonardo de Moura -/ module prelude -public import Init.Classical +public import Init.Data.Cast +public import Init.Grind.Tactics +public meta import Init.Grind.Tactics +import Init.Classical public section namespace Lean.Grind diff --git a/src/Init/GrindInstances/Nat.lean b/src/Init/GrindInstances/Nat.lean index 44afac98bc..54aa20a8eb 100644 --- a/src/Init/GrindInstances/Nat.lean +++ b/src/Init/GrindInstances/Nat.lean @@ -7,7 +7,7 @@ module prelude public import Init.Grind.Ordered.Module -public import Init.Grind.Ring.Basic +import Init.Omega public section diff --git a/src/Init/GrindInstances/Ring/BitVec.lean b/src/Init/GrindInstances/Ring/BitVec.lean index 8ce9e556ce..bbe5b72b92 100644 --- a/src/Init/GrindInstances/Ring/BitVec.lean +++ b/src/Init/GrindInstances/Ring/BitVec.lean @@ -6,10 +6,13 @@ Authors: Kim Morrison module prelude -public import Init.Grind.Ordered.Order public import Init.GrindInstances.ToInt import all Init.Data.BitVec.Basic import all Init.Grind.ToInt +public import Init.Data.BitVec.Lemmas +public import Init.Grind.Ring.Basic +import Init.Data.BitVec.Bootstrap +import Init.Grind.Ring.ToInt public section diff --git a/src/Init/GrindInstances/Ring/Fin.lean b/src/Init/GrindInstances/Ring/Fin.lean index 25912d6ca7..2806f6b235 100644 --- a/src/Init/GrindInstances/Ring/Fin.lean +++ b/src/Init/GrindInstances/Ring/Fin.lean @@ -9,6 +9,10 @@ prelude import all Init.Data.Zero public import Init.GrindInstances.ToInt import all Init.GrindInstances.ToInt +public import Init.Data.Fin.Lemmas +public import Init.Grind.Ring.Basic +import Init.Data.Nat.Lemmas +import Init.Data.Nat.MinMax public section diff --git a/src/Init/GrindInstances/Ring/Int.lean b/src/Init/GrindInstances/Ring/Int.lean index 04eb354e2e..a9cbd6d064 100644 --- a/src/Init/GrindInstances/Ring/Int.lean +++ b/src/Init/GrindInstances/Ring/Int.lean @@ -7,6 +7,10 @@ module prelude public import Init.Grind.Ring.Basic +public import Init.Data.Int.Lemmas +public import Init.Data.Int.Pow +import Init.Data.Int.DivMod.Lemmas +import Init.Meta public section diff --git a/src/Init/GrindInstances/Ring/Nat.lean b/src/Init/GrindInstances/Ring/Nat.lean index e814e7fa48..1132dba674 100644 --- a/src/Init/GrindInstances/Ring/Nat.lean +++ b/src/Init/GrindInstances/Ring/Nat.lean @@ -7,6 +7,8 @@ module prelude public import Init.Grind.Ordered.Ring +import Init.Data.Nat.Lemmas +import Init.Omega open Std diff --git a/src/Init/GrindInstances/Ring/Rat.lean b/src/Init/GrindInstances/Ring/Rat.lean index e2916f5a81..e67da7748b 100644 --- a/src/Init/GrindInstances/Ring/Rat.lean +++ b/src/Init/GrindInstances/Ring/Rat.lean @@ -8,6 +8,8 @@ module prelude public import Init.Grind.Ring.OfScientific public import Init.Data.Rat.Lemmas +import Init.Data.Int.DivMod.Lemmas +import Init.Data.Int.Lemmas public section diff --git a/src/Init/GrindInstances/Ring/SInt.lean b/src/Init/GrindInstances/Ring/SInt.lean index 41a4fdd365..89c3e90508 100644 --- a/src/Init/GrindInstances/Ring/SInt.lean +++ b/src/Init/GrindInstances/Ring/SInt.lean @@ -10,6 +10,11 @@ import all Init.Grind.ToInt public import Init.GrindInstances.ToInt import all Init.Data.BitVec.Basic import all Init.Data.SInt.Basic +public import Init.Data.SInt.Lemmas +public import Init.Grind.Ring.Basic +import Init.Data.Int.Pow +import Init.Data.Nat.Dvd +import Init.Grind.Ring.ToInt public section diff --git a/src/Init/GrindInstances/Ring/UInt.lean b/src/Init/GrindInstances/Ring/UInt.lean index 9391d81ef1..6dea16c407 100644 --- a/src/Init/GrindInstances/Ring/UInt.lean +++ b/src/Init/GrindInstances/Ring/UInt.lean @@ -9,6 +9,9 @@ prelude public import Init.GrindInstances.ToInt import all Init.GrindInstances.ToInt import all Init.Data.UInt.Basic +public import Init.Data.UInt.Lemmas +public import Init.Grind.Ring.Basic +import Init.Grind.Ring.ToInt public section diff --git a/src/Init/GrindInstances/ToInt.lean b/src/Init/GrindInstances/ToInt.lean index c5988a0b41..90fdb9e494 100644 --- a/src/Init/GrindInstances/ToInt.lean +++ b/src/Init/GrindInstances/ToInt.lean @@ -7,8 +7,14 @@ module prelude import all Init.Grind.ToInt -public import Init.Grind.Ring.ToInt -public import Init.Data.SInt.Lemmas +public import Init.Data.SInt.Basic +public import Init.Grind.ToInt +import Init.Data.BitVec.Bootstrap +import Init.Data.Int.LemmasAux +import Init.Data.Int.Pow +import Init.Data.SInt.Lemmas +import Init.Data.UInt.Lemmas +import Init.System.Platform public section @@ -58,7 +64,7 @@ instance : ToInt.LT Int .ii where instance : ToInt Nat (.ci 0) where toInt := Nat.cast - toInt_inj x y := Int.ofNat_inj.mp + toInt_inj x y := private Int.ofNat_inj.mp toInt_mem := by simp @[simp] theorem toInt_nat (x : Nat) : ToInt.toInt x = (x : Int) := rfl @@ -105,7 +111,7 @@ instance : ToInt.LT Nat (.ci 0) where instance : ToInt (Fin n) (.co 0 n) where toInt x := x.val - toInt_inj x y w := Fin.eq_of_val_eq (Int.ofNat_inj.mp w) + toInt_inj x y w := private Fin.eq_of_val_eq (Int.ofNat_inj.mp w) toInt_mem := by simp @[simp, grind =] theorem toInt_fin (x : Fin n) : ToInt.toInt x = (x.val : Int) := rfl @@ -145,7 +151,7 @@ instance : ToInt.LT (Fin n) (.co 0 n) where instance : ToInt UInt8 (.uint 8) where toInt x := (x.toNat : Int) - toInt_inj x y w := UInt8.toNat_inj.mp (Int.ofNat_inj.mp w) + toInt_inj x y w := private UInt8.toNat_inj.mp (Int.ofNat_inj.mp w) toInt_mem x := by simpa using Int.lt_toNat.mp (UInt8.toNat_lt x) @[simp] theorem toInt_uint8 (x : UInt8) : ToInt.toInt x = (x.toNat : Int) := rfl @@ -179,7 +185,7 @@ instance : ToInt.LT UInt8 (.uint 8) where instance : ToInt UInt16 (.uint 16) where toInt x := (x.toNat : Int) - toInt_inj x y w := UInt16.toNat_inj.mp (Int.ofNat_inj.mp w) + toInt_inj x y w := private UInt16.toNat_inj.mp (Int.ofNat_inj.mp w) toInt_mem x := by simpa using Int.lt_toNat.mp (UInt16.toNat_lt x) @[simp] theorem toInt_uint16 (x : UInt16) : ToInt.toInt x = (x.toNat : Int) := rfl @@ -213,7 +219,7 @@ instance : ToInt.LT UInt16 (.uint 16) where instance : ToInt UInt32 (.uint 32) where toInt x := (x.toNat : Int) - toInt_inj x y w := UInt32.toNat_inj.mp (Int.ofNat_inj.mp w) + toInt_inj x y w := private UInt32.toNat_inj.mp (Int.ofNat_inj.mp w) toInt_mem x := by simpa using Int.lt_toNat.mp (UInt32.toNat_lt x) @[simp] theorem toInt_uint32 (x : UInt32) : ToInt.toInt x = (x.toNat : Int) := rfl @@ -247,7 +253,7 @@ instance : ToInt.LT UInt32 (.uint 32) where instance : ToInt UInt64 (.uint 64) where toInt x := (x.toNat : Int) - toInt_inj x y w := UInt64.toNat_inj.mp (Int.ofNat_inj.mp w) + toInt_inj x y w := private UInt64.toNat_inj.mp (Int.ofNat_inj.mp w) toInt_mem x := by simpa using Int.lt_toNat.mp (UInt64.toNat_lt x) @[simp] theorem toInt_uint64 (x : UInt64) : ToInt.toInt x = (x.toNat : Int) := rfl @@ -281,7 +287,7 @@ instance : ToInt.LT UInt64 (.uint 64) where instance : ToInt USize (.uint System.Platform.numBits) where toInt x := (x.toNat : Int) - toInt_inj x y w := USize.toNat_inj.mp (Int.ofNat_inj.mp w) + toInt_inj x y w := private USize.toNat_inj.mp (Int.ofNat_inj.mp w) toInt_mem x := by simp only [IntInterval.mem_co, Int.natCast_nonneg, true_and] rw [show (2 : Int) ^ System.Platform.numBits = (2 ^ System.Platform.numBits : Nat) by simp, @@ -321,7 +327,7 @@ instance : ToInt.LT USize (.uint System.Platform.numBits) where instance : ToInt Int8 (.sint 8) where toInt x := x.toInt - toInt_inj x y w := Int8.toInt_inj.mp w + toInt_inj x y w := private Int8.toInt_inj.mp w toInt_mem x := by simp; exact ⟨Int8.le_toInt x, Int8.toInt_lt x⟩ @[simp] theorem toInt_int8 (x : Int8) : ToInt.toInt x = (x.toInt : Int) := rfl @@ -362,7 +368,7 @@ instance : ToInt.LT Int8 (.sint 8) where instance : ToInt Int16 (.sint 16) where toInt x := x.toInt - toInt_inj x y w := Int16.toInt_inj.mp w + toInt_inj x y w := private Int16.toInt_inj.mp w toInt_mem x := by simp; exact ⟨Int16.le_toInt x, Int16.toInt_lt x⟩ @[simp] theorem toInt_int16 (x : Int16) : ToInt.toInt x = (x.toInt : Int) := rfl @@ -400,7 +406,7 @@ instance : ToInt.LT Int16 (.sint 16) where instance : ToInt Int32 (.sint 32) where toInt x := x.toInt - toInt_inj x y w := Int32.toInt_inj.mp w + toInt_inj x y w := private Int32.toInt_inj.mp w toInt_mem x := by simp; exact ⟨Int32.le_toInt x, Int32.toInt_lt x⟩ @[simp] theorem toInt_int32 (x : Int32) : ToInt.toInt x = (x.toInt : Int) := rfl @@ -438,7 +444,7 @@ instance : ToInt.LT Int32 (.sint 32) where instance : ToInt Int64 (.sint 64) where toInt x := x.toInt - toInt_inj x y w := Int64.toInt_inj.mp w + toInt_inj x y w := private Int64.toInt_inj.mp w toInt_mem x := by simp; exact ⟨Int64.le_toInt x, Int64.toInt_lt x⟩ @[simp] theorem toInt_int64 (x : Int64) : ToInt.toInt x = (x.toInt : Int) := rfl @@ -477,7 +483,7 @@ instance : ToInt.LT Int64 (.sint 64) where instance : ToInt (BitVec v) (.uint v) where toInt x := (x.toNat : Int) toInt_inj x y w := - BitVec.eq_of_toNat_eq (Int.ofNat_inj.mp w) + private BitVec.eq_of_toNat_eq (Int.ofNat_inj.mp w) toInt_mem x := by simpa using Int.ofNat_lt.mpr (BitVec.isLt x) @[simp] theorem toInt_bitVec (x : BitVec v) : ToInt.toInt x = (x.toNat : Int) := rfl @@ -511,7 +517,7 @@ instance : ToInt.LT (BitVec v) (.uint v) where instance : ToInt ISize (.sint System.Platform.numBits) where toInt x := x.toInt - toInt_inj x y w := ISize.toInt_inj.mp w + toInt_inj x y w := private ISize.toInt_inj.mp w toInt_mem x := by simp; exact ⟨ISize.two_pow_numBits_le_toInt x, ISize.toInt_lt_two_pow_numBits x⟩ @[simp] theorem toInt_isize (x : ISize) : ToInt.toInt x = x.toInt := rfl diff --git a/src/Init/Guard.lean b/src/Init/Guard.lean index 1a146d5fc4..d27059678d 100644 --- a/src/Init/Guard.lean +++ b/src/Init/Guard.lean @@ -6,7 +6,7 @@ Authors: Mario Carneiro module prelude -public import Init.NotationExtra +public import Init.Conv public section diff --git a/src/Init/Hints.lean b/src/Init/Hints.lean index eeeb822cbf..ff69d31c86 100644 --- a/src/Init/Hints.lean +++ b/src/Init/Hints.lean @@ -6,7 +6,8 @@ Authors: Leonardo de Moura module prelude -public import Init.NotationExtra +public import Init.Grind.Tactics +import Init.NotationExtra public section diff --git a/src/Init/Internal/Order/Basic.lean b/src/Init/Internal/Order/Basic.lean index a162778afd..f47a189a50 100644 --- a/src/Init/Internal/Order/Basic.lean +++ b/src/Init/Internal/Order/Basic.lean @@ -12,6 +12,7 @@ import all Init.Control.Except -- for `MonoBind` instance import all Init.Control.StateRef -- for `MonoBind` instance import all Init.Control.Option -- for `MonoBind` instance import all Init.System.ST -- for `MonoBind` instance +import Init.ByCases public section diff --git a/src/Init/Internal/Order/Lemmas.lean b/src/Init/Internal/Order/Lemmas.lean index 809db9f759..ea5e5d4be4 100644 --- a/src/Init/Internal/Order/Lemmas.lean +++ b/src/Init/Internal/Order/Lemmas.lean @@ -12,6 +12,8 @@ import all Init.Data.List.Control import all Init.Data.Option.Basic import all Init.Data.Array.Basic public import Init.Internal.Order.Basic +public import Init.Data.List.Monadic +import Init.Data.Array.Bootstrap public section diff --git a/src/Init/LawfulBEqTactics.lean b/src/Init/LawfulBEqTactics.lean index 55432c8345..fe82674319 100644 --- a/src/Init/LawfulBEqTactics.lean +++ b/src/Init/LawfulBEqTactics.lean @@ -9,6 +9,7 @@ prelude public import Init.Core import Init.Data.Bool import Init.ByCases +import Init.Classical public section diff --git a/src/Init/MacroTrace.lean b/src/Init/MacroTrace.lean index e22f5704f7..05370281fb 100644 --- a/src/Init/MacroTrace.lean +++ b/src/Init/MacroTrace.lean @@ -9,8 +9,9 @@ Extra notation that depends on Init/Meta module prelude -public import Init.Data.ToString.Macro -public import Init.Meta +public meta import Init.Meta +public import Init.Notation +import Init.Data.ToString.Macro public section diff --git a/src/Init/Meta.lean b/src/Init/Meta.lean index 6745320afe..5c65176d06 100644 --- a/src/Init/Meta.lean +++ b/src/Init/Meta.lean @@ -9,6 +9,7 @@ module prelude public import Init.Meta.Defs public meta import Init.Meta.Defs +public meta import Init.Syntax public section namespace Lean diff --git a/src/Init/Meta/Defs.lean b/src/Init/Meta/Defs.lean index f51a86b2a9..87d9364c2d 100644 --- a/src/Init/Meta/Defs.lean +++ b/src/Init/Meta/Defs.lean @@ -9,11 +9,12 @@ module prelude import all Init.Prelude -- for unfolding `Name.beq` -public import Init.Syntax -public import Init.Data.Array.GetLit -public import Init.Data.Option.BasicAux -public meta import Init.Data.Array.Basic -public meta import Init.Syntax +public import Init.Data.Array.Basic +public import Init.MetaTypes +import Init.Data.Array.GetLit +import Init.Data.Char.Basic +meta import Init.MetaTypes +import Init.WFTactics public section diff --git a/src/Init/NotationExtra.lean b/src/Init/NotationExtra.lean index 5ed9ebcf68..1d0e49f8ce 100644 --- a/src/Init/NotationExtra.lean +++ b/src/Init/NotationExtra.lean @@ -9,8 +9,8 @@ module prelude public import Init.Conv -public import Init.Meta -public import Init.While +public import Init.GetElem +import Init.Meta.Defs public section diff --git a/src/Init/Omega.lean b/src/Init/Omega.lean index a84afe1f73..3e87fb758c 100644 --- a/src/Init/Omega.lean +++ b/src/Init/Omega.lean @@ -11,3 +11,8 @@ public import Init.Omega.IntList public import Init.Omega.LinearCombo public import Init.Omega.Constraint public import Init.Omega.Logic + +public import Init.Data.Int.Lemmas -- shake: keep (`omega` output dependency) +public import Init.Data.Int.Order -- shake: keep (`omega` output dependency) +public import Init.Data.Nat.Order -- shake: keep (`omega` output dependency) +public import Init.Data.Order.Lemmas -- shake: keep (`omega` output dependency) diff --git a/src/Init/Omega/Constraint.lean b/src/Init/Omega/Constraint.lean index 8db9cb18cd..a7a88bafdc 100644 --- a/src/Init/Omega/Constraint.lean +++ b/src/Init/Omega/Constraint.lean @@ -6,8 +6,13 @@ Authors: Kim Morrison module prelude -public import Init.Omega.LinearCombo -public import Init.Omega.Int +public import Init.Omega.Coeffs +import Init.Data.Int.Lemmas +import Init.Data.Int.Order +import Init.Data.ToString.Macro +import Init.Omega.Int +import Init.PropLemmas +import Init.RCases public section diff --git a/src/Init/Omega/Int.lean b/src/Init/Omega/Int.lean index baa7b4b38a..9447e7fb05 100644 --- a/src/Init/Omega/Int.lean +++ b/src/Init/Omega/Int.lean @@ -6,7 +6,13 @@ Authors: Kim Morrison module prelude -public import Init.Data.Int.DivMod.Bootstrap +public import Init.Data.Fin.Basic +public import Init.Data.Int.DivMod.Basic +public import Init.WF +import Init.ByCases +import Init.Data.Int.Lemmas +import Init.Data.Int.Order +import Init.PropLemmas public section diff --git a/src/Init/Omega/IntList.lean b/src/Init/Omega/IntList.lean index 009b606cc9..868bfbc88b 100644 --- a/src/Init/Omega/IntList.lean +++ b/src/Init/Omega/IntList.lean @@ -8,6 +8,11 @@ module prelude public import Init.Data.Int.DivMod.Bootstrap public import Init.Data.Nat.Gcd +import Init.Data.Int.Lemmas +import Init.Data.Int.Order +import Init.Data.Nat.Dvd +import Init.PropLemmas +import Init.RCases public section diff --git a/src/Init/Omega/LinearCombo.lean b/src/Init/Omega/LinearCombo.lean index 922760ba66..eea1b3134e 100644 --- a/src/Init/Omega/LinearCombo.lean +++ b/src/Init/Omega/LinearCombo.lean @@ -7,7 +7,9 @@ module prelude public import Init.Omega.Coeffs -public import Init.Data.ToString.Macro +import Init.Data.Int.Lemmas +import Init.Data.ToString.Macro +import Init.RCases public section diff --git a/src/Init/Omega/Logic.lean b/src/Init/Omega/Logic.lean index 4cbd75995b..ba466de76d 100644 --- a/src/Init/Omega/Logic.lean +++ b/src/Init/Omega/Logic.lean @@ -6,7 +6,8 @@ Authors: Kim Morrison module prelude -public import Init.PropLemmas +public import Init.Grind.Tactics +import Init.PropLemmas public section /-! diff --git a/src/Init/ShareCommon.lean b/src/Init/ShareCommon.lean index a6c4733a30..4692b83a19 100644 --- a/src/Init/ShareCommon.lean +++ b/src/Init/ShareCommon.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.UInt.Basic +public import Init.Control.State public section diff --git a/src/Init/Simproc.lean b/src/Init/Simproc.lean index 7bd98c255c..b47447b1e1 100644 --- a/src/Init/Simproc.lean +++ b/src/Init/Simproc.lean @@ -6,8 +6,9 @@ Authors: Leonardo de Moura module prelude -public import Init.NotationExtra -public meta import Init.Data.ToString.Name +public meta import Init.Data.ToString.Name -- shake: keep (transitive public meta dep, fix) +public import Init.Tactics +import Init.Meta.Defs public section diff --git a/src/Init/SizeOf.lean b/src/Init/SizeOf.lean index e5eb20a4a4..8eace76270 100644 --- a/src/Init/SizeOf.lean +++ b/src/Init/SizeOf.lean @@ -6,7 +6,8 @@ Authors: Leonardo de Moura, Mario Carneiro module prelude -public import Init.Tactics +public import Init.Notation +import Init.Tactics public section set_option linter.missingDocs true -- keep it documented diff --git a/src/Init/SizeOfLemmas.lean b/src/Init/SizeOfLemmas.lean index 8df46ee705..3d46939672 100644 --- a/src/Init/SizeOfLemmas.lean +++ b/src/Init/SizeOfLemmas.lean @@ -8,7 +8,9 @@ module prelude import all Init.Data.Char.Basic import all Init.SizeOf -public import Init.Data.Nat.Linear +public import Init.Data.Char.Basic +import Init.Data.Nat.Linear +meta import Init.MetaTypes public section diff --git a/src/Init/Sym/Lemmas.lean b/src/Init/Sym/Lemmas.lean index c476677dad..7eb0aefefe 100644 --- a/src/Init/Sym/Lemmas.lean +++ b/src/Init/Sym/Lemmas.lean @@ -5,11 +5,14 @@ Authors: Leonardo de Moura -/ module prelude -public import Init.Data.Nat.Basic public import Init.Data.Rat.Basic -public import Init.Data.Int.Basic -public import Init.Data.UInt.Basic public import Init.Data.SInt.Basic +public import Init.Data.Int.DivMod.Lemmas +public import Init.Data.Nat.Dvd +public import Init.Data.String.Basic +import Init.Data.BitVec.Lemmas +import Init.Data.Int.Order +import Init.Data.UInt.Lemmas public section namespace Lean.Sym diff --git a/src/Init/Syntax.lean b/src/Init/Syntax.lean index 1b92164af8..b0bce270ab 100644 --- a/src/Init/Syntax.lean +++ b/src/Init/Syntax.lean @@ -5,7 +5,8 @@ Authors: Leonardo de Moura, Mario Carneiro -/ module prelude -public import Init.Data.Array.Set +public import Init.Prelude +import Init.Data.Array.Set public section /-! diff --git a/src/Init/System/FilePath.lean b/src/Init/System/FilePath.lean index 5a3764d946..b826958e25 100644 --- a/src/Init/System/FilePath.lean +++ b/src/Init/System/FilePath.lean @@ -6,9 +6,11 @@ Authors: Leonardo de Moura, Sebastian Ullrich module prelude -public import Init.Data.String.Basic import Init.Data.String.Modify import Init.Data.String.Search +public import Init.Data.ToString.Basic +import Init.Data.Iterators.Consumers.Collect +import Init.System.Platform public section diff --git a/src/Init/System/IO.lean b/src/Init/System/IO.lean index 8afa859542..deeabdd6e5 100644 --- a/src/Init/System/IO.lean +++ b/src/Init/System/IO.lean @@ -8,9 +8,13 @@ module prelude public import Init.System.IOError public import Init.System.FilePath -public import Init.Data.Ord.UInt import Init.Data.String.TakeDrop import Init.Data.String.Search +public import Init.Data.Ord.Basic +public import Init.Data.String.Basic +import Init.Data.List.MapIdx +import Init.Data.Ord.UInt +import Init.Data.ToString.Macro public section diff --git a/src/Init/System/Platform.lean b/src/Init/System/Platform.lean index 9ae776a85d..cbb9736963 100644 --- a/src/Init/System/Platform.lean +++ b/src/Init/System/Platform.lean @@ -6,7 +6,10 @@ Authors: Leonardo de Moura module prelude -public import Init.Data.String.Bootstrap +public import Init.Data.Nat.Div.Basic +public import Init.SimpLemmas +import Init.Data.Nat.Basic +import Init.Data.String.Bootstrap public section diff --git a/src/Init/System/ST.lean b/src/Init/System/ST.lean index a35df194af..7375a2bf1b 100644 --- a/src/Init/System/ST.lean +++ b/src/Init/System/ST.lean @@ -6,9 +6,9 @@ Authors: Leonardo de Moura module prelude -public import Init.Classical -public import Init.Control.EState -public import Init.Control.Reader +public import Init.Control.Except +public import Init.NotationExtra +import Init.Classical public section diff --git a/src/Init/System/Uri.lean b/src/Init/System/Uri.lean index 22d297ec61..95420a8c90 100644 --- a/src/Init/System/Uri.lean +++ b/src/Init/System/Uri.lean @@ -10,6 +10,9 @@ public import Init.System.FilePath import Init.Data.String.TakeDrop import Init.Data.String.Modify import Init.Data.String.Search +import Init.Omega +import Init.System.Platform +import Init.While public section diff --git a/src/Init/TacticsExtra.lean b/src/Init/TacticsExtra.lean index 2559b2342d..eb4d93a03b 100644 --- a/src/Init/TacticsExtra.lean +++ b/src/Init/TacticsExtra.lean @@ -6,7 +6,9 @@ Authors: Leonardo de Moura, Mario Carneiro module prelude -public import Init.NotationExtra +public meta import Init.Meta +public import Init.Tactics +import Init.Data.Array.Basic public section diff --git a/src/Init/Task.lean b/src/Init/Task.lean index 3240299424..c3e9082573 100644 --- a/src/Init/Task.lean +++ b/src/Init/Task.lean @@ -8,7 +8,9 @@ Additional `Task` definitions. module prelude -public import Init.System.Promise +public import Init.Core +import Init.Data.List.Basic +import Init.Data.Nat.Bitwise.Basic public section diff --git a/src/Init/WF.lean b/src/Init/WF.lean index a77cd23bb4..bd6636713c 100644 --- a/src/Init/WF.lean +++ b/src/Init/WF.lean @@ -7,7 +7,8 @@ module prelude public import Init.BinderNameHint -public import Init.Data.Nat.Basic +public import Init.Grind.Tactics +import Init.Data.Nat.Basic public section @@ -486,7 +487,7 @@ def Nat.fix : (x : α) → motive x := let rec go : ∀ (fuel : Nat) (x : α), (h x < fuel) → motive x := Nat.rec (fun _ hfuel => (Nat.not_succ_le_zero _ hfuel).elim) - (fun _ ih x hfuel => F x (fun y hy => ih y (Nat.lt_of_lt_of_le hy (Nat.le_of_lt_add_one hfuel)))) + (fun _ ih x hfuel => F x (fun y hy => ih y (by exact Nat.lt_of_lt_of_le hy (Nat.le_of_lt_add_one hfuel)))) fun x => go (Nat.eager (h x + 1)) x (Nat.eager_eq _ ▸ Nat.lt_add_one _) protected theorem Nat.fix.go_congr (x : α) (fuel₁ fuel₂ : Nat) (h₁ : h x < fuel₁) (h₂ : h x < fuel₂) : diff --git a/src/Init/WFComputable.lean b/src/Init/WFComputable.lean index 61749f6412..924036e16e 100644 --- a/src/Init/WFComputable.lean +++ b/src/Init/WFComputable.lean @@ -7,6 +7,7 @@ module prelude public import Init.WF import Init.NotationExtra +import Init.WFTactics /-! # Computable Acc.rec and WellFounded.fix diff --git a/src/Init/WFExtrinsicFix.lean b/src/Init/WFExtrinsicFix.lean index d74948612d..c94dbfafed 100644 --- a/src/Init/WFExtrinsicFix.lean +++ b/src/Init/WFExtrinsicFix.lean @@ -9,7 +9,7 @@ prelude public import Init.WF import Init.Classical import Init.Ext -import Init.NotationExtra +public import Init.NotationExtra set_option doc.verso true set_option linter.missingDocs true diff --git a/src/Init/WFTactics.lean b/src/Init/WFTactics.lean index 403d802244..321cbdc3f4 100644 --- a/src/Init/WFTactics.lean +++ b/src/Init/WFTactics.lean @@ -6,8 +6,8 @@ Author: Leonardo de Moura module prelude -public import Init.MetaTypes -public import Init.WF +public import Init.WF -- shake: keep (macro output dependency) +public import Init.Data.Nat.Basic -- shake: keep (macro output dependency) public section diff --git a/src/Lean/Compiler/IR/AddExtern.lean b/src/Lean/Compiler/IR/AddExtern.lean index a6d6182f8e..f8bf11d4f3 100644 --- a/src/Lean/Compiler/IR/AddExtern.lean +++ b/src/Lean/Compiler/IR/AddExtern.lean @@ -11,7 +11,7 @@ public import Lean.Compiler.IR.Boxing import Lean.Compiler.IR.RC import Lean.Compiler.LCNF.ToImpureType import Lean.Compiler.LCNF.ToImpure -import Lean.Compiler.LCNF.ToImpureType +import Init.While public section diff --git a/src/Lean/Compiler/IR/Basic.lean b/src/Lean/Compiler/IR/Basic.lean index 3deace0e77..015625ea66 100644 --- a/src/Lean/Compiler/IR/Basic.lean +++ b/src/Lean/Compiler/IR/Basic.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Compiler.ExternAttr +import Init.Data.Range.Polymorphic.Iterators public section /-! diff --git a/src/Lean/Compiler/IR/CompilerM.lean b/src/Lean/Compiler/IR/CompilerM.lean index 75440509ce..4d7d9f7602 100644 --- a/src/Lean/Compiler/IR/CompilerM.lean +++ b/src/Lean/Compiler/IR/CompilerM.lean @@ -10,6 +10,7 @@ public import Lean.Compiler.IR.Format public import Lean.Compiler.ExportAttr public import Lean.Compiler.LCNF.PhaseExt import Lean.Compiler.InitAttr +import Init.Data.Format.Macro public section diff --git a/src/Lean/Compiler/IR/EmitC.lean b/src/Lean/Compiler/IR/EmitC.lean index 34f8fa80d4..07f1449052 100644 --- a/src/Lean/Compiler/IR/EmitC.lean +++ b/src/Lean/Compiler/IR/EmitC.lean @@ -13,6 +13,8 @@ public import Lean.Compiler.IR.SimpCase public import Lean.Compiler.IR.Boxing public import Lean.Compiler.ModPkgExt import Lean.Compiler.IR.SimpleGroundExpr +import Init.Omega +import Init.While public section diff --git a/src/Lean/Compiler/IR/ExpandResetReuse.lean b/src/Lean/Compiler/IR/ExpandResetReuse.lean index dd8c080738..dd7909e2ad 100644 --- a/src/Lean/Compiler/IR/ExpandResetReuse.lean +++ b/src/Lean/Compiler/IR/ExpandResetReuse.lean @@ -9,6 +9,7 @@ prelude public import Lean.Compiler.IR.CompilerM public import Lean.Compiler.IR.NormIds public import Lean.Compiler.IR.FreeVars +import Init.Omega public section diff --git a/src/Lean/Compiler/IR/Format.lean b/src/Lean/Compiler/IR/Format.lean index ff1b04a802..ed5e951fab 100644 --- a/src/Lean/Compiler/IR/Format.lean +++ b/src/Lean/Compiler/IR/Format.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Compiler.IR.Basic +import Init.Data.Format.Macro public section diff --git a/src/Lean/Compiler/IR/SimpCase.lean b/src/Lean/Compiler/IR/SimpCase.lean index 42b13a2e3c..c1e8d38f77 100644 --- a/src/Lean/Compiler/IR/SimpCase.lean +++ b/src/Lean/Compiler/IR/SimpCase.lean @@ -7,6 +7,8 @@ module prelude public import Lean.Compiler.IR.Format +import Init.Data.Range.Polymorphic.Iterators +import Init.Omega public section diff --git a/src/Lean/Compiler/IR/SimpleGroundExpr.lean b/src/Lean/Compiler/IR/SimpleGroundExpr.lean index 56eea7df61..96556e0596 100644 --- a/src/Lean/Compiler/IR/SimpleGroundExpr.lean +++ b/src/Lean/Compiler/IR/SimpleGroundExpr.lean @@ -7,8 +7,7 @@ module prelude public import Lean.Compiler.IR.CompilerM -public import Lean.EnvExtension -import Lean.Compiler.ClosedTermCache +import Init.While /-! This module contains logic for detecting simple ground expressions that can be extracted into diff --git a/src/Lean/Compiler/IR/ToIR.lean b/src/Lean/Compiler/IR/ToIR.lean index 412ac23100..56141d83bc 100644 --- a/src/Lean/Compiler/IR/ToIR.lean +++ b/src/Lean/Compiler/IR/ToIR.lean @@ -7,7 +7,7 @@ module prelude public import Lean.Compiler.IR.CompilerM -import Lean.Compiler.IR.ToIRType +public import Lean.Compiler.IR.ToIRType public section diff --git a/src/Lean/Compiler/LCNF/AlphaEqv.lean b/src/Lean/Compiler/LCNF/AlphaEqv.lean index ca7f153408..b633a9ae6a 100644 --- a/src/Lean/Compiler/LCNF/AlphaEqv.lean +++ b/src/Lean/Compiler/LCNF/AlphaEqv.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Compiler.LCNF.Basic +import Init.Omega public section diff --git a/src/Lean/Compiler/LCNF/Basic.lean b/src/Lean/Compiler/LCNF/Basic.lean index 62b0dd2499..37e71ed74f 100644 --- a/src/Lean/Compiler/LCNF/Basic.lean +++ b/src/Lean/Compiler/LCNF/Basic.lean @@ -10,6 +10,7 @@ public import Lean.Meta.Instances public import Lean.Compiler.ExternAttr public import Lean.Compiler.Specialize public import Lean.Compiler.LCNF.Types +import Init.Omega public section diff --git a/src/Lean/Compiler/LCNF/InferType.lean b/src/Lean/Compiler/LCNF/InferType.lean index e7968ff36f..729513da61 100644 --- a/src/Lean/Compiler/LCNF/InferType.lean +++ b/src/Lean/Compiler/LCNF/InferType.lean @@ -8,6 +8,7 @@ module prelude public import Lean.Compiler.LCNF.PhaseExt public import Lean.Compiler.LCNF.OtherDecl +import Init.Omega public section diff --git a/src/Lean/Compiler/LCNF/MonoTypes.lean b/src/Lean/Compiler/LCNF/MonoTypes.lean index 60f8373d63..48ed7631e8 100644 --- a/src/Lean/Compiler/LCNF/MonoTypes.lean +++ b/src/Lean/Compiler/LCNF/MonoTypes.lean @@ -8,7 +8,6 @@ module prelude public import Lean.Compiler.LCNF.Util public import Lean.Compiler.LCNF.BaseTypes -public import Lean.Compiler.LCNF.CompilerM public import Lean.Compiler.LCNF.Irrelevant public section diff --git a/src/Lean/Compiler/LCNF/PassManager.lean b/src/Lean/Compiler/LCNF/PassManager.lean index 94db22088e..ca7983c6e7 100644 --- a/src/Lean/Compiler/LCNF/PassManager.lean +++ b/src/Lean/Compiler/LCNF/PassManager.lean @@ -7,6 +7,8 @@ module prelude public import Lean.Compiler.LCNF.CompilerM +import Init.Data.Fin.Lemmas +import Init.Omega public section diff --git a/src/Lean/Compiler/LCNF/PrettyPrinter.lean b/src/Lean/Compiler/LCNF/PrettyPrinter.lean index 65984d4814..1c8b0a87e2 100644 --- a/src/Lean/Compiler/LCNF/PrettyPrinter.lean +++ b/src/Lean/Compiler/LCNF/PrettyPrinter.lean @@ -8,6 +8,7 @@ module prelude public import Lean.PrettyPrinter.Delaborator.Options public import Lean.Compiler.LCNF.Internalize +import Init.Data.Format.Macro public section diff --git a/src/Lean/Compiler/LCNF/PushProj.lean b/src/Lean/Compiler/LCNF/PushProj.lean index 067300e51a..4adb6fa90c 100644 --- a/src/Lean/Compiler/LCNF/PushProj.lean +++ b/src/Lean/Compiler/LCNF/PushProj.lean @@ -6,7 +6,6 @@ Authors: Henrik Böving module prelude -public import Lean.Compiler.LCNF.CompilerM public import Lean.Compiler.LCNF.PassManager import Lean.Compiler.LCNF.Internalize diff --git a/src/Lean/Compiler/LCNF/Simp/ConstantFold.lean b/src/Lean/Compiler/LCNF/Simp/ConstantFold.lean index dcee2451ba..426251c74c 100644 --- a/src/Lean/Compiler/LCNF/Simp/ConstantFold.lean +++ b/src/Lean/Compiler/LCNF/Simp/ConstantFold.lean @@ -8,6 +8,7 @@ module prelude public import Init.Data.UInt.Log2 public import Lean.Compiler.LCNF.InferType +import Init.Data.UInt.Lemmas public section diff --git a/src/Lean/Compiler/LCNF/Simp/FunDeclInfo.lean b/src/Lean/Compiler/LCNF/Simp/FunDeclInfo.lean index 53d7b7274a..86f65f77e7 100644 --- a/src/Lean/Compiler/LCNF/Simp/FunDeclInfo.lean +++ b/src/Lean/Compiler/LCNF/Simp/FunDeclInfo.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Compiler.LCNF.Simp.Basic +import Init.Data.Format.Macro public section diff --git a/src/Lean/Compiler/LCNF/Simp/Used.lean b/src/Lean/Compiler/LCNF/Simp/Used.lean index 1718b0038c..f1b46f020d 100644 --- a/src/Lean/Compiler/LCNF/Simp/Used.lean +++ b/src/Lean/Compiler/LCNF/Simp/Used.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Compiler.LCNF.Simp.SimpM +import Init.Omega public section diff --git a/src/Lean/Compiler/LCNF/Specialize.lean b/src/Lean/Compiler/LCNF/Specialize.lean index d73aa913bf..fd23a90244 100644 --- a/src/Lean/Compiler/LCNF/Specialize.lean +++ b/src/Lean/Compiler/LCNF/Specialize.lean @@ -13,6 +13,7 @@ import Lean.Compiler.LCNF.ToExpr import Lean.Compiler.LCNF.Level import Lean.Compiler.LCNF.Closure import Lean.Meta.Transform +import Init.Omega namespace Lean.Compiler.LCNF namespace Specialize diff --git a/src/Lean/Compiler/LCNF/StructProjCases.lean b/src/Lean/Compiler/LCNF/StructProjCases.lean index f2583b207b..2190b8b06e 100644 --- a/src/Lean/Compiler/LCNF/StructProjCases.lean +++ b/src/Lean/Compiler/LCNF/StructProjCases.lean @@ -7,7 +7,7 @@ module prelude public import Lean.Compiler.LCNF.PrettyPrinter -import Lean.Compiler.LCNF.MonoTypes +public import Lean.Compiler.LCNF.MonoTypes public section diff --git a/src/Lean/Compiler/LCNF/ToDecl.lean b/src/Lean/Compiler/LCNF/ToDecl.lean index 7a3e72fe92..eb6470ffc9 100644 --- a/src/Lean/Compiler/LCNF/ToDecl.lean +++ b/src/Lean/Compiler/LCNF/ToDecl.lean @@ -9,6 +9,7 @@ public import Lean.Compiler.InitAttr public import Lean.Compiler.LCNF.ToLCNF import Lean.Meta.Transform import Lean.Meta.Match.MatcherInfo +import Init.While public section namespace Lean.Compiler.LCNF /-- diff --git a/src/Lean/Compiler/LCNF/ToExpr.lean b/src/Lean/Compiler/LCNF/ToExpr.lean index a513ef4230..4651a41040 100644 --- a/src/Lean/Compiler/LCNF/ToExpr.lean +++ b/src/Lean/Compiler/LCNF/ToExpr.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Compiler.LCNF.Basic +import Init.Omega public section diff --git a/src/Lean/Compiler/LCNF/ToImpure.lean b/src/Lean/Compiler/LCNF/ToImpure.lean index 5f1a3f827d..830a62e9d3 100644 --- a/src/Lean/Compiler/LCNF/ToImpure.lean +++ b/src/Lean/Compiler/LCNF/ToImpure.lean @@ -6,10 +6,10 @@ Authors: Henrik Böving, Cameron Zwarich module prelude -public import Lean.Compiler.LCNF.CompilerM import Lean.Compiler.LCNF.ToImpureType public import Lean.Compiler.LCNF.PassManager import Lean.Compiler.LCNF.PhaseExt +import Init.Data.Format.Macro namespace Lean.Compiler.LCNF diff --git a/src/Lean/Compiler/LCNF/ToImpureType.lean b/src/Lean/Compiler/LCNF/ToImpureType.lean index 7c5d4452cd..6c41c31c19 100644 --- a/src/Lean/Compiler/LCNF/ToImpureType.lean +++ b/src/Lean/Compiler/LCNF/ToImpureType.lean @@ -6,9 +6,9 @@ Authors: Cameron Zwarich, Henrik Böving module prelude -public import Lean.Compiler.LCNF.CompilerM public import Lean.Compiler.LCNF.Irrelevant import Lean.Compiler.LCNF.MonoTypes +import Init.Data.Format.Macro namespace Lean.Compiler.LCNF diff --git a/src/Lean/Compiler/LCNF/ToLCNF.lean b/src/Lean/Compiler/LCNF/ToLCNF.lean index e902512b07..b523a029dd 100644 --- a/src/Lean/Compiler/LCNF/ToLCNF.lean +++ b/src/Lean/Compiler/LCNF/ToLCNF.lean @@ -13,8 +13,10 @@ public import Lean.Compiler.NeverExtractAttr import Lean.Meta.CasesInfo import Lean.Meta.WHNF import Lean.Compiler.NoncomputableAttr -import Lean.AddDecl import Lean.Compiler.LCNF.Util +import Init.Data.Format.Macro +import Init.Omega +import Lean.OriginalConstKind public section namespace Lean.Compiler.LCNF diff --git a/src/Lean/Compiler/LCNF/ToMono.lean b/src/Lean/Compiler/LCNF/ToMono.lean index 5390941338..84e2ec3b40 100644 --- a/src/Lean/Compiler/LCNF/ToMono.lean +++ b/src/Lean/Compiler/LCNF/ToMono.lean @@ -9,8 +9,8 @@ prelude public import Lean.Compiler.ImplementedByAttr public import Lean.Compiler.LCNF.InferType public import Lean.Compiler.NoncomputableAttr -import Lean.Compiler.LCNF.MonoTypes -public import Lean.Compiler.LCNF.Irrelevant +public import Lean.Compiler.LCNF.MonoTypes +import Init.While public section diff --git a/src/Lean/Compiler/LCNF/Types.lean b/src/Lean/Compiler/LCNF/Types.lean index 9ce7d8e14c..045650a824 100644 --- a/src/Lean/Compiler/LCNF/Types.lean +++ b/src/Lean/Compiler/LCNF/Types.lean @@ -8,7 +8,8 @@ module prelude public import Lean.Compiler.BorrowedAnnotation public import Lean.Meta.InferType -import Lean.AddDecl +import Init.Omega +import Lean.OriginalConstKind public section diff --git a/src/Lean/Compiler/LCNF/Util.lean b/src/Lean/Compiler/LCNF/Util.lean index 5550ec9f9d..1ef17811e4 100644 --- a/src/Lean/Compiler/LCNF/Util.lean +++ b/src/Lean/Compiler/LCNF/Util.lean @@ -9,7 +9,6 @@ prelude public import Init.Data.FloatArray.Basic public import Lean.CoreM public import Lean.Util.Recognizers -import Lean.Meta.Basic public section diff --git a/src/Lean/Compiler/LCNF/Visibility.lean b/src/Lean/Compiler/LCNF/Visibility.lean index 26820af0d8..5e7f266ae8 100644 --- a/src/Lean/Compiler/LCNF/Visibility.lean +++ b/src/Lean/Compiler/LCNF/Visibility.lean @@ -9,8 +9,6 @@ prelude public import Lean.Compiler.ImplementedByAttr import Lean.ExtraModUses import Lean.Compiler.Options -import Lean.Compiler.NoncomputableAttr -import Lean.AddDecl public section diff --git a/src/Lean/Compiler/NameMangling.lean b/src/Lean/Compiler/NameMangling.lean index d5ae148fe9..2941aa2411 100644 --- a/src/Lean/Compiler/NameMangling.lean +++ b/src/Lean/Compiler/NameMangling.lean @@ -8,6 +8,8 @@ module prelude public import Lean.Setup import Init.Data.String.TakeDrop +import Init.Data.UInt.Lemmas +import Init.Omega namespace String diff --git a/src/Lean/Compiler/Specialize.lean b/src/Lean/Compiler/Specialize.lean index cba2c0f932..452b7a7a1c 100644 --- a/src/Lean/Compiler/Specialize.lean +++ b/src/Lean/Compiler/Specialize.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Basic +import Init.Omega public section diff --git a/src/Lean/CoreM.lean b/src/Lean/CoreM.lean index ea97530d47..abc4324548 100644 --- a/src/Lean/CoreM.lean +++ b/src/Lean/CoreM.lean @@ -9,6 +9,7 @@ prelude public import Lean.Util.RecDepth public import Lean.ResolveName public import Lean.Language.Basic +import Init.While public section diff --git a/src/Lean/Data/EditDistance.lean b/src/Lean/Data/EditDistance.lean index 0e50cbaea0..a1c978106a 100644 --- a/src/Lean/Data/EditDistance.lean +++ b/src/Lean/Data/EditDistance.lean @@ -8,6 +8,10 @@ module prelude public import Init.Data.String.Basic import Init.Data.Vector.Basic +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas +import Init.Data.Range +import Init.While set_option linter.missingDocs true diff --git a/src/Lean/Data/Format.lean b/src/Lean/Data/Format.lean index 747d26c715..9bcb44e2ce 100644 --- a/src/Lean/Data/Format.lean +++ b/src/Lean/Data/Format.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Data.Options +public import Init.Data.Format.Instances public section universe u v diff --git a/src/Lean/Data/FuzzyMatching.lean b/src/Lean/Data/FuzzyMatching.lean index 6fadba7cb0..a0172d4ace 100644 --- a/src/Lean/Data/FuzzyMatching.lean +++ b/src/Lean/Data/FuzzyMatching.lean @@ -16,8 +16,6 @@ public import Init.Data.Range.Polymorphic.Nat public import Init.Data.OfScientific public import Init.Data.Option.Coe public import Init.Data.Range -import Init.Data.SInt.Basic -import Init.Data.String.Basic import Lean.Server.Completion.CompletionUtils public section diff --git a/src/Lean/Data/Json/Basic.lean b/src/Lean/Data/Json/Basic.lean index a4625a4fdf..1a35e52405 100644 --- a/src/Lean/Data/Json/Basic.lean +++ b/src/Lean/Data/Json/Basic.lean @@ -14,7 +14,8 @@ public import Std.Data.TreeMap.Raw.Basic public import Init.Data.Ord.String import Init.Data.Range.Polymorphic.Iterators import Init.Data.Range.Polymorphic.Nat -import Init.Data.String.TakeDrop +import Init.Data.String.Substring +import Init.Data.ToString.Macro public section diff --git a/src/Lean/Data/Json/FromToJson/Basic.lean b/src/Lean/Data/Json/FromToJson/Basic.lean index a59b65876a..5bde8a07ad 100644 --- a/src/Lean/Data/Json/FromToJson/Basic.lean +++ b/src/Lean/Data/Json/FromToJson/Basic.lean @@ -8,6 +8,8 @@ module prelude public import Lean.Data.Json.Printer +public import Init.Data.ToString.Macro +import Init.Data.Array.GetLit public section diff --git a/src/Lean/Data/Json/Printer.lean b/src/Lean/Data/Json/Printer.lean index a8f2b8afe8..d70bc85224 100644 --- a/src/Lean/Data/Json/Printer.lean +++ b/src/Lean/Data/Json/Printer.lean @@ -9,6 +9,8 @@ prelude public import Lean.Data.Format public import Lean.Data.Json.Basic import Init.Data.String.Search +import Init.Data.UInt.Lemmas +import Init.Omega public section diff --git a/src/Lean/Data/Lsp/Basic.lean b/src/Lean/Data/Lsp/Basic.lean index 06e72d05d5..ee3c970c40 100644 --- a/src/Lean/Data/Lsp/Basic.lean +++ b/src/Lean/Data/Lsp/Basic.lean @@ -9,6 +9,7 @@ module prelude public import Lean.Data.Json public import Lean.Data.Lsp.BasicAux +public import Init.Data.Option.Coe public section diff --git a/src/Lean/Data/Lsp/Communication.lean b/src/Lean/Data/Lsp/Communication.lean index 34e744b69a..9e81f1a858 100644 --- a/src/Lean/Data/Lsp/Communication.lean +++ b/src/Lean/Data/Lsp/Communication.lean @@ -10,6 +10,7 @@ prelude public import Lean.Data.JsonRpc import Init.Data.String.TakeDrop import Init.Data.String.Search +import Init.Data.Iterators.Consumers.Collect public section diff --git a/src/Lean/Data/Lsp/Internal.lean b/src/Lean/Data/Lsp/Internal.lean index 05d97c47c9..bd64732ada 100644 --- a/src/Lean/Data/Lsp/Internal.lean +++ b/src/Lean/Data/Lsp/Internal.lean @@ -7,10 +7,11 @@ Authors: Joscha Mennicken module prelude -public import Lean.Expr public import Lean.Data.Lsp.Basic public import Lean.Data.JsonRpc public import Lean.Data.DeclarationRange +public import Init.Data.Array.GetLit +import Init.Omega public section diff --git a/src/Lean/Data/Lsp/Ipc.lean b/src/Lean/Data/Lsp/Ipc.lean index 736db107d5..b8105bd8d6 100644 --- a/src/Lean/Data/Lsp/Ipc.lean +++ b/src/Lean/Data/Lsp/Ipc.lean @@ -12,6 +12,7 @@ public import Lean.Data.Lsp.Diagnostics public import Lean.Data.Lsp.Extra import Init.Data.List.Sort.Basic public import Lean.Data.Lsp.LanguageFeatures +import Init.While public section diff --git a/src/Lean/Data/Lsp/LanguageFeatures.lean b/src/Lean/Data/Lsp/LanguageFeatures.lean index 3d63435478..1975ad4852 100644 --- a/src/Lean/Data/Lsp/LanguageFeatures.lean +++ b/src/Lean/Data/Lsp/LanguageFeatures.lean @@ -8,9 +8,9 @@ module prelude public import Lean.Data.Lsp.Basic -meta import Lean.Data.Json public import Lean.Expr public import Init.Data.String.Search +public import Init.Data.Array.GetLit public section diff --git a/src/Lean/Data/Options.lean b/src/Lean/Data/Options.lean index 09edb4239f..7b526eddba 100644 --- a/src/Lean/Data/Options.lean +++ b/src/Lean/Data/Options.lean @@ -9,6 +9,7 @@ prelude public import Lean.ImportingFlag public import Lean.Data.KVMap public import Lean.Data.NameMap.Basic +import Init.Data.ToString.Macro public section diff --git a/src/Lean/Data/PersistentArray.lean b/src/Lean/Data/PersistentArray.lean index 31cf1578d7..516fb0ce50 100644 --- a/src/Lean/Data/PersistentArray.lean +++ b/src/Lean/Data/PersistentArray.lean @@ -8,7 +8,9 @@ module prelude public import Init.Data.Nat.Fold public import Init.Data.UInt.Basic -import Init.Data.String.Basic +import Init.Data.String.Defs +import Init.Data.ToString.Macro +import Init.Omega public section diff --git a/src/Lean/Data/PersistentHashMap.lean b/src/Lean/Data/PersistentHashMap.lean index 2a7ed0f059..f963f3a3f3 100644 --- a/src/Lean/Data/PersistentHashMap.lean +++ b/src/Lean/Data/PersistentHashMap.lean @@ -8,7 +8,10 @@ module prelude public import Init.Data.Array.BasicAux public import Init.Data.UInt.Basic -import Init.Data.String.Basic +public import Init.Control.Except +public import Init.Data.Array.Basic +import Init.Data.String.Defs +import Init.Data.ToString.Macro public section diff --git a/src/Lean/Data/RArray.lean b/src/Lean/Data/RArray.lean index 7e61dde874..b63b5ddb1b 100644 --- a/src/Lean/Data/RArray.lean +++ b/src/Lean/Data/RArray.lean @@ -8,6 +8,8 @@ module prelude public import Lean.Meta.DecLevel +public import Init.Data.RArray +import Init.Omega public section diff --git a/src/Lean/Data/RBMap.lean b/src/Lean/Data/RBMap.lean index 4fe7a63777..1510159f24 100644 --- a/src/Lean/Data/RBMap.lean +++ b/src/Lean/Data/RBMap.lean @@ -8,6 +8,8 @@ module prelude public import Init.Data.Ord.Basic public import Init.Data.Nat.Linear +public import Init.Data.Array.Basic +import Init.WFTactics public section diff --git a/src/Lean/Data/Trie.lean b/src/Lean/Data/Trie.lean index e9083edb89..bc2adec6b7 100644 --- a/src/Lean/Data/Trie.lean +++ b/src/Lean/Data/Trie.lean @@ -10,6 +10,7 @@ module prelude public import Lean.Data.Format public import Init.Data.Option.Coe +import Init.Omega public section diff --git a/src/Lean/Declaration.lean b/src/Lean/Declaration.lean index 90889ade1f..1e6867e510 100644 --- a/src/Lean/Declaration.lean +++ b/src/Lean/Declaration.lean @@ -7,6 +7,8 @@ module prelude public import Lean.Expr +import Init.Data.Ord.UInt +import Init.Data.ToString.Macro public section diff --git a/src/Lean/DocString/Add.lean b/src/Lean/DocString/Add.lean index 4242eda4d3..cf38d05aff 100644 --- a/src/Lean/DocString/Add.lean +++ b/src/Lean/DocString/Add.lean @@ -10,7 +10,6 @@ prelude import Lean.Elab.DocString public import Lean.DocString.Parser public import Lean.Elab.Term.TermElabM -import Std.Data.HashMap public section diff --git a/src/Lean/DocString/Extension.lean b/src/Lean/DocString/Extension.lean index 5961765dcc..68f87b8d51 100644 --- a/src/Lean/DocString/Extension.lean +++ b/src/Lean/DocString/Extension.lean @@ -9,6 +9,7 @@ prelude public import Lean.DeclarationRange public import Lean.DocString.Markdown public import Init.Data.String.Extra +import Init.Omega public section diff --git a/src/Lean/DocString/Links.lean b/src/Lean/DocString/Links.lean index f68c6131ed..d85813e5f9 100644 --- a/src/Lean/DocString/Links.lean +++ b/src/Lean/DocString/Links.lean @@ -10,6 +10,8 @@ prelude public import Lean.Syntax import Init.Data.String.TakeDrop import Init.Data.String.Search +import Init.Data.ToString.Macro +import Init.While public section diff --git a/src/Lean/DocString/Markdown.lean b/src/Lean/DocString/Markdown.lean index 04f5aae6fa..2ea2ae6992 100644 --- a/src/Lean/DocString/Markdown.lean +++ b/src/Lean/DocString/Markdown.lean @@ -8,10 +8,11 @@ module prelude -import Init.Data.Ord public import Lean.DocString.Types public import Init.Data.String.TakeDrop public import Init.Data.String.Search +import Init.Data.ToString.Macro +import Init.While set_option linter.missingDocs true diff --git a/src/Lean/DocString/Parser.lean b/src/Lean/DocString/Parser.lean index e653313c28..7a23556c9b 100644 --- a/src/Lean/DocString/Parser.lean +++ b/src/Lean/DocString/Parser.lean @@ -6,7 +6,7 @@ Author: David Thrane Christiansen module prelude public import Lean.DocString.Syntax -import Lean.Parser.Term.Basic +import Init.While set_option linter.missingDocs true diff --git a/src/Lean/DocString/Syntax.lean b/src/Lean/DocString/Syntax.lean index d6d3453746..6353bed723 100644 --- a/src/Lean/DocString/Syntax.lean +++ b/src/Lean/DocString/Syntax.lean @@ -8,7 +8,7 @@ module prelude public import Lean.Parser.Term.Basic -meta import Lean.Parser.Term.Basic +public meta import Lean.Parser.Term.Basic /-! diff --git a/src/Lean/DocString/Types.lean b/src/Lean/DocString/Types.lean index 094273ffe5..3c7c46abac 100644 --- a/src/Lean/DocString/Types.lean +++ b/src/Lean/DocString/Types.lean @@ -10,6 +10,7 @@ prelude public import Init.Data.Ord import Init.Data.Nat.Compare +public import Init.Data.Array.GetLit set_option linter.missingDocs true diff --git a/src/Lean/Elab/App.lean b/src/Lean/Elab/App.lean index 5d686c78c9..2c34fe0e83 100644 --- a/src/Lean/Elab/App.lean +++ b/src/Lean/Elab/App.lean @@ -11,6 +11,7 @@ public import Lean.Elab.Binders public import Lean.Elab.RecAppSyntax public import Lean.IdentifierSuggestion import all Lean.Elab.ErrorUtils +import Init.Omega public section diff --git a/src/Lean/Elab/Attributes.lean b/src/Lean/Elab/Attributes.lean index b101aea8d5..dae6c6fc3e 100644 --- a/src/Lean/Elab/Attributes.lean +++ b/src/Lean/Elab/Attributes.lean @@ -9,6 +9,7 @@ prelude public import Lean.Elab.Util public import Lean.Compiler.InitAttr import Lean.Parser.Term +public import Init.Data.Format.Macro public section namespace Lean.Elab diff --git a/src/Lean/Elab/AutoBound.lean b/src/Lean/Elab/AutoBound.lean index c0dab3a557..8a012c47a2 100644 --- a/src/Lean/Elab/AutoBound.lean +++ b/src/Lean/Elab/AutoBound.lean @@ -6,8 +6,6 @@ Authors: Leonardo de Moura module prelude -public import Lean.Data.Options -public import Lean.Message public import Lean.Meta.Hint public section diff --git a/src/Lean/Elab/AuxDef.lean b/src/Lean/Elab/AuxDef.lean index 5f11582263..4f1fdb5769 100644 --- a/src/Lean/Elab/AuxDef.lean +++ b/src/Lean/Elab/AuxDef.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Elab.Command -meta import Lean.Parser.Term public section diff --git a/src/Lean/Elab/BinderPredicates.lean b/src/Lean/Elab/BinderPredicates.lean index 49c1b8967d..70f8f65fda 100644 --- a/src/Lean/Elab/BinderPredicates.lean +++ b/src/Lean/Elab/BinderPredicates.lean @@ -8,7 +8,6 @@ module prelude public import Lean.Elab.MacroArgUtil public import Lean.Linter.MissingDocs -meta import Lean.Parser.Syntax public section diff --git a/src/Lean/Elab/Binders.lean b/src/Lean/Elab/Binders.lean index a0f6310d12..ad77e734f2 100644 --- a/src/Lean/Elab/Binders.lean +++ b/src/Lean/Elab/Binders.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Elab.Match -meta import Lean.Parser.Tactic import Lean.Linter.Basic public section diff --git a/src/Lean/Elab/BindersUtil.lean b/src/Lean/Elab/BindersUtil.lean index 2fdfd7afb6..dab99e1e37 100644 --- a/src/Lean/Elab/BindersUtil.lean +++ b/src/Lean/Elab/BindersUtil.lean @@ -8,6 +8,7 @@ module prelude public import Lean.Parser.Term meta import Lean.Parser.Term +import Init.Syntax public section diff --git a/src/Lean/Elab/BuiltinCommand.lean b/src/Lean/Elab/BuiltinCommand.lean index 6742cf36fe..ea85d6bf79 100644 --- a/src/Lean/Elab/BuiltinCommand.lean +++ b/src/Lean/Elab/BuiltinCommand.lean @@ -10,6 +10,9 @@ public import Lean.Meta.Reduce public import Lean.Elab.Eval public import Lean.Elab.Command public import Lean.Elab.Open +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas +import Init.System.Platform public section diff --git a/src/Lean/Elab/BuiltinTerm.lean b/src/Lean/Elab/BuiltinTerm.lean index 32a49b1f9d..5645861357 100644 --- a/src/Lean/Elab/BuiltinTerm.lean +++ b/src/Lean/Elab/BuiltinTerm.lean @@ -10,8 +10,6 @@ public import Lean.Meta.Diagnostics public import Lean.Elab.Open public import Lean.Elab.SetOption public import Lean.Elab.Eval -meta import Lean.Parser.Command -import Lean.ExtraModUses import Lean.Compiler.NoncomputableAttr public section diff --git a/src/Lean/Elab/Command.lean b/src/Lean/Elab/Command.lean index 55c1db0bca..e9922208a2 100644 --- a/src/Lean/Elab/Command.lean +++ b/src/Lean/Elab/Command.lean @@ -11,7 +11,6 @@ public import Lean.Elab.Binders public import Lean.Elab.Command.Scope public import Lean.Elab.SetOption public meta import Lean.Parser.Command -import Lean.ExtraModUses public section diff --git a/src/Lean/Elab/Command/WithWeakNamespace.lean b/src/Lean/Elab/Command/WithWeakNamespace.lean index 71334c61b6..719de78eee 100644 --- a/src/Lean/Elab/Command/WithWeakNamespace.lean +++ b/src/Lean/Elab/Command/WithWeakNamespace.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Elab.Command -public import Lean.Data.OpenDecl namespace Lean.Elab.Command diff --git a/src/Lean/Elab/DeclNameGen.lean b/src/Lean/Elab/DeclNameGen.lean index 8649dbaf06..fe55fb1f64 100644 --- a/src/Lean/Elab/DeclNameGen.lean +++ b/src/Lean/Elab/DeclNameGen.lean @@ -7,6 +7,8 @@ module prelude public import Lean.Elab.Command +import Init.Data.String.Modify +import Init.Omega public section diff --git a/src/Lean/Elab/DeclUtil.lean b/src/Lean/Elab/DeclUtil.lean index a7604d12c1..991c08ff59 100644 --- a/src/Lean/Elab/DeclUtil.lean +++ b/src/Lean/Elab/DeclUtil.lean @@ -8,7 +8,6 @@ module prelude public import Lean.Meta.Check public import Lean.Parser.Command -meta import Lean.Parser.Command public section diff --git a/src/Lean/Elab/Declaration.lean b/src/Lean/Elab/Declaration.lean index 46a7beddb0..b76754722a 100644 --- a/src/Lean/Elab/Declaration.lean +++ b/src/Lean/Elab/Declaration.lean @@ -8,7 +8,6 @@ module prelude public import Lean.Elab.MutualDef public import Lean.Elab.MutualInductive -import Lean.Parser.Command public section namespace Lean.Elab.Command diff --git a/src/Lean/Elab/Deriving/BEq.lean b/src/Lean/Elab/Deriving/BEq.lean index cefb56773b..263e0edfdc 100644 --- a/src/Lean/Elab/Deriving/BEq.lean +++ b/src/Lean/Elab/Deriving/BEq.lean @@ -12,6 +12,7 @@ import Lean.Elab.Deriving.Util import Lean.Meta.Constructions.CtorIdx import Lean.Meta.Constructions.CasesOnSameCtor import Lean.Meta.SameCtorUtils +import Init.Data.Array.OfFn namespace Lean.Elab.Deriving.BEq open Lean.Parser.Term diff --git a/src/Lean/Elab/Deriving/DecEq.lean b/src/Lean/Elab/Deriving/DecEq.lean index 0a042bd076..08ecd27ca7 100644 --- a/src/Lean/Elab/Deriving/DecEq.lean +++ b/src/Lean/Elab/Deriving/DecEq.lean @@ -14,6 +14,7 @@ import Lean.Meta.NatTable import Lean.Meta.Constructions.CtorIdx import Lean.Meta.Constructions.CasesOnSameCtor import Lean.Meta.SameCtorUtils +import Init.Data.Array.OfFn namespace Lean.Elab.Deriving.DecEq open Lean.Parser.Term diff --git a/src/Lean/Elab/Deriving/FromToJson.lean b/src/Lean/Elab/Deriving/FromToJson.lean index c8f2d9cd63..9e1f6e6d0d 100644 --- a/src/Lean/Elab/Deriving/FromToJson.lean +++ b/src/Lean/Elab/Deriving/FromToJson.lean @@ -8,7 +8,6 @@ module prelude public import Lean.Elab.Deriving.Basic public import Lean.Elab.Deriving.Util -meta import Lean.Parser.Do public section diff --git a/src/Lean/Elab/Deriving/Ord.lean b/src/Lean/Elab/Deriving/Ord.lean index 0fd7e19662..97781cb68c 100644 --- a/src/Lean/Elab/Deriving/Ord.lean +++ b/src/Lean/Elab/Deriving/Ord.lean @@ -12,6 +12,7 @@ import Lean.Elab.Deriving.Util import Lean.Meta.Constructions.CtorIdx import Lean.Meta.Constructions.CasesOnSameCtor import Lean.Meta.SameCtorUtils +import Init.Data.Array.OfFn register_builtin_option deriving.ord.linear_construction_threshold : Nat := { defValue := 10 diff --git a/src/Lean/Elab/Do/Basic.lean b/src/Lean/Elab/Do/Basic.lean index a493250ddc..b6cf7058a2 100644 --- a/src/Lean/Elab/Do/Basic.lean +++ b/src/Lean/Elab/Do/Basic.lean @@ -6,10 +6,9 @@ Authors: Sebastian Graf module prelude -public import Lean.Elab.Term.TermElabM public import Lean.Elab.Binders import Lean.Meta.ProdN -meta import Lean.Parser.Do +import Init.Omega public section diff --git a/src/Lean/Elab/Do/Legacy.lean b/src/Lean/Elab/Do/Legacy.lean index 0241bed712..35ddf75b15 100644 --- a/src/Lean/Elab/Do/Legacy.lean +++ b/src/Lean/Elab/Do/Legacy.lean @@ -10,6 +10,7 @@ public import Lean.Elab.BindersUtil public import Lean.Elab.PatternVar public import Lean.Elab.Quotation.Util meta import Lean.Parser.Do +import Init.Omega public section diff --git a/src/Lean/Elab/Do/Switch.lean b/src/Lean/Elab/Do/Switch.lean index 45338dd8f3..31e0ab90d8 100644 --- a/src/Lean/Elab/Do/Switch.lean +++ b/src/Lean/Elab/Do/Switch.lean @@ -6,12 +6,9 @@ Authors: Sebastian Graf module prelude -public import Init.System.IO -public import Lean.Data.Options public import Lean.Elab.Term.TermElabM import Lean.Elab.Do.Basic import Lean.Elab.Do.Legacy -meta import Lean.Parser.Do public section diff --git a/src/Lean/Elab/DocString.lean b/src/Lean/Elab/DocString.lean index c3fb817e38..40f3f527b1 100644 --- a/src/Lean/Elab/DocString.lean +++ b/src/Lean/Elab/DocString.lean @@ -5,12 +5,11 @@ Authors: David Thrane Christiansen -/ module prelude -import Std.Data.HashMap public import Lean.Elab.Term.TermElabM public import Lean.Elab.Command.Scope import Lean.DocString.Syntax -import Lean.Meta.Hint import Lean.BuiltinDocAttr +import Init.Omega set_option linter.missingDocs true diff --git a/src/Lean/Elab/DocString/Builtin.lean b/src/Lean/Elab/DocString/Builtin.lean index f88ce48ac3..9f21e64649 100644 --- a/src/Lean/Elab/DocString/Builtin.lean +++ b/src/Lean/Elab/DocString/Builtin.lean @@ -15,6 +15,7 @@ import Lean.Elab.Tactic.Doc import Lean.Data.EditDistance public import Lean.Elab.DocString.Builtin.Keywords import Lean.Server.InfoUtils +import Init.Omega namespace Lean.Doc diff --git a/src/Lean/Elab/DocString/Builtin/Keywords.lean b/src/Lean/Elab/DocString/Builtin/Keywords.lean index 49ab7dc8fe..64854232f5 100644 --- a/src/Lean/Elab/DocString/Builtin/Keywords.lean +++ b/src/Lean/Elab/DocString/Builtin/Keywords.lean @@ -11,17 +11,13 @@ public import Lean.Elab.DocString.Builtin.Postponed public meta import Lean.Elab.DocString.Builtin.Postponed public import Lean.DocString.Syntax public import Lean.Elab.InfoTree -import Lean.Elab.Open public import Lean.Parser -import Lean.Meta.Reduce -import Lean.Elab.Tactic.Doc -import Lean.Data.EditDistance +import Init.Omega namespace Lean.Doc open Lean Elab Term open Lean.Parser -open Lean.EditDistance open scoped Lean.Doc.Syntax set_option linter.missingDocs true diff --git a/src/Lean/Elab/DocString/Builtin/Parsing.lean b/src/Lean/Elab/DocString/Builtin/Parsing.lean index 65e47eea77..183abb79a3 100644 --- a/src/Lean/Elab/DocString/Builtin/Parsing.lean +++ b/src/Lean/Elab/DocString/Builtin/Parsing.lean @@ -5,8 +5,10 @@ Author: David Thrane Christiansen -/ module prelude -import Lean.Elab.DocString public import Lean.Parser.Extension +public import Init.While +import Init.Data.Array.Attach +import Init.Data.Array.Mem namespace Lean.Doc open Lean.Parser diff --git a/src/Lean/Elab/DocString/Builtin/Postponed.lean b/src/Lean/Elab/DocString/Builtin/Postponed.lean index 5b75cb8d2c..e7dbf82aa1 100644 --- a/src/Lean/Elab/DocString/Builtin/Postponed.lean +++ b/src/Lean/Elab/DocString/Builtin/Postponed.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Elab.Term.TermElabM -import Lean.Elab.DocString set_option linter.missingDocs true diff --git a/src/Lean/Elab/ElabRules.lean b/src/Lean/Elab/ElabRules.lean index cf64fa7ed1..10c851d8c8 100644 --- a/src/Lean/Elab/ElabRules.lean +++ b/src/Lean/Elab/ElabRules.lean @@ -9,7 +9,6 @@ prelude public import Lean.Elab.MacroArgUtil public import Lean.Elab.AuxDef public import Lean.Elab.Do.Basic -meta import Lean.Parser.Syntax public section diff --git a/src/Lean/Elab/ErrorExplanation.lean b/src/Lean/Elab/ErrorExplanation.lean index 1c429d6fac..f1f193f212 100644 --- a/src/Lean/Elab/ErrorExplanation.lean +++ b/src/Lean/Elab/ErrorExplanation.lean @@ -6,7 +6,6 @@ Authors: Joseph Rotella module prelude -meta import Lean.ErrorExplanation public import Lean.Widget.UserWidget public section diff --git a/src/Lean/Elab/Inductive.lean b/src/Lean/Elab/Inductive.lean index 3adfc9dfd8..954471f812 100644 --- a/src/Lean/Elab/Inductive.lean +++ b/src/Lean/Elab/Inductive.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Elab.MutualInductive -import Lean.Linter.Basic public section diff --git a/src/Lean/Elab/InfoTree/Main.lean b/src/Lean/Elab/InfoTree/Main.lean index 6de6918704..7091272391 100644 --- a/src/Lean/Elab/InfoTree/Main.lean +++ b/src/Lean/Elab/InfoTree/Main.lean @@ -10,6 +10,7 @@ prelude public import Init.Task public import Lean.Meta.PPGoal public import Lean.ReservedNameAction +import Init.Data.Format.Macro public section diff --git a/src/Lean/Elab/InheritDoc.lean b/src/Lean/Elab/InheritDoc.lean index 57908b029b..1d3b2ae337 100644 --- a/src/Lean/Elab/InheritDoc.lean +++ b/src/Lean/Elab/InheritDoc.lean @@ -6,7 +6,7 @@ Authors: Mario Carneiro module prelude -import Lean.DocString.Add +import Lean.Elab.InfoTree.Main namespace Lean diff --git a/src/Lean/Elab/Level.lean b/src/Lean/Elab/Level.lean index 50dbfbb34d..3bc12b5f44 100644 --- a/src/Lean/Elab/Level.lean +++ b/src/Lean/Elab/Level.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude -public import Lean.Parser.Level public import Lean.Elab.AutoBound public section diff --git a/src/Lean/Elab/Macro.lean b/src/Lean/Elab/Macro.lean index 654f5dca66..81742bc77f 100644 --- a/src/Lean/Elab/Macro.lean +++ b/src/Lean/Elab/Macro.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Elab.MacroArgUtil -meta import Lean.Parser.Syntax public section diff --git a/src/Lean/Elab/Mixfix.lean b/src/Lean/Elab/Mixfix.lean index 6094e2135a..ef1e748293 100644 --- a/src/Lean/Elab/Mixfix.lean +++ b/src/Lean/Elab/Mixfix.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Elab.Attributes +import Init.Syntax public section diff --git a/src/Lean/Elab/MutualInductive.lean b/src/Lean/Elab/MutualInductive.lean index c131054b9d..31cff6fad5 100644 --- a/src/Lean/Elab/MutualInductive.lean +++ b/src/Lean/Elab/MutualInductive.lean @@ -16,6 +16,8 @@ import Lean.Meta.Constructions.CtorIdx import Lean.Meta.Constructions.CtorElim import Lean.Meta.IndPredBelow import Lean.Meta.Injective +import Init.Data.List.MapIdx +import Init.Omega public section diff --git a/src/Lean/Elab/Open.lean b/src/Lean/Elab/Open.lean index d0832888a1..b91c0aca54 100644 --- a/src/Lean/Elab/Open.lean +++ b/src/Lean/Elab/Open.lean @@ -9,6 +9,7 @@ prelude public import Lean.Elab.Util public import Lean.Parser.Command meta import Lean.Parser.Command +import Init.Omega public section diff --git a/src/Lean/Elab/Parallel.lean b/src/Lean/Elab/Parallel.lean index 0cfc7c7182..e8b9ce813c 100644 --- a/src/Lean/Elab/Parallel.lean +++ b/src/Lean/Elab/Parallel.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Elab.Task -import Init.System.IO /-! # Iterator-based parallelization for Lean's tactic monads. diff --git a/src/Lean/Elab/PatternVar.lean b/src/Lean/Elab/PatternVar.lean index 2e2ccde173..e50de48ba5 100644 --- a/src/Lean/Elab/PatternVar.lean +++ b/src/Lean/Elab/PatternVar.lean @@ -6,9 +6,11 @@ Authors: Leonardo de Moura module prelude -public import Lean.Meta.Hint public import Lean.Elab.Arg public import Lean.Elab.MatchAltView +public import Init.Syntax +import Init.Data.Nat.Linear +import Init.Omega public section diff --git a/src/Lean/Elab/PreDefinition/Eqns.lean b/src/Lean/Elab/PreDefinition/Eqns.lean index f0646e971e..8b3ce5fe5b 100644 --- a/src/Lean/Elab/PreDefinition/Eqns.lean +++ b/src/Lean/Elab/PreDefinition/Eqns.lean @@ -8,7 +8,6 @@ module prelude import Lean.Elab.PreDefinition.EqnsUtils -import Lean.Meta.Match.MatchEqsExt import Lean.Meta.Match.NamedPatterns import Lean.Meta.Tactic.Simp.Main import Lean.Meta.Tactic.Split diff --git a/src/Lean/Elab/PreDefinition/EqnsUtils.lean b/src/Lean/Elab/PreDefinition/EqnsUtils.lean index be356a6aa1..ce3dbf6761 100644 --- a/src/Lean/Elab/PreDefinition/EqnsUtils.lean +++ b/src/Lean/Elab/PreDefinition/EqnsUtils.lean @@ -9,10 +9,10 @@ module prelude public import Lean.Meta.Basic import Lean.Meta.Tactic.Split -import Lean.Meta.Match.Match import Lean.Meta.Tactic.Refl import Lean.Meta.Tactic.Delta import Lean.Meta.Tactic.SplitIf +import Lean.Meta.Tactic.Contradiction /-! This module contains helpers useful to prove unfolding and/or equational theorems. diff --git a/src/Lean/Elab/PreDefinition/FixedParams.lean b/src/Lean/Elab/PreDefinition/FixedParams.lean index 01fd9b6009..afeecda562 100644 --- a/src/Lean/Elab/PreDefinition/FixedParams.lean +++ b/src/Lean/Elab/PreDefinition/FixedParams.lean @@ -8,6 +8,7 @@ module prelude public import Lean.Elab.PreDefinition.Basic +import Init.Omega public section diff --git a/src/Lean/Elab/PreDefinition/MkInhabitant.lean b/src/Lean/Elab/PreDefinition/MkInhabitant.lean index 4233a84252..7fa3388e1d 100644 --- a/src/Lean/Elab/PreDefinition/MkInhabitant.lean +++ b/src/Lean/Elab/PreDefinition/MkInhabitant.lean @@ -8,6 +8,7 @@ module prelude public import Lean.Meta.AppBuilder public import Lean.PrettyPrinter +import Init.Omega public section namespace Lean.Elab diff --git a/src/Lean/Elab/PreDefinition/PartialFixpoint/Eqns.lean b/src/Lean/Elab/PreDefinition/PartialFixpoint/Eqns.lean index 46fc6b7e3d..7d2c3bea11 100644 --- a/src/Lean/Elab/PreDefinition/PartialFixpoint/Eqns.lean +++ b/src/Lean/Elab/PreDefinition/PartialFixpoint/Eqns.lean @@ -7,14 +7,12 @@ module prelude public import Lean.Elab.PreDefinition.FixedParams -import Lean.Elab.PreDefinition.EqnsUtils -import Lean.Meta.ArgsPacker.Basic import Init.Internal.Order.Basic -import Lean.Elab.Tactic.Conv +import Lean.Meta.Tactic.Delta +import Lean.Meta.Tactic.Refl namespace Lean.Elab.PartialFixpoint open Meta -open Eqns public structure EqnInfo where declName : Name diff --git a/src/Lean/Elab/PreDefinition/PartialFixpoint/Induction.lean b/src/Lean/Elab/PreDefinition/PartialFixpoint/Induction.lean index 272b7ca228..dcdc1ebc61 100644 --- a/src/Lean/Elab/PreDefinition/PartialFixpoint/Induction.lean +++ b/src/Lean/Elab/PreDefinition/PartialFixpoint/Induction.lean @@ -7,12 +7,10 @@ Authors: Joachim Breitner module prelude -import Lean.Meta.Match.MatcherApp.Transform import Lean.Meta.Injective -- for elimOptParam -import Lean.Meta.ArgsPacker import Lean.Elab.PreDefinition.PartialFixpoint.Eqns -import Lean.Meta.Tactic.ElimInfo import Init.Internal.Order.Basic +import Lean.Meta.PProdN namespace Lean.Elab.PartialFixpoint diff --git a/src/Lean/Elab/PreDefinition/Structural/BRecOn.lean b/src/Lean/Elab/PreDefinition/Structural/BRecOn.lean index 14dd046ec5..259ced1c96 100644 --- a/src/Lean/Elab/PreDefinition/Structural/BRecOn.lean +++ b/src/Lean/Elab/PreDefinition/Structural/BRecOn.lean @@ -11,6 +11,8 @@ public import Lean.Meta.PProdN public import Lean.Meta.Match.MatcherApp.Transform public import Lean.Elab.PreDefinition.Structural.Basic public import Lean.Elab.PreDefinition.Structural.RecArgInfo +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas public section diff --git a/src/Lean/Elab/PreDefinition/Structural/FindRecArg.lean b/src/Lean/Elab/PreDefinition/Structural/FindRecArg.lean index d3945c5038..4becbfe978 100644 --- a/src/Lean/Elab/PreDefinition/Structural/FindRecArg.lean +++ b/src/Lean/Elab/PreDefinition/Structural/FindRecArg.lean @@ -9,6 +9,7 @@ prelude public import Lean.Elab.PreDefinition.TerminationMeasure public import Lean.Elab.PreDefinition.Structural.Basic public import Lean.Elab.PreDefinition.Structural.RecArgInfo +import Init.Omega public section diff --git a/src/Lean/Elab/PreDefinition/Structural/IndPred.lean b/src/Lean/Elab/PreDefinition/Structural/IndPred.lean index 96e6606dd1..463c850993 100644 --- a/src/Lean/Elab/PreDefinition/Structural/IndPred.lean +++ b/src/Lean/Elab/PreDefinition/Structural/IndPred.lean @@ -10,6 +10,7 @@ public import Lean.Elab.PreDefinition.Structural.Basic public import Lean.Elab.PreDefinition.Structural.RecArgInfo import Lean.Util.HasConstCache import Lean.Meta.IndPredBelow +import Init.Omega namespace Lean.Elab.Structural open Meta diff --git a/src/Lean/Elab/PreDefinition/TerminationHint.lean b/src/Lean/Elab/PreDefinition/TerminationHint.lean index 509731b1c0..5448856c9a 100644 --- a/src/Lean/Elab/PreDefinition/TerminationHint.lean +++ b/src/Lean/Elab/PreDefinition/TerminationHint.lean @@ -8,6 +8,7 @@ module prelude public import Lean.Parser.Term meta import Lean.Parser.Term +import Init.Omega public section diff --git a/src/Lean/Elab/PreDefinition/TerminationMeasure.lean b/src/Lean/Elab/PreDefinition/TerminationMeasure.lean index eca72477f1..bd9b520513 100644 --- a/src/Lean/Elab/PreDefinition/TerminationMeasure.lean +++ b/src/Lean/Elab/PreDefinition/TerminationMeasure.lean @@ -8,6 +8,7 @@ module prelude public import Lean.Elab.Binders +import Init.Omega public section diff --git a/src/Lean/Elab/PreDefinition/WF/Eqns.lean b/src/Lean/Elab/PreDefinition/WF/Eqns.lean index 9379c90e17..c08711b4e9 100644 --- a/src/Lean/Elab/PreDefinition/WF/Eqns.lean +++ b/src/Lean/Elab/PreDefinition/WF/Eqns.lean @@ -8,14 +8,9 @@ module prelude public import Lean.Elab.PreDefinition.FixedParams public import Lean.Meta.ArgsPacker.Basic -import Lean.Elab.PreDefinition.EqnsUtils -import Lean.Meta.Tactic.Rewrite -import Lean.Meta.Tactic.Split -import Lean.Elab.PreDefinition.Basic namespace Lean.Elab.WF open Meta -open Eqns public structure EqnInfo where declName : Name diff --git a/src/Lean/Elab/PreDefinition/WF/GuessLex.lean b/src/Lean/Elab/PreDefinition/WF/GuessLex.lean index d1266ff0c9..eaca707d1b 100644 --- a/src/Lean/Elab/PreDefinition/WF/GuessLex.lean +++ b/src/Lean/Elab/PreDefinition/WF/GuessLex.lean @@ -18,6 +18,7 @@ public import Lean.Elab.PreDefinition.FixedParams public import Lean.Elab.PreDefinition.WF.Basic public import Lean.Data.Array import Lean.Meta.Tactic.Refl +import Init.Data.Prod public section diff --git a/src/Lean/Elab/PreDefinition/WF/Main.lean b/src/Lean/Elab/PreDefinition/WF/Main.lean index ac0205bad6..b066ac285e 100644 --- a/src/Lean/Elab/PreDefinition/WF/Main.lean +++ b/src/Lean/Elab/PreDefinition/WF/Main.lean @@ -13,7 +13,6 @@ public import Lean.Elab.PreDefinition.WF.Fix public import Lean.Elab.PreDefinition.WF.Unfold public import Lean.Elab.PreDefinition.WF.Preprocess public import Lean.Elab.PreDefinition.WF.GuessLex -import Lean.ExtraModUses public section diff --git a/src/Lean/Elab/PreDefinition/WF/Unfold.lean b/src/Lean/Elab/PreDefinition/WF/Unfold.lean index 76b3fa7f73..af2306ab7d 100644 --- a/src/Lean/Elab/PreDefinition/WF/Unfold.lean +++ b/src/Lean/Elab/PreDefinition/WF/Unfold.lean @@ -11,9 +11,9 @@ public import Lean.Meta.Tactic.Simp.Types import Lean.Elab.PreDefinition.EqnsUtils import Lean.Meta.Tactic.Split import Lean.Meta.Tactic.Simp.Main -import Lean.Meta.Tactic.Simp.BuiltinSimprocs import Lean.Meta.Tactic.Delta import Lean.Meta.Tactic.Refl +import Init.Simproc /-! This module is responsible for proving the unfolding equation for functions defined diff --git a/src/Lean/Elab/RecommendedSpelling.lean b/src/Lean/Elab/RecommendedSpelling.lean index 7aa62c1bc6..92eacd8636 100644 --- a/src/Lean/Elab/RecommendedSpelling.lean +++ b/src/Lean/Elab/RecommendedSpelling.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Elab.Command -import Lean.ExtraModUses public section diff --git a/src/Lean/Elab/SetOption.lean b/src/Lean/Elab/SetOption.lean index e04043efa0..45504ed616 100644 --- a/src/Lean/Elab/SetOption.lean +++ b/src/Lean/Elab/SetOption.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Elab.InfoTree +public import Init.Syntax public section namespace Lean.Elab diff --git a/src/Lean/Elab/Structure.lean b/src/Lean/Elab/Structure.lean index fe2650c0e9..d52629c983 100644 --- a/src/Lean/Elab/Structure.lean +++ b/src/Lean/Elab/Structure.lean @@ -8,9 +8,7 @@ module prelude public import Lean.Meta.Structure public import Lean.Elab.MutualInductive -import Lean.Linter.Basic -import Lean.DocString -import Lean.DocString.Extension +import Init.Omega public section diff --git a/src/Lean/Elab/Syntax.lean b/src/Lean/Elab/Syntax.lean index cc961ba0e6..6c28249e4e 100644 --- a/src/Lean/Elab/Syntax.lean +++ b/src/Lean/Elab/Syntax.lean @@ -9,7 +9,8 @@ prelude public import Lean.Elab.Command public import Lean.Parser.Syntax public meta import Lean.Parser.Syntax -import Lean.ExtraModUses +import Init.Data.String.Modify +import Init.Omega public section diff --git a/src/Lean/Elab/SyntheticMVars.lean b/src/Lean/Elab/SyntheticMVars.lean index 7bda7117b3..36b974314c 100644 --- a/src/Lean/Elab/SyntheticMVars.lean +++ b/src/Lean/Elab/SyntheticMVars.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura, Sebastian Ullrich module prelude -public import Lean.Util.NumObjs public import Lean.Util.ForEachExpr public import Lean.Util.OccursCheck public import Lean.Elab.Tactic.Basic diff --git a/src/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/ApplyControlFlow.lean b/src/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/ApplyControlFlow.lean index 2c705b7926..0a1a7c3e6c 100644 --- a/src/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/ApplyControlFlow.lean +++ b/src/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/ApplyControlFlow.lean @@ -7,6 +7,8 @@ module prelude public import Lean.Meta.Tactic.Simp +import Init.ByCases +import Init.Omega public section diff --git a/src/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Simproc.lean b/src/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Simproc.lean index 77c3faaea9..ae690fd2f4 100644 --- a/src/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Simproc.lean +++ b/src/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Simproc.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Normalize public import Lean.Elab.Tactic.BVDecide.Frontend.Attr +import Init.Omega public section diff --git a/src/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/TypeAnalysis.lean b/src/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/TypeAnalysis.lean index b041351acc..4f1eff8b61 100644 --- a/src/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/TypeAnalysis.lean +++ b/src/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/TypeAnalysis.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Normalize.BitVec public import Lean.Elab.Tactic.BVDecide.Frontend.Normalize.Basic +import Init.ByCases public section diff --git a/src/Lean/Elab/Tactic/BVDecide/LRAT/Trim.lean b/src/Lean/Elab/Tactic/BVDecide/LRAT/Trim.lean index 6e10675091..163ff99802 100644 --- a/src/Lean/Elab/Tactic/BVDecide/LRAT/Trim.lean +++ b/src/Lean/Elab/Tactic/BVDecide/LRAT/Trim.lean @@ -10,6 +10,7 @@ public import Init.Data.Nat.Fold public import Std.Tactic.BVDecide.LRAT.Actions public import Std.Data.HashMap import Init.Data.Range.Polymorphic +import Init.Omega public section diff --git a/src/Lean/Elab/Tactic/Basic.lean b/src/Lean/Elab/Tactic/Basic.lean index 8afa8a0023..7f6afd4721 100644 --- a/src/Lean/Elab/Tactic/Basic.lean +++ b/src/Lean/Elab/Tactic/Basic.lean @@ -8,7 +8,7 @@ module prelude public import Lean.Meta.Tactic.Util public import Lean.Elab.Term -import Lean.ExtraModUses +import Init.Omega public section diff --git a/src/Lean/Elab/Tactic/BuiltinTactic.lean b/src/Lean/Elab/Tactic/BuiltinTactic.lean index ab4a4767ae..7ad5c49144 100644 --- a/src/Lean/Elab/Tactic/BuiltinTactic.lean +++ b/src/Lean/Elab/Tactic/BuiltinTactic.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Meta.Diagnostics public import Lean.Meta.Tactic.Refl -public import Lean.Elab.Binders public import Lean.Elab.Open public import Lean.Elab.Eval public import Lean.Elab.SetOption @@ -15,7 +14,6 @@ public import Lean.Elab.Tactic.ElabTerm public import Lean.Elab.Do import Lean.Meta.Tactic.Replace import Lean.Elab.Tactic.RenameInaccessibles -meta import Lean.Parser.Command public section namespace Lean.Elab.Tactic diff --git a/src/Lean/Elab/Tactic/Config.lean b/src/Lean/Elab/Tactic/Config.lean index 280696feb6..8decf5bfb1 100644 --- a/src/Lean/Elab/Tactic/Config.lean +++ b/src/Lean/Elab/Tactic/Config.lean @@ -9,7 +9,6 @@ prelude public import Lean.Meta.Eval public import Lean.Elab.SyntheticMVars import Lean.Linter.MissingDocs -meta import Lean.Parser.Tactic public section diff --git a/src/Lean/Elab/Tactic/ConfigSetter.lean b/src/Lean/Elab/Tactic/ConfigSetter.lean index e0b3bb82b4..37a2479c3f 100644 --- a/src/Lean/Elab/Tactic/ConfigSetter.lean +++ b/src/Lean/Elab/Tactic/ConfigSetter.lean @@ -6,9 +6,7 @@ Authors: Leonardo de Moura module prelude public import Lean.Elab.Command -public import Lean.Elab.Term -meta import Lean.Elab.Command -public import Lean.Data.KVMap +public meta import Lean.Elab.Command public section namespace Lean.Elab open Command Meta diff --git a/src/Lean/Elab/Tactic/Do/Attr.lean b/src/Lean/Elab/Tactic/Do/Attr.lean index 8255033f40..2649624050 100644 --- a/src/Lean/Elab/Tactic/Do/Attr.lean +++ b/src/Lean/Elab/Tactic/Do/Attr.lean @@ -8,6 +8,7 @@ module prelude public import Lean.Meta.Tactic.Simp public import Std.Tactic.Do.Syntax +import Init.While public section diff --git a/src/Lean/Elab/Tactic/Do/LetElim.lean b/src/Lean/Elab/Tactic/Do/LetElim.lean index c78ec5575a..c544c591df 100644 --- a/src/Lean/Elab/Tactic/Do/LetElim.lean +++ b/src/Lean/Elab/Tactic/Do/LetElim.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Tactic.Simp +import Init.Omega public section diff --git a/src/Lean/Elab/Tactic/Do/ProofMode/Cases.lean b/src/Lean/Elab/Tactic/Do/ProofMode/Cases.lean index 2bc4b472a7..524d15bda4 100644 --- a/src/Lean/Elab/Tactic/Do/ProofMode/Cases.lean +++ b/src/Lean/Elab/Tactic/Do/ProofMode/Cases.lean @@ -9,8 +9,8 @@ prelude public import Lean.Elab.Tactic.Do.ProofMode.MGoal public import Std.Tactic.Do.Syntax import Lean.Elab.Tactic.Do.ProofMode.Pure -import Lean.Elab.Tactic.Do.ProofMode.Intro import Lean.Elab.Tactic.Do.ProofMode.Focus +import Lean.Elab.Tactic.Do.ProofMode.Basic public section diff --git a/src/Lean/Elab/Tactic/Do/ProofMode/Delab.lean b/src/Lean/Elab/Tactic/Do/ProofMode/Delab.lean index dedf866348..1a912f270b 100644 --- a/src/Lean/Elab/Tactic/Do/ProofMode/Delab.lean +++ b/src/Lean/Elab/Tactic/Do/ProofMode/Delab.lean @@ -7,8 +7,6 @@ module prelude public import Lean.Elab.Tactic.Do.ProofMode.MGoal -public import Lean.PrettyPrinter.Delaborator.Basic -import Std.Do.SPred.Notation.Basic public section diff --git a/src/Lean/Elab/Tactic/Do/ProofMode/Have.lean b/src/Lean/Elab/Tactic/Do/ProofMode/Have.lean index 01b0c383d6..7022a24073 100644 --- a/src/Lean/Elab/Tactic/Do/ProofMode/Have.lean +++ b/src/Lean/Elab/Tactic/Do/ProofMode/Have.lean @@ -9,8 +9,7 @@ prelude public import Std.Tactic.Do.Syntax public import Lean.Elab.Tactic.Basic import Lean.Elab.Tactic.Do.ProofMode.Focus -import Lean.Elab.Tactic.Do.ProofMode.Cases -import Lean.Elab.Tactic.Do.ProofMode.Specialize +import Lean.Elab.Tactic.ElabTerm public section diff --git a/src/Lean/Elab/Tactic/Do/ProofMode/MGoal.lean b/src/Lean/Elab/Tactic/Do/ProofMode/MGoal.lean index 2b5742b8f4..4068e1b024 100644 --- a/src/Lean/Elab/Tactic/Do/ProofMode/MGoal.lean +++ b/src/Lean/Elab/Tactic/Do/ProofMode/MGoal.lean @@ -8,7 +8,6 @@ module prelude public import Std.Do.SPred.DerivedLaws public import Std.Tactic.Do.ProofMode -public import Lean.SubExpr public import Lean.Elab.Tactic.Basic public section diff --git a/src/Lean/Elab/Tactic/Do/ProofMode/Pure.lean b/src/Lean/Elab/Tactic/Do/ProofMode/Pure.lean index dd0d7f5933..5adbbbf1ef 100644 --- a/src/Lean/Elab/Tactic/Do/ProofMode/Pure.lean +++ b/src/Lean/Elab/Tactic/Do/ProofMode/Pure.lean @@ -6,9 +6,7 @@ Authors: Lars König, Mario Carneiro, Sebastian Graf module prelude -public import Lean.Elab.Tactic.Basic public import Lean.Elab.Tactic.Do.ProofMode.MGoal -import Std.Tactic.Do.Syntax import Lean.Elab.Tactic.Meta import Lean.Elab.Tactic.Do.ProofMode.Basic import Lean.Elab.Tactic.Do.ProofMode.Focus diff --git a/src/Lean/Elab/Tactic/Do/ProofMode/Specialize.lean b/src/Lean/Elab/Tactic/Do/ProofMode/Specialize.lean index 01675a6671..c6ad00fa37 100644 --- a/src/Lean/Elab/Tactic/Do/ProofMode/Specialize.lean +++ b/src/Lean/Elab/Tactic/Do/ProofMode/Specialize.lean @@ -10,7 +10,6 @@ public import Lean.Elab.Tactic.ElabTerm public import Lean.Elab.Tactic.Do.ProofMode.MGoal import Lean.Elab.Tactic.Do.ProofMode.Basic import Lean.Elab.Tactic.Do.ProofMode.Focus -import Lean.Elab.Tactic.Do.ProofMode.Pure public section diff --git a/src/Lean/Elab/Tactic/Do/Spec.lean b/src/Lean/Elab/Tactic/Do/Spec.lean index f4a88fc621..84a28ffff5 100644 --- a/src/Lean/Elab/Tactic/Do/Spec.lean +++ b/src/Lean/Elab/Tactic/Do/Spec.lean @@ -7,10 +7,8 @@ module prelude public import Lean.Elab.Tactic.Do.Attr -public import Lean.Elab.Tactic.Do.ProofMode.MGoal -- All these should become private imports in the future: -import Std.Tactic.Do.Syntax public import Lean.Elab.Tactic.Do.ProofMode.Intro public import Lean.Elab.Tactic.Do.ProofMode.Pure public import Lean.Elab.Tactic.Do.ProofMode.Frame diff --git a/src/Lean/Elab/Tactic/Do/Syntax.lean b/src/Lean/Elab/Tactic/Do/Syntax.lean index 0a0b797efa..760d893ae6 100644 --- a/src/Lean/Elab/Tactic/Do/Syntax.lean +++ b/src/Lean/Elab/Tactic/Do/Syntax.lean @@ -8,7 +8,6 @@ module prelude public import Lean.Elab.BuiltinNotation public import Std.Do.Triple.Basic -import Std.Do.SPred.Notation.Basic public section diff --git a/src/Lean/Elab/Tactic/Do/VCGen.lean b/src/Lean/Elab/Tactic/Do/VCGen.lean index 1d1f82c581..0bc89abb29 100644 --- a/src/Lean/Elab/Tactic/Do/VCGen.lean +++ b/src/Lean/Elab/Tactic/Do/VCGen.lean @@ -7,14 +7,9 @@ module prelude import Lean.Elab.Tactic.Do.VCGen.Split -import Lean.Elab.Tactic.Simp import Lean.Elab.Tactic.Do.ProofMode.Revert -import Lean.Elab.Tactic.Do.ProofMode.Cases -import Lean.Elab.Tactic.Do.ProofMode.Specialize import Lean.Elab.Tactic.Do.LetElim import Lean.Elab.Tactic.Do.Spec -import Lean.Elab.Tactic.Do.Syntax -import Lean.Elab.Tactic.Induction import Lean.Meta.Tactic.TryThis public import Lean.Elab.Tactic.Do.VCGen.Basic diff --git a/src/Lean/Elab/Tactic/Do/VCGen/SuggestInvariant.lean b/src/Lean/Elab/Tactic/Do/VCGen/SuggestInvariant.lean index 2392ea4b9d..8284a7e9fb 100644 --- a/src/Lean/Elab/Tactic/Do/VCGen/SuggestInvariant.lean +++ b/src/Lean/Elab/Tactic/Do/VCGen/SuggestInvariant.lean @@ -9,10 +9,9 @@ prelude public import Lean.Elab.Tactic.Basic public import Lean.Meta.Tactic.Simp.Types import Lean.Meta.Tactic.Simp.Main -import Lean.Util.OccursCheck -import Lean.PrettyPrinter.Delaborator import Lean.Elab.Tactic.Do.ProofMode.MGoal import Std.Tactic.Do -- Needed for use of `mleave` in quote +import Init.Data.Array.Mem namespace Lean.Elab.Tactic.Do diff --git a/src/Lean/Elab/Tactic/Ext.lean b/src/Lean/Elab/Tactic/Ext.lean index 3392fb74af..188fd930df 100644 --- a/src/Lean/Elab/Tactic/Ext.lean +++ b/src/Lean/Elab/Tactic/Ext.lean @@ -8,12 +8,9 @@ module prelude import Lean.Meta.Tactic.Ext import Lean.Elab.Tactic.RCases -import Lean.Elab.Tactic.Repeat -import Lean.Elab.Tactic.BuiltinTactic import Lean.Elab.Command import Lean.Linter.Basic -- These public imports are needed because for now we make `extCore` public. -public import Lean.Expr public import Lean.Elab.Term.TermElabM /-! diff --git a/src/Lean/Elab/Tactic/Grind/Basic.lean b/src/Lean/Elab/Tactic/Grind/Basic.lean index 6861e4b7ba..9169c5784f 100644 --- a/src/Lean/Elab/Tactic/Grind/Basic.lean +++ b/src/Lean/Elab/Tactic/Grind/Basic.lean @@ -7,9 +7,8 @@ module prelude public import Lean.Elab.Tactic.Basic public import Lean.Meta.Tactic.Grind.Main -import Lean.CoreM import Lean.Meta.Tactic.Grind.Intro -import Lean.Meta.Tactic.Grind.PP +import Init.Omega public section namespace Lean.Elab.Tactic.Grind open Meta diff --git a/src/Lean/Elab/Tactic/Grind/BuiltinTactic.lean b/src/Lean/Elab/Tactic/Grind/BuiltinTactic.lean index cd0e58a6d4..dc0b91e66a 100644 --- a/src/Lean/Elab/Tactic/Grind/BuiltinTactic.lean +++ b/src/Lean/Elab/Tactic/Grind/BuiltinTactic.lean @@ -13,24 +13,19 @@ import Lean.Meta.Tactic.Grind.Arith.Linear.Search import Lean.Meta.Tactic.Grind.Arith.CommRing.EqCnstr import Lean.Meta.Tactic.Grind.AC.Eq import Lean.Meta.Tactic.Grind.EMatch -import Lean.Meta.Tactic.Grind.EMatchTheorem import Lean.Meta.Tactic.Grind.PP import Lean.Meta.Tactic.Grind.Internalize import Lean.Meta.Tactic.Grind.Intro import Lean.Meta.Tactic.Grind.Split -import Lean.Meta.Tactic.Grind.Anchor import Lean.Meta.Tactic.Grind.Arith.CommRing.PP import Lean.Meta.Tactic.Grind.Arith.Linear.PP import Lean.Meta.Tactic.Grind.AC.PP import Lean.Meta.Tactic.ExposeNames -import Lean.Elab.Tactic.Basic import Lean.Elab.Tactic.RenameInaccessibles -import Lean.Elab.Tactic.Grind.Filter import Lean.Elab.Tactic.Grind.Anchor import Lean.Elab.Tactic.Grind.ShowState import Lean.Elab.Tactic.Grind.Config import Lean.Elab.Tactic.Grind.Param -import Lean.Elab.SetOption namespace Lean.Elab.Tactic.Grind def showStateAt (ref : Syntax) (filter? : Option (TSyntax `grind_filter)) : GrindTacticM Unit := do diff --git a/src/Lean/Elab/Tactic/Grind/Config.lean b/src/Lean/Elab/Tactic/Grind/Config.lean index 8a4ee90a5b..77284d85bb 100644 --- a/src/Lean/Elab/Tactic/Grind/Config.lean +++ b/src/Lean/Elab/Tactic/Grind/Config.lean @@ -6,7 +6,7 @@ Authors: Leonardo de Moura module prelude public import Lean.Elab.Tactic.Grind.Basic -meta import Lean.Elab.Tactic.ConfigSetter +import Lean.Elab.Tactic.ConfigSetter public section namespace Lean.Elab.Tactic.Grind diff --git a/src/Lean/Elab/Tactic/Grind/Filter.lean b/src/Lean/Elab/Tactic/Grind/Filter.lean index d9b0889650..012b4b607d 100644 --- a/src/Lean/Elab/Tactic/Grind/Filter.lean +++ b/src/Lean/Elab/Tactic/Grind/Filter.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Elab.Tactic.Grind.Basic public import Lean.Meta.Tactic.Grind.Filter -import Init.Grind.Interactive namespace Lean.Elab.Tactic.Grind open Meta Grind diff --git a/src/Lean/Elab/Tactic/Grind/Lint.lean b/src/Lean/Elab/Tactic/Grind/Lint.lean index b06e412d4a..bc209f2958 100644 --- a/src/Lean/Elab/Tactic/Grind/Lint.lean +++ b/src/Lean/Elab/Tactic/Grind/Lint.lean @@ -7,12 +7,8 @@ module prelude public import Lean.Elab.Command import Init.Grind.Lint -import Lean.Data.Name -import Lean.Meta.Tactic.Grind.EMatchTheorem -import Lean.EnvExtension import Lean.Elab.Tactic.Grind.Config import Lean.Meta.Tactic.TryThis -import Lean.PrettyPrinter namespace Lean.Elab.Tactic.Grind builtin_initialize skipExt : SimplePersistentEnvExtension Name NameSet ← diff --git a/src/Lean/Elab/Tactic/Grind/LintExceptions.lean b/src/Lean/Elab/Tactic/Grind/LintExceptions.lean index 92f9200587..77e29528f9 100644 --- a/src/Lean/Elab/Tactic/Grind/LintExceptions.lean +++ b/src/Lean/Elab/Tactic/Grind/LintExceptions.lean @@ -3,11 +3,11 @@ Copyright (c) 2025 Amazon.com, Inc. or its affiliates. All Rights Reserved. Released under Apache 2.0 license as described in the file LICENSE. Authors: Leonardo de Moura -/ -module +module -- shake: keep-all (almost-terminal module, `#grind_lint` does not track extra deps) prelude -import Init.Grind.Lint -import Lean.Elab.Tactic.Grind.Lint +import Init import Std +import Lean.Elab.Tactic.Grind.Lint -- We allow these as grind lemmas even though they triggers >20 further instantiations. -- See tests/lean/run/grind_lint_*.lean for more details. diff --git a/src/Lean/Elab/Tactic/Grind/Main.lean b/src/Lean/Elab/Tactic/Grind/Main.lean index 56c4b5b3fc..82ef77bb06 100644 --- a/src/Lean/Elab/Tactic/Grind/Main.lean +++ b/src/Lean/Elab/Tactic/Grind/Main.lean @@ -7,21 +7,13 @@ module prelude public import Lean.Meta.Tactic.Grind.Main public import Lean.Meta.Tactic.TryThis -public import Lean.Elab.Command public import Lean.Elab.Tactic.Config public import Lean.LibrarySuggestions.Basic import Lean.Meta.Tactic.Grind.SimpUtil -import Lean.Meta.Tactic.Grind.Util -import Lean.Meta.Tactic.Grind.EMatchTheoremParam -import Lean.Elab.Tactic.Grind.Basic import Lean.Elab.Tactic.Grind.Param -import Lean.Meta.Tactic.Grind.Action -import Lean.Elab.Tactic.Grind.Trace import Lean.Meta.Tactic.Grind.Finish -import Lean.Meta.Tactic.Grind.Attr import Lean.Meta.Tactic.Grind.CollectParams -import Lean.Elab.MutualDef -meta import Lean.Meta.Tactic.Grind.Parser +import Lean.Meta.Tactic.Grind.Parser public section namespace Lean.Elab.Tactic open Meta diff --git a/src/Lean/Elab/Tactic/Grind/Param.lean b/src/Lean/Elab/Tactic/Grind/Param.lean index dc4bdebdc5..38087c6f15 100644 --- a/src/Lean/Elab/Tactic/Grind/Param.lean +++ b/src/Lean/Elab/Tactic/Grind/Param.lean @@ -6,11 +6,7 @@ Authors: Leonardo de Moura module prelude public import Lean.Elab.Tactic.Grind.Basic -public import Lean.Meta.Tactic.Grind.Main -import Lean.Meta.Tactic.Grind.Internalize import Lean.Meta.Tactic.Grind.ForallProp -import Lean.Meta.Tactic.Grind.Main -import Lean.Elab.Tactic.Grind.Basic import Lean.Elab.Tactic.Grind.Anchor import Lean.Elab.SyntheticMVars namespace Lean.Elab.Tactic diff --git a/src/Lean/Elab/Tactic/Grind/ShowState.lean b/src/Lean/Elab/Tactic/Grind/ShowState.lean index 0a831066cb..98310d2b24 100644 --- a/src/Lean/Elab/Tactic/Grind/ShowState.lean +++ b/src/Lean/Elab/Tactic/Grind/ShowState.lean @@ -5,11 +5,9 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Elab.Tactic.Grind.Basic public import Lean.Elab.Tactic.Grind.Filter import Lean.Meta.Tactic.Grind.PP import Lean.Meta.Tactic.Grind.EMatchTheoremParam -import Lean.Meta.Tactic.Grind.Anchor import Lean.Meta.Tactic.Grind.Split namespace Lean.Elab.Tactic.Grind open Meta diff --git a/src/Lean/Elab/Tactic/Grind/Trace.lean b/src/Lean/Elab/Tactic/Grind/Trace.lean index c7925507b8..ee030a6181 100644 --- a/src/Lean/Elab/Tactic/Grind/Trace.lean +++ b/src/Lean/Elab/Tactic/Grind/Trace.lean @@ -8,10 +8,8 @@ prelude public import Lean.Elab.Tactic.Grind.Basic import Lean.Elab.Tactic.Grind.Config import Lean.Elab.Tactic.Grind.Param -import Init.Grind.Interactive import Lean.Meta.Tactic.TryThis import Lean.Meta.Tactic.Grind.Finish -import Lean.Meta.Tactic.Grind.Split import Lean.Meta.Tactic.Grind.CollectParams namespace Lean.Elab.Tactic.Grind open Meta diff --git a/src/Lean/Elab/Tactic/Induction.lean b/src/Lean/Elab/Tactic/Induction.lean index a82191b062..95b086a551 100644 --- a/src/Lean/Elab/Tactic/Induction.lean +++ b/src/Lean/Elab/Tactic/Induction.lean @@ -10,8 +10,10 @@ import Lean.Parser.Tactic public import Lean.Meta.Tactic.ElimInfo public import Lean.Elab.Tactic.ElabTerm import Lean.Meta.Tactic.FunIndCollect -import Lean.Elab.App -import Lean.Elab.Tactic.Generalize +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas +import Lean.Elab.Binders +import Lean.Meta.Tactic.Generalize public section diff --git a/src/Lean/Elab/Tactic/LibrarySearch.lean b/src/Lean/Elab/Tactic/LibrarySearch.lean index 9ded2cb09f..15ae885372 100644 --- a/src/Lean/Elab/Tactic/LibrarySearch.lean +++ b/src/Lean/Elab/Tactic/LibrarySearch.lean @@ -9,7 +9,6 @@ prelude public import Lean.Meta.Tactic.LibrarySearch public import Lean.Meta.Tactic.TryThis public import Lean.Elab.Tactic.ElabTerm -public import Lean.Elab.Tactic.Config public section diff --git a/src/Lean/Elab/Tactic/Omega/Frontend.lean b/src/Lean/Elab/Tactic/Omega/Frontend.lean index 77641e15e3..07af9bb69b 100644 --- a/src/Lean/Elab/Tactic/Omega/Frontend.lean +++ b/src/Lean/Elab/Tactic/Omega/Frontend.lean @@ -11,6 +11,9 @@ public import Lean.Elab.Tactic.FalseOrByContra public import Lean.Elab.Tactic.Config public import Lean.Meta.Tactic.Simp.Attr import Lean.Elab.Tactic.BuiltinTactic +import Init.Data.Int.Pow +import Init.Data.List.MapIdx +import Init.Data.Nat.Dvd public section diff --git a/src/Lean/Elab/Tactic/Omega/MinNatAbs.lean b/src/Lean/Elab/Tactic/Omega/MinNatAbs.lean index e59a682f53..b72ea8d088 100644 --- a/src/Lean/Elab/Tactic/Omega/MinNatAbs.lean +++ b/src/Lean/Elab/Tactic/Omega/MinNatAbs.lean @@ -9,6 +9,10 @@ prelude public import Init.Data.Int.Order public import Init.Data.List.MinMax public import Init.Data.Nat.Order +import Init.ByCases +import Init.Data.Bool +import Init.Data.Option.Lemmas +import Init.TacticsExtra public section diff --git a/src/Lean/Elab/Tactic/Omega/OmegaM.lean b/src/Lean/Elab/Tactic/Omega/OmegaM.lean index 802fce1f15..74af59dfb5 100644 --- a/src/Lean/Elab/Tactic/Omega/OmegaM.lean +++ b/src/Lean/Elab/Tactic/Omega/OmegaM.lean @@ -8,6 +8,7 @@ module prelude public import Lean.Meta.AppBuilder public import Lean.Meta.Canonicalizer +public import Init.Omega public section diff --git a/src/Lean/Elab/Tactic/RCases.lean b/src/Lean/Elab/Tactic/RCases.lean index 9489751129..bfad9f98be 100644 --- a/src/Lean/Elab/Tactic/RCases.lean +++ b/src/Lean/Elab/Tactic/RCases.lean @@ -8,8 +8,10 @@ module prelude public import Lean.Elab.Tactic.ElabTerm import Lean.Elab.Tactic.Induction -import Lean.Elab.Tactic.Generalize import Lean.Meta.Tactic.Replace +import Init.Omega +import Lean.Elab.Binders +import Lean.Meta.Tactic.Generalize namespace Lean.Elab.Tactic.RCases open Meta Parser Tactic diff --git a/src/Lean/Elab/Tactic/Split.lean b/src/Lean/Elab/Tactic/Split.lean index 9db0bfa4f8..a90684a272 100644 --- a/src/Lean/Elab/Tactic/Split.lean +++ b/src/Lean/Elab/Tactic/Split.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude -public import Lean.Meta.Hint public import Lean.Meta.Tactic.Split public import Lean.Elab.Tactic.Location diff --git a/src/Lean/Elab/Tactic/Try.lean b/src/Lean/Elab/Tactic/Try.lean index 7c837c433a..9def9b0367 100644 --- a/src/Lean/Elab/Tactic/Try.lean +++ b/src/Lean/Elab/Tactic/Try.lean @@ -11,7 +11,8 @@ public import Lean.Elab.Tactic.SimpTrace public import Lean.Elab.Tactic.LibrarySearch public import Lean.Elab.Tactic.Grind.Main public import Lean.Elab.Parallel -meta import Lean.Elab.Command +public meta import Lean.Elab.Command +import Init.Omega public section namespace Lean.Elab.Tactic open Meta diff --git a/src/Lean/Elab/Term/TermElabM.lean b/src/Lean/Elab/Term/TermElabM.lean index 2bdd3a0423..ae17dc2864 100644 --- a/src/Lean/Elab/Term/TermElabM.lean +++ b/src/Lean/Elab/Term/TermElabM.lean @@ -10,7 +10,6 @@ public import Lean.Meta.Coe public import Lean.Util.CollectLevelMVars public import Lean.Linter.Deprecated public import Lean.Elab.Attributes -public import Lean.Elab.Config public import Lean.Elab.Level public import Lean.Elab.PreDefinition.TerminationHint public import Lean.Elab.DeclarationRange diff --git a/src/Lean/Environment.lean b/src/Lean/Environment.lean index 8c186084fe..bab5c9bb08 100644 --- a/src/Lean/Environment.lean +++ b/src/Lean/Environment.lean @@ -22,6 +22,8 @@ public import Lean.LoadDynlib public import Init.Dynamic import Init.Data.Slice import Init.Data.String.TakeDrop +import Init.Data.Range.Polymorphic.Iterators +import Init.While public section diff --git a/src/Lean/ErrorExplanation.lean b/src/Lean/ErrorExplanation.lean index fec79db5f4..822675a719 100644 --- a/src/Lean/ErrorExplanation.lean +++ b/src/Lean/ErrorExplanation.lean @@ -10,9 +10,6 @@ prelude public import Lean.Message public import Lean.EnvExtension public import Lean.DocString.Links -import Init.Data.String.TakeDrop -import Init.Data.String.Extra -import Init.Data.String.Search public section diff --git a/src/Lean/Expr.lean b/src/Lean/Expr.lean index a89c727952..9c69095323 100644 --- a/src/Lean/Expr.lean +++ b/src/Lean/Expr.lean @@ -8,6 +8,7 @@ module prelude public import Init.Data.Hashable public import Lean.Level +import Init.Omega public section diff --git a/src/Lean/IdentifierSuggestion.lean b/src/Lean/IdentifierSuggestion.lean index 30b6901905..0737a9bd4a 100644 --- a/src/Lean/IdentifierSuggestion.lean +++ b/src/Lean/IdentifierSuggestion.lean @@ -6,12 +6,9 @@ Authors: Rob Simmons module prelude -public import Lean.Attributes -public import Lean.Exception -public import Lean.Meta.Hint public import Lean.Elab.DeclModifiers -public import Lean.ResolveName import all Lean.Elab.ErrorUtils +import Init.Omega namespace Lean open Elab.Term diff --git a/src/Lean/InternalExceptionId.lean b/src/Lean/InternalExceptionId.lean index c0e9de6e0f..6b17afbf70 100644 --- a/src/Lean/InternalExceptionId.lean +++ b/src/Lean/InternalExceptionId.lean @@ -8,6 +8,7 @@ module prelude public import Init.System.IO import Init.Data.ToString.Name +import Init.Data.ToString.Macro public section namespace Lean diff --git a/src/Lean/LabelAttribute.lean b/src/Lean/LabelAttribute.lean index 0a6dc0287b..ea0dfcb056 100644 --- a/src/Lean/LabelAttribute.lean +++ b/src/Lean/LabelAttribute.lean @@ -8,7 +8,7 @@ module prelude public import Lean.DocString public meta import Init.Data.String.Extra -meta import Init.Data.ToString.Name +public meta import Init.Data.ToString.Name public section diff --git a/src/Lean/Language/Util.lean b/src/Lean/Language/Util.lean index b96e474f84..fbf14bd7da 100644 --- a/src/Lean/Language/Util.lean +++ b/src/Lean/Language/Util.lean @@ -11,6 +11,7 @@ module prelude public import Lean.Elab.InfoTree +import Init.Data.Format.Macro public section diff --git a/src/Lean/Level.lean b/src/Lean/Level.lean index 0ffb00e1bd..3830336a9e 100644 --- a/src/Lean/Level.lean +++ b/src/Lean/Level.lean @@ -10,6 +10,7 @@ public import Init.Data.Array.QSort public import Lean.Data.PersistentHashSet public import Lean.Hygiene public import Init.Data.Option.Coe +import Init.Data.Nat.Linear public section diff --git a/src/Lean/LibrarySuggestions/Basic.lean b/src/Lean/LibrarySuggestions/Basic.lean index 74bef70263..33ad8df136 100644 --- a/src/Lean/LibrarySuggestions/Basic.lean +++ b/src/Lean/LibrarySuggestions/Basic.lean @@ -6,12 +6,11 @@ Authors: Kim Morrison module prelude -public import Lean.Elab.Command public import Lean.Meta.Eval public import Lean.Meta.CompletionName -public import Lean.Linter.Deprecated public import Init.Data.Random public import Lean.Elab.Tactic.Grind.Annotated +import Init.Omega /-! # An API for library suggestion algorithms. diff --git a/src/Lean/LibrarySuggestions/Default.lean b/src/Lean/LibrarySuggestions/Default.lean index 0112ce8112..3d206453fd 100644 --- a/src/Lean/LibrarySuggestions/Default.lean +++ b/src/Lean/LibrarySuggestions/Default.lean @@ -6,7 +6,6 @@ Authors: Kim Morrison module prelude -public import Lean.LibrarySuggestions.Basic public import Lean.LibrarySuggestions.SineQuaNon import all Lean.LibrarySuggestions.SineQuaNon diff --git a/src/Lean/LibrarySuggestions/MePo.lean b/src/Lean/LibrarySuggestions/MePo.lean index d4ad7859ec..b095a091aa 100644 --- a/src/Lean/LibrarySuggestions/MePo.lean +++ b/src/Lean/LibrarySuggestions/MePo.lean @@ -8,7 +8,6 @@ module prelude public import Lean.LibrarySuggestions.Basic import Lean.LibrarySuggestions.SymbolFrequency -import Lean.Meta.Basic /-! # MePo premise selection diff --git a/src/Lean/LibrarySuggestions/SineQuaNon.lean b/src/Lean/LibrarySuggestions/SineQuaNon.lean index 8b3aa9ae70..0afea64683 100644 --- a/src/Lean/LibrarySuggestions/SineQuaNon.lean +++ b/src/Lean/LibrarySuggestions/SineQuaNon.lean @@ -6,9 +6,6 @@ Authors: Kim Morrison module prelude -public import Lean.CoreM -public import Lean.Meta.Basic -import Lean.Meta.Instances import all Lean.LibrarySuggestions.SymbolFrequency public import Lean.LibrarySuggestions.Basic diff --git a/src/Lean/LibrarySuggestions/SymbolFrequency.lean b/src/Lean/LibrarySuggestions/SymbolFrequency.lean index 2e5fa236f2..dfedfa09f9 100644 --- a/src/Lean/LibrarySuggestions/SymbolFrequency.lean +++ b/src/Lean/LibrarySuggestions/SymbolFrequency.lean @@ -6,11 +6,7 @@ Authors: Kim Morrison module prelude -public import Lean.CoreM public import Lean.Meta.Basic -import Lean.Meta.InferType -import Lean.Meta.FunInfo -import Lean.AddDecl import Lean.LibrarySuggestions.Basic /-! diff --git a/src/Lean/Linter/Basic.lean b/src/Lean/Linter/Basic.lean index c45a70d5c0..052c9fc1b3 100644 --- a/src/Lean/Linter/Basic.lean +++ b/src/Lean/Linter/Basic.lean @@ -7,6 +7,7 @@ module prelude public import Lean.MonadEnv +import Init.Data.Function public section diff --git a/src/Lean/Linter/Coe.lean b/src/Lean/Linter/Coe.lean index 7175d25061..3ed70d61ff 100644 --- a/src/Lean/Linter/Coe.lean +++ b/src/Lean/Linter/Coe.lean @@ -9,7 +9,6 @@ prelude public import Lean.Elab.Command public import Lean.Server.InfoUtils import Lean.Linter.Basic -import Lean.Linter.Deprecated import all Lean.Elab.Term.TermElabM public section diff --git a/src/Lean/Linter/Deprecated.lean b/src/Lean/Linter/Deprecated.lean index d5113648d1..b10ae06037 100644 --- a/src/Lean/Linter/Deprecated.lean +++ b/src/Lean/Linter/Deprecated.lean @@ -10,6 +10,7 @@ public import Lean.Meta.Basic import Lean.Linter.Basic import Lean.Elab.InfoTree.Main import Lean.ExtraModUses +import Init.Omega public section diff --git a/src/Lean/Linter/Sets.lean b/src/Lean/Linter/Sets.lean index 37f543ff01..5ff3fb97d4 100644 --- a/src/Lean/Linter/Sets.lean +++ b/src/Lean/Linter/Sets.lean @@ -8,6 +8,8 @@ module prelude public meta import Lean.Linter.Basic public meta import Lean.Elab.Command +public import Init.Notation +import Lean.Data.KVMap public section diff --git a/src/Lean/LoadDynlib.lean b/src/Lean/LoadDynlib.lean index ee648f1fe7..25ee84a1b6 100644 --- a/src/Lean/LoadDynlib.lean +++ b/src/Lean/LoadDynlib.lean @@ -8,6 +8,7 @@ module prelude public import Init.System.IO import Init.Data.String.TakeDrop +import Init.Data.ToString.Macro public section diff --git a/src/Lean/LocalContext.lean b/src/Lean/LocalContext.lean index 206380f657..086abf8208 100644 --- a/src/Lean/LocalContext.lean +++ b/src/Lean/LocalContext.lean @@ -9,6 +9,8 @@ prelude public import Init.Data.Nat.Control public import Lean.Data.PersistentArray public import Lean.Expr +import Init.Data.ToString.Macro +import Init.Omega public section diff --git a/src/Lean/Message.lean b/src/Lean/Message.lean index ef5fed52e9..3991d20d9f 100644 --- a/src/Lean/Message.lean +++ b/src/Lean/Message.lean @@ -12,6 +12,8 @@ public import Init.Data.Slice.Array public import Lean.Util.PPExt public import Lean.Util.Sorry import Init.Data.String.Search +import Init.Data.Format.Macro +import Init.Data.Iterators.Consumers.Collect public section diff --git a/src/Lean/Meta/ACLt.lean b/src/Lean/Meta/ACLt.lean index ebb739560d..050ba57234 100644 --- a/src/Lean/Meta/ACLt.lean +++ b/src/Lean/Meta/ACLt.lean @@ -6,7 +6,8 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.DiscrTree.Main -import Lean.Meta.WHNF +import Init.Data.Range.Polymorphic.Iterators +import Lean.Meta.FunInfo public section namespace Lean diff --git a/src/Lean/Meta/AppBuilder.lean b/src/Lean/Meta/AppBuilder.lean index d8fbe88cae..6275b61200 100644 --- a/src/Lean/Meta/AppBuilder.lean +++ b/src/Lean/Meta/AppBuilder.lean @@ -7,10 +7,9 @@ module prelude public import Lean.Meta.SynthInstance public import Lean.Meta.DecLevel -import Lean.Meta.SameCtorUtils -import Lean.Data.Array import Lean.Meta.CtorRecognizer import Lean.Structure +import Init.Omega public section namespace Lean.Meta diff --git a/src/Lean/Meta/ArgsPacker.lean b/src/Lean/Meta/ArgsPacker.lean index ae42c8dbf4..93dcd06424 100644 --- a/src/Lean/Meta/ArgsPacker.lean +++ b/src/Lean/Meta/ArgsPacker.lean @@ -10,6 +10,8 @@ prelude public import Lean.Meta.AppBuilder public import Lean.Meta.PProdN public import Lean.Meta.ArgsPacker.Basic +import Init.Omega +import Init.While public section diff --git a/src/Lean/Meta/Basic.lean b/src/Lean/Meta/Basic.lean index 59a0b558ea..f0c743deb8 100644 --- a/src/Lean/Meta/Basic.lean +++ b/src/Lean/Meta/Basic.lean @@ -12,6 +12,7 @@ public import Lean.ReducibilityAttrs public import Lean.Util.MonadBacktrack public import Lean.Compiler.InlineAttrs public import Lean.Meta.TransparencyMode +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/Meta/Canonicalizer.lean b/src/Lean/Meta/Canonicalizer.lean index 693d276e94..5869b011af 100644 --- a/src/Lean/Meta/Canonicalizer.lean +++ b/src/Lean/Meta/Canonicalizer.lean @@ -9,6 +9,7 @@ prelude public import Lean.Util.ShareCommon public import Lean.Meta.FunInfo public import Std.Data.HashMap.Raw +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/Meta/CasesInfo.lean b/src/Lean/Meta/CasesInfo.lean index 98bb9d8c49..6d85a3c56d 100644 --- a/src/Lean/Meta/CasesInfo.lean +++ b/src/Lean/Meta/CasesInfo.lean @@ -7,7 +7,7 @@ Authors: Leonardo de Moura, Joachim Breitner module prelude public import Lean.Meta.Basic -import Lean.AuxRecursor +import Init.Data.Range.Polymorphic.Iterators open Lean Meta diff --git a/src/Lean/Meta/Check.lean b/src/Lean/Meta/Check.lean index 889b70df24..2b77b12321 100644 --- a/src/Lean/Meta/Check.lean +++ b/src/Lean/Meta/Check.lean @@ -7,7 +7,8 @@ module prelude public import Lean.Meta.Sorry -import Lean.AddDecl +import Init.Data.Range.Polymorphic.Iterators +import Lean.OriginalConstKind public section diff --git a/src/Lean/Meta/Coe.lean b/src/Lean/Meta/Coe.lean index e9bd57cf21..2590b7f749 100644 --- a/src/Lean/Meta/Coe.lean +++ b/src/Lean/Meta/Coe.lean @@ -7,8 +7,6 @@ module prelude public import Lean.Meta.AppBuilder import Lean.ExtraModUses -import Lean.ProjFns -import Lean.Meta.Transform import Lean.Meta.WHNF public section namespace Lean.Meta diff --git a/src/Lean/Meta/Constructions/BRecOn.lean b/src/Lean/Meta/Constructions/BRecOn.lean index 16d05753db..f448a63bc1 100644 --- a/src/Lean/Meta/Constructions/BRecOn.lean +++ b/src/Lean/Meta/Constructions/BRecOn.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Meta.Basic -import Lean.Meta.CompletionName import Lean.Meta.PProdN import Lean.Meta.Tactic.Cases import Lean.Meta.Tactic.Refl diff --git a/src/Lean/Meta/Constructions/CtorElim.lean b/src/Lean/Meta/Constructions/CtorElim.lean index bac22d2c64..7ef2d9523d 100644 --- a/src/Lean/Meta/Constructions/CtorElim.lean +++ b/src/Lean/Meta/Constructions/CtorElim.lean @@ -12,7 +12,6 @@ import Lean.Meta.CompletionName import Lean.Meta.Constructions.CtorIdx import Lean.Meta.NatTable import Lean.Elab.App -import Lean.Meta.Tactic.Simp.Attr namespace Lean diff --git a/src/Lean/Meta/Constructions/CtorIdx.lean b/src/Lean/Meta/Constructions/CtorIdx.lean index 66fc700afe..05b3226f6a 100644 --- a/src/Lean/Meta/Constructions/CtorIdx.lean +++ b/src/Lean/Meta/Constructions/CtorIdx.lean @@ -9,7 +9,6 @@ module prelude public import Lean.Meta.Basic import Lean.AddDecl -import Lean.Meta.AppBuilder import Lean.Meta.CompletionName import Lean.Linter.Deprecated diff --git a/src/Lean/Meta/Constructions/NoConfusion.lean b/src/Lean/Meta/Constructions/NoConfusion.lean index 038a97e8a6..f5dd2b0ca7 100644 --- a/src/Lean/Meta/Constructions/NoConfusion.lean +++ b/src/Lean/Meta/Constructions/NoConfusion.lean @@ -8,7 +8,6 @@ module prelude public import Lean.Meta.Basic import Lean.AddDecl -import Lean.Meta.AppBuilder import Lean.Meta.CompletionName import Lean.Meta.Constructions.CtorIdx import Lean.Meta.Constructions.CtorElim diff --git a/src/Lean/Meta/Constructions/SparseCasesOn.lean b/src/Lean/Meta/Constructions/SparseCasesOn.lean index 946b8aa235..aad65fa20c 100644 --- a/src/Lean/Meta/Constructions/SparseCasesOn.lean +++ b/src/Lean/Meta/Constructions/SparseCasesOn.lean @@ -8,9 +8,8 @@ prelude public import Lean.Meta.Basic import Lean.AddDecl import Lean.Meta.Constructions.CtorIdx -import Lean.Meta.AppBuilder import Lean.Meta.HasNotBit -import Lean.Meta.WHNF +import Lean.Meta.Transform /-! See `mkSparseCasesOn` below. -/ namespace Lean.Meta diff --git a/src/Lean/Meta/Constructions/SparseCasesOnEq.lean b/src/Lean/Meta/Constructions/SparseCasesOnEq.lean index a24b38c4c5..3fd9700bea 100644 --- a/src/Lean/Meta/Constructions/SparseCasesOnEq.lean +++ b/src/Lean/Meta/Constructions/SparseCasesOnEq.lean @@ -8,11 +8,8 @@ module prelude public import Lean.Meta.Basic -import Lean.AddDecl import Lean.Meta.Constructions.SparseCasesOn -import Lean.Meta.AppBuilder import Lean.Meta.HasNotBit -import Lean.Meta.Tactic.Util import Lean.Meta.Tactic.Cases import Lean.Meta.Tactic.Refl diff --git a/src/Lean/Meta/CtorIdxHInj.lean b/src/Lean/Meta/CtorIdxHInj.lean index 69c24a65bb..632f083160 100644 --- a/src/Lean/Meta/CtorIdxHInj.lean +++ b/src/Lean/Meta/CtorIdxHInj.lean @@ -7,11 +7,8 @@ module prelude public import Lean.Meta.Basic import Lean.Meta.Tactic.Refl -import Lean.Meta.Tactic.Cases -import Lean.Meta.Tactic.Assumption -import Lean.Meta.Tactic.Simp.Main -import Lean.Meta.SameCtorUtils import Lean.Meta.Constructions.CtorIdx +import Lean.Meta.Tactic.Subst namespace Lean.Meta def hinjSuffix := "hinj" diff --git a/src/Lean/Meta/DiscrTree/Basic.lean b/src/Lean/Meta/DiscrTree/Basic.lean index ededa1a081..b75ad98925 100644 --- a/src/Lean/Meta/DiscrTree/Basic.lean +++ b/src/Lean/Meta/DiscrTree/Basic.lean @@ -6,8 +6,9 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.DiscrTree.Types -public import Lean.ToExpr public import Lean.CoreM +import Init.Data.Range.Polymorphic.Iterators +import Init.Omega public section namespace Lean.Meta.DiscrTree diff --git a/src/Lean/Meta/ForEachExpr.lean b/src/Lean/Meta/ForEachExpr.lean index 6608ab2f96..ce0c213fd5 100644 --- a/src/Lean/Meta/ForEachExpr.lean +++ b/src/Lean/Meta/ForEachExpr.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Basic +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/Meta/FunInfo.lean b/src/Lean/Meta/FunInfo.lean index 4388c0b1d6..44ee46ca17 100644 --- a/src/Lean/Meta/FunInfo.lean +++ b/src/Lean/Meta/FunInfo.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.InferType +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/Meta/GetUnfoldableConst.lean b/src/Lean/Meta/GetUnfoldableConst.lean index 4e1e409a79..f46c77ce49 100644 --- a/src/Lean/Meta/GetUnfoldableConst.lean +++ b/src/Lean/Meta/GetUnfoldableConst.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Basic -import Lean.ReducibilityAttrs public section namespace Lean.Meta diff --git a/src/Lean/Meta/HasNotBit.lean b/src/Lean/Meta/HasNotBit.lean index 22998a190d..d724b90cfa 100644 --- a/src/Lean/Meta/HasNotBit.lean +++ b/src/Lean/Meta/HasNotBit.lean @@ -7,7 +7,6 @@ Authors: Joachim Breitner module prelude public import Lean.Meta.Basic -import Lean.Util.Recognizers import Lean.Meta.MatchUtil /-! diff --git a/src/Lean/Meta/HaveTelescope.lean b/src/Lean/Meta/HaveTelescope.lean index 14951cc6b8..4e020348ec 100644 --- a/src/Lean/Meta/HaveTelescope.lean +++ b/src/Lean/Meta/HaveTelescope.lean @@ -9,8 +9,8 @@ public import Lean.Meta.Basic public import Lean.Meta.MonadSimp import Lean.Util.CollectFVars import Lean.Util.CollectLooseBVars -import Lean.Meta.InferType import Lean.Meta.AppBuilder +import Init.While public section namespace Lean.Meta /-! diff --git a/src/Lean/Meta/IndPredBelow.lean b/src/Lean/Meta/IndPredBelow.lean index dfa444e78e..9410f5d197 100644 --- a/src/Lean/Meta/IndPredBelow.lean +++ b/src/Lean/Meta/IndPredBelow.lean @@ -9,7 +9,8 @@ prelude public import Lean.Meta.Match.MatcherApp.Basic import Lean.Meta.Constructions.CasesOn import Lean.Meta.Match.Match -import Lean.Meta.Tactic.SolveByElim +import Init.Data.Nat.Linear +import Init.Omega /-! # The `below` and `brecOn` constructions for inductive predicates diff --git a/src/Lean/Meta/InferType.lean b/src/Lean/Meta/InferType.lean index 541ecfba88..42e135d152 100644 --- a/src/Lean/Meta/InferType.lean +++ b/src/Lean/Meta/InferType.lean @@ -8,6 +8,7 @@ module prelude public import Lean.Data.LBool public import Lean.Meta.Basic +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/Meta/Injective.lean b/src/Lean/Meta/Injective.lean index a4ac8a183f..0b9fa8b698 100644 --- a/src/Lean/Meta/Injective.lean +++ b/src/Lean/Meta/Injective.lean @@ -7,10 +7,11 @@ module prelude public import Lean.Meta.Basic import Lean.Meta.Tactic.Refl -import Lean.Meta.Tactic.Cases import Lean.Meta.Tactic.Assumption -import Lean.Meta.Tactic.Simp.Main import Lean.Meta.SameCtorUtils +import Init.Omega +import Lean.Meta.Tactic.Injection +import Lean.Meta.Tactic.Simp.Attr public section namespace Lean.Meta diff --git a/src/Lean/Meta/Instances.lean b/src/Lean/Meta/Instances.lean index 49d92b6e4a..aafcf3b601 100644 --- a/src/Lean/Meta/Instances.lean +++ b/src/Lean/Meta/Instances.lean @@ -8,9 +8,9 @@ prelude public import Init.Data.Range.Polymorphic.Stream public import Lean.Meta.DiscrTree.Main public import Lean.Meta.CollectMVars -import Lean.ReducibilityAttrs -import Lean.Meta.WHNF -import Lean.AddDecl +import Init.While +import Lean.OriginalConstKind +import Lean.ProjFns public section namespace Lean.Meta diff --git a/src/Lean/Meta/LazyDiscrTree.lean b/src/Lean/Meta/LazyDiscrTree.lean index c5c6c1cc6b..d6c07f84fe 100644 --- a/src/Lean/Meta/LazyDiscrTree.lean +++ b/src/Lean/Meta/LazyDiscrTree.lean @@ -8,6 +8,7 @@ module prelude public import Lean.Meta.CompletionName public import Lean.Meta.DiscrTree +import Init.Omega public section diff --git a/src/Lean/Meta/LetToHave.lean b/src/Lean/Meta/LetToHave.lean index a25b3d4d21..f80fabf8c0 100644 --- a/src/Lean/Meta/LetToHave.lean +++ b/src/Lean/Meta/LetToHave.lean @@ -12,6 +12,8 @@ public import Lean.AddDecl public import Lean.Meta.Transform public import Lean.Util.CollectFVars public import Lean.Util.CollectMVars +import Init.Data.Range.Polymorphic.Iterators +import Init.While public section diff --git a/src/Lean/Meta/LitValues.lean b/src/Lean/Meta/LitValues.lean index 33f2167d58..e136e00c3a 100644 --- a/src/Lean/Meta/LitValues.lean +++ b/src/Lean/Meta/LitValues.lean @@ -6,7 +6,7 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Basic -public import Init.Data.Rat.Basic +import Init.While public section namespace Lean.Meta /-! diff --git a/src/Lean/Meta/Match/AltTelescopes.lean b/src/Lean/Meta/Match/AltTelescopes.lean index 1cca69300e..c2efcedba7 100644 --- a/src/Lean/Meta/Match/AltTelescopes.lean +++ b/src/Lean/Meta/Match/AltTelescopes.lean @@ -6,11 +6,12 @@ Authors: Leonardo de Moura module prelude -public import Lean.Meta.Basic public import Lean.Meta.Match.MatcherInfo import Lean.Meta.Match.NamedPatterns import Lean.Meta.MatchUtil import Lean.Meta.AppBuilder +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas public section diff --git a/src/Lean/Meta/Match/Basic.lean b/src/Lean/Meta/Match/Basic.lean index f4306fa1c6..798bcd287d 100644 --- a/src/Lean/Meta/Match/Basic.lean +++ b/src/Lean/Meta/Match/Basic.lean @@ -6,14 +6,10 @@ Authors: Leonardo de Moura module prelude -public import Lean.Meta.Basic public import Lean.Meta.Tactic.FVarSubst public import Lean.Meta.CollectFVars import Lean.Meta.Match.Value import Lean.Meta.AppBuilder -import Lean.Meta.Tactic.Util -import Lean.Meta.Tactic.Assert -import Lean.Meta.Tactic.Subst import Lean.Meta.Match.NamedPatterns public section diff --git a/src/Lean/Meta/Match/CaseArraySizes.lean b/src/Lean/Meta/Match/CaseArraySizes.lean index df72a6b95e..e189e1e7da 100644 --- a/src/Lean/Meta/Match/CaseArraySizes.lean +++ b/src/Lean/Meta/Match/CaseArraySizes.lean @@ -9,9 +9,6 @@ prelude public import Lean.Meta.Basic public import Lean.Meta.Tactic.FVarSubst import Lean.Meta.Match.CaseValues -import Lean.Meta.AppBuilder -import Lean.Meta.Tactic.Util -import Lean.Meta.Tactic.Assert import Lean.Meta.Tactic.Subst namespace Lean.Meta diff --git a/src/Lean/Meta/Match/MatchEqsExt.lean b/src/Lean/Meta/Match/MatchEqsExt.lean index a0600f789e..4e65b38c3a 100644 --- a/src/Lean/Meta/Match/MatchEqsExt.lean +++ b/src/Lean/Meta/Match/MatchEqsExt.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude -public import Lean.Meta.Basic public import Lean.Meta.Match.Basic public import Lean.Meta.Match.MatcherInfo import Lean.Meta.Eqns diff --git a/src/Lean/Meta/Match/NamedPatterns.lean b/src/Lean/Meta/Match/NamedPatterns.lean index c3b2a70efa..fe662bb75b 100644 --- a/src/Lean/Meta/Match/NamedPatterns.lean +++ b/src/Lean/Meta/Match/NamedPatterns.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Meta.Basic import Lean.Meta.AppBuilder -import Lean.Meta.Transform import Lean.Meta.WHNF /-! Helper functions around named patterns diff --git a/src/Lean/Meta/Match/Rewrite.lean b/src/Lean/Meta/Match/Rewrite.lean index 84bda13edf..dc9200c6c2 100644 --- a/src/Lean/Meta/Match/Rewrite.lean +++ b/src/Lean/Meta/Match/Rewrite.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Meta.Tactic.Simp.Types -import Lean.Meta.Match.MatcherApp.Transform import Lean.Meta.Tactic.Assumption import Lean.Meta.Tactic.Refl import Lean.Meta.Tactic.Simp.Rewrite diff --git a/src/Lean/Meta/MkIffOfInductiveProp.lean b/src/Lean/Meta/MkIffOfInductiveProp.lean index 12df202de7..068d112745 100644 --- a/src/Lean/Meta/MkIffOfInductiveProp.lean +++ b/src/Lean/Meta/MkIffOfInductiveProp.lean @@ -13,10 +13,8 @@ module prelude public import Lean.Meta.Basic -import Lean.Elab.Term.TermElabM import Lean.Elab.Tactic.Basic import Lean.Meta.Tactic.Apply -import Lean.Meta.Tactic.Intro import Lean.Meta.Tactic.Cases diff --git a/src/Lean/Meta/NatTable.lean b/src/Lean/Meta/NatTable.lean index 70cb7cc9ca..8be0350f08 100644 --- a/src/Lean/Meta/NatTable.lean +++ b/src/Lean/Meta/NatTable.lean @@ -8,6 +8,7 @@ module prelude public import Lean.Meta.Basic import Lean.Meta.InferType +import Init.Omega open Lean Meta diff --git a/src/Lean/Meta/Native.lean b/src/Lean/Meta/Native.lean index a380a1e74d..3018df6a5e 100644 --- a/src/Lean/Meta/Native.lean +++ b/src/Lean/Meta/Native.lean @@ -8,8 +8,6 @@ module prelude public import Lean.Meta.Basic import Lean.Util.CollectLevelParams -import Lean.AddDecl -import Lean.Meta.AppBuilder import Lean.Elab.DeclarationRange open Lean Meta diff --git a/src/Lean/Meta/PProdN.lean b/src/Lean/Meta/PProdN.lean index fb85f25fc8..6fabbe5602 100644 --- a/src/Lean/Meta/PProdN.lean +++ b/src/Lean/Meta/PProdN.lean @@ -7,8 +7,9 @@ Authors: Joachim Breitner module prelude -public import Lean.Meta.InferType public import Lean.Meta.Transform +import Init.Data.Range.Polymorphic.Iterators +import Init.Omega public section diff --git a/src/Lean/Meta/ProdN.lean b/src/Lean/Meta/ProdN.lean index fc914c9792..288141ed42 100644 --- a/src/Lean/Meta/ProdN.lean +++ b/src/Lean/Meta/ProdN.lean @@ -9,6 +9,7 @@ module prelude public import Lean.Meta.InferType import Lean.Meta.DecLevel +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/Meta/RecursorInfo.lean b/src/Lean/Meta/RecursorInfo.lean index 3494e4966c..de349fb7bb 100644 --- a/src/Lean/Meta/RecursorInfo.lean +++ b/src/Lean/Meta/RecursorInfo.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Basic +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/Meta/Reduce.lean b/src/Lean/Meta/Reduce.lean index 8d4728a799..5eb76e657b 100644 --- a/src/Lean/Meta/Reduce.lean +++ b/src/Lean/Meta/Reduce.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.FunInfo +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/Meta/SplitSparseCasesOn.lean b/src/Lean/Meta/SplitSparseCasesOn.lean index 7307223a61..2da0fb5deb 100644 --- a/src/Lean/Meta/SplitSparseCasesOn.lean +++ b/src/Lean/Meta/SplitSparseCasesOn.lean @@ -7,12 +7,12 @@ Authors: Joachim Breitner module prelude public import Lean.Meta.Basic -import Lean.Meta.Tactic.Delta import Lean.Meta.Tactic.Rewrite import Lean.Meta.Constructions.SparseCasesOn import Lean.Meta.Constructions.SparseCasesOnEq import Lean.Meta.HasNotBit import Lean.Meta.Tactic.Cases +import Lean.Meta.Tactic.Replace namespace Lean.Meta diff --git a/src/Lean/Meta/Sym/AbstractS.lean b/src/Lean/Meta/Sym/AbstractS.lean index e86e6994fc..c4da5c763f 100644 --- a/src/Lean/Meta/Sym/AbstractS.lean +++ b/src/Lean/Meta/Sym/AbstractS.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Sym.SymM import Lean.Meta.Sym.ReplaceS +import Init.Omega namespace Lean.Meta.Sym open Internal diff --git a/src/Lean/Meta/Sym/Apply.lean b/src/Lean/Meta/Sym/Apply.lean index f284700519..70b7a06094 100644 --- a/src/Lean/Meta/Sym/Apply.lean +++ b/src/Lean/Meta/Sym/Apply.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Sym.Pattern import Lean.Util.CollectFVars +import Init.Data.Range.Polymorphic.Iterators namespace Lean.Meta.Sym /-- diff --git a/src/Lean/Meta/Sym/InstantiateS.lean b/src/Lean/Meta/Sym/InstantiateS.lean index 7890b0bb7a..ec29a90ae3 100644 --- a/src/Lean/Meta/Sym/InstantiateS.lean +++ b/src/Lean/Meta/Sym/InstantiateS.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Sym.SymM -import Lean.Meta.Sym.ReplaceS import Lean.Meta.Sym.LooseBVarsS import Init.Grind namespace Lean.Meta.Sym diff --git a/src/Lean/Meta/Sym/LooseBVarsS.lean b/src/Lean/Meta/Sym/LooseBVarsS.lean index d700e8eccf..eb34f4435b 100644 --- a/src/Lean/Meta/Sym/LooseBVarsS.lean +++ b/src/Lean/Meta/Sym/LooseBVarsS.lean @@ -5,7 +5,6 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Sym.SymM public import Lean.Meta.Sym.ReplaceS public section namespace Lean.Meta.Sym diff --git a/src/Lean/Meta/Sym/Pattern.lean b/src/Lean/Meta/Sym/Pattern.lean index 741ed18caa..bbca787f4f 100644 --- a/src/Lean/Meta/Sym/Pattern.lean +++ b/src/Lean/Meta/Sym/Pattern.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Meta.Sym.SymM public import Lean.Data.AssocList -import Lean.Util.FoldConsts import Lean.Meta.SynthInstance import Lean.Meta.Sym.InstantiateS import Lean.Meta.Sym.AbstractS @@ -16,9 +15,10 @@ import Lean.Meta.Sym.IsClass import Lean.Meta.Sym.MaxFVar import Lean.Meta.Sym.ProofInstInfo import Lean.Meta.Sym.AlphaShareBuilder -import Lean.Meta.Sym.LitValues import Lean.Meta.Sym.Offset import Lean.Meta.Sym.Eta +import Init.Data.List.MapIdx +import Init.Data.Nat.Linear namespace Lean.Meta.Sym open Internal diff --git a/src/Lean/Meta/Sym/ProofInstInfo.lean b/src/Lean/Meta/Sym/ProofInstInfo.lean index d203d5b410..3b900282dd 100644 --- a/src/Lean/Meta/Sym/ProofInstInfo.lean +++ b/src/Lean/Meta/Sym/ProofInstInfo.lean @@ -8,7 +8,6 @@ prelude public import Lean.Meta.Sym.SymM import Lean.Meta.Sym.IsClass import Lean.Meta.Sym.Util -import Lean.Meta.Transform import Lean.Meta.Sym.Eta namespace Lean.Meta.Sym diff --git a/src/Lean/Meta/Sym/ReplaceS.lean b/src/Lean/Meta/Sym/ReplaceS.lean index 45d0b5bf8d..306b1e4b68 100644 --- a/src/Lean/Meta/Sym/ReplaceS.lean +++ b/src/Lean/Meta/Sym/ReplaceS.lean @@ -5,8 +5,8 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Sym.SymM public import Lean.Meta.Sym.AlphaShareBuilder +import Init.Omega namespace Lean.Meta.Sym open Internal /-! diff --git a/src/Lean/Meta/Sym/Simp/App.lean b/src/Lean/Meta/Sym/Simp/App.lean index 41d58b288d..e2be5580ed 100644 --- a/src/Lean/Meta/Sym/Simp/App.lean +++ b/src/Lean/Meta/Sym/Simp/App.lean @@ -6,12 +6,11 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Sym.Simp.SimpM -import Lean.Meta.SynthInstance import Lean.Meta.Tactic.Simp.Types import Lean.Meta.Sym.AlphaShareBuilder import Lean.Meta.Sym.InferType -import Lean.Meta.Sym.Simp.Result import Lean.Meta.Sym.Simp.CongrInfo +import Init.Omega namespace Lean.Meta.Sym.Simp open Internal diff --git a/src/Lean/Meta/Sym/Simp/CongrInfo.lean b/src/Lean/Meta/Sym/Simp/CongrInfo.lean index 9a238fee89..48a1a630d5 100644 --- a/src/Lean/Meta/Sym/Simp/CongrInfo.lean +++ b/src/Lean/Meta/Sym/Simp/CongrInfo.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Sym.SymM import Lean.Meta.FunInfo +import Init.Omega namespace Lean.Meta.Sym def isFixedPrefix? (argKinds : Array CongrArgKind) : Option Nat := diff --git a/src/Lean/Meta/Sym/Simp/ControlFlow.lean b/src/Lean/Meta/Sym/Simp/ControlFlow.lean index 5d16ccc5a9..73da7bd3d7 100644 --- a/src/Lean/Meta/Sym/Simp/ControlFlow.lean +++ b/src/Lean/Meta/Sym/Simp/ControlFlow.lean @@ -7,10 +7,8 @@ module prelude public import Lean.Meta.Sym.Simp.SimpM import Lean.Meta.Sym.AlphaShareBuilder -import Lean.Meta.Sym.InstantiateS import Lean.Meta.Sym.InferType import Lean.Meta.Sym.Simp.App -import Lean.Meta.SynthInstance import Lean.Meta.WHNF import Lean.Meta.AppBuilder import Init.Sym.Lemmas diff --git a/src/Lean/Meta/Sym/Simp/Debug.lean b/src/Lean/Meta/Sym/Simp/Debug.lean index 63102e498f..919ba81c93 100644 --- a/src/Lean/Meta/Sym/Simp/Debug.lean +++ b/src/Lean/Meta/Sym/Simp/Debug.lean @@ -5,14 +5,10 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Sym.Simp.SimpM public import Lean.Meta.Sym.Simp.Discharger -import Lean.Meta.Sym.Simp.Theorems import Lean.Meta.Sym.Simp.Rewrite import Lean.Meta.Sym.Simp.Goal import Lean.Meta.Sym.Util -import Lean.Meta.Tactic.Util -import Lean.Meta.AppBuilder namespace Lean.Meta.Sym open Simp /-! diff --git a/src/Lean/Meta/Sym/Simp/DiscrTree.lean b/src/Lean/Meta/Sym/Simp/DiscrTree.lean index 9351a2ba72..6832397b66 100644 --- a/src/Lean/Meta/Sym/Simp/DiscrTree.lean +++ b/src/Lean/Meta/Sym/Simp/DiscrTree.lean @@ -8,6 +8,7 @@ prelude public import Lean.Meta.Sym.Pattern public import Lean.Meta.DiscrTree.Basic import Lean.Meta.Sym.Offset +import Init.Omega namespace Lean.Meta.Sym open DiscrTree diff --git a/src/Lean/Meta/Sym/Simp/EvalGround.lean b/src/Lean/Meta/Sym/Simp/EvalGround.lean index dd5597291c..7971ffe07e 100644 --- a/src/Lean/Meta/Sym/Simp/EvalGround.lean +++ b/src/Lean/Meta/Sym/Simp/EvalGround.lean @@ -7,9 +7,7 @@ module prelude public import Lean.Meta.Sym.Simp.SimpM import Init.Sym.Lemmas -import Init.Data.Int.Gcd import Lean.Meta.Sym.LitValues -import Lean.Meta.Sym.AlphaShareBuilder namespace Lean.Meta.Sym.Simp /-! diff --git a/src/Lean/Meta/Sym/Simp/Forall.lean b/src/Lean/Meta/Sym/Simp/Forall.lean index 33accd7e08..ea0b8ca832 100644 --- a/src/Lean/Meta/Sym/Simp/Forall.lean +++ b/src/Lean/Meta/Sym/Simp/Forall.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Meta.Sym.Simp.SimpM import Lean.Meta.Sym.AlphaShareBuilder -import Lean.Meta.Sym.InferType import Lean.Meta.Sym.Simp.Result namespace Lean.Meta.Sym.Simp diff --git a/src/Lean/Meta/Sym/Simp/Goal.lean b/src/Lean/Meta/Sym/Simp/Goal.lean index 23234d432a..2255321de1 100644 --- a/src/Lean/Meta/Sym/Simp/Goal.lean +++ b/src/Lean/Meta/Sym/Simp/Goal.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Meta.Sym.Simp.SimpM import Lean.Meta.Tactic.Util -import Lean.Meta.AppBuilder import Lean.Meta.Sym.InferType namespace Lean.Meta.Sym /-! diff --git a/src/Lean/Meta/Sym/Simp/Have.lean b/src/Lean/Meta/Sym/Simp/Have.lean index 484014f520..d0d648023c 100644 --- a/src/Lean/Meta/Sym/Simp/Have.lean +++ b/src/Lean/Meta/Sym/Simp/Have.lean @@ -5,9 +5,7 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Sym.Simp.SimpM public import Lean.Meta.Sym.Simp.Lambda -import Lean.Meta.Sym.AlphaShareBuilder import Lean.Meta.Sym.InstantiateS import Lean.Meta.Sym.ReplaceS import Lean.Meta.Sym.AbstractS @@ -15,6 +13,8 @@ import Lean.Meta.Sym.InferType import Lean.Meta.AppBuilder import Lean.Meta.HaveTelescope import Lean.Util.CollectFVars +import Init.Omega +import Init.While namespace Lean.Meta.Sym.Simp /-! diff --git a/src/Lean/Meta/Sym/Simp/Lambda.lean b/src/Lean/Meta/Sym/Simp/Lambda.lean index 3ea0363bf4..5fc627e9f9 100644 --- a/src/Lean/Meta/Sym/Simp/Lambda.lean +++ b/src/Lean/Meta/Sym/Simp/Lambda.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Sym.Simp.SimpM -import Lean.Meta.Closure namespace Lean.Meta.Sym.Simp /-- diff --git a/src/Lean/Meta/Sym/Simp/Main.lean b/src/Lean/Meta/Sym/Simp/Main.lean index c2877a1225..4a4d85f3c5 100644 --- a/src/Lean/Meta/Sym/Simp/Main.lean +++ b/src/Lean/Meta/Sym/Simp/Main.lean @@ -7,11 +7,9 @@ module prelude public import Lean.Meta.Sym.Simp.SimpM import Lean.Meta.Sym.AlphaShareBuilder -import Lean.Meta.Sym.Simp.Result import Lean.Meta.Sym.Simp.Simproc import Lean.Meta.Sym.Simp.App import Lean.Meta.Sym.Simp.Have -import Lean.Meta.Sym.Simp.Lambda import Lean.Meta.Sym.Simp.Forall namespace Lean.Meta.Sym.Simp open Internal diff --git a/src/Lean/Meta/Sym/Simp/Rewrite.lean b/src/Lean/Meta/Sym/Simp/Rewrite.lean index d58387fbd6..af75c49e2c 100644 --- a/src/Lean/Meta/Sym/Simp/Rewrite.lean +++ b/src/Lean/Meta/Sym/Simp/Rewrite.lean @@ -5,14 +5,13 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Sym.Simp.SimpM public import Lean.Meta.Sym.Simp.Simproc public import Lean.Meta.Sym.Simp.Theorems public import Lean.Meta.Sym.Simp.App public import Lean.Meta.Sym.Simp.Discharger import Lean.Meta.Sym.InstantiateS import Lean.Meta.Sym.InstantiateMVarsS -import Lean.Meta.Sym.Simp.DiscrTree +import Init.Data.Range.Polymorphic.Iterators namespace Lean.Meta.Sym.Simp open Grind diff --git a/src/Lean/Meta/Sym/Simp/SimpM.lean b/src/Lean/Meta/Sym/Simp/SimpM.lean index d0a30bbfa6..e87e55ad3a 100644 --- a/src/Lean/Meta/Sym/Simp/SimpM.lean +++ b/src/Lean/Meta/Sym/Simp/SimpM.lean @@ -5,7 +5,6 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Sym.SymM public import Lean.Meta.Sym.Pattern public section namespace Lean.Meta.Sym.Simp diff --git a/src/Lean/Meta/Sym/Simp/Simproc.lean b/src/Lean/Meta/Sym/Simp/Simproc.lean index ce6fdaa311..c02be80a76 100644 --- a/src/Lean/Meta/Sym/Simp/Simproc.lean +++ b/src/Lean/Meta/Sym/Simp/Simproc.lean @@ -5,7 +5,6 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Sym.Simp.SimpM public import Lean.Meta.Sym.Simp.Result namespace Lean.Meta.Sym.Simp diff --git a/src/Lean/Meta/Sym/SymM.lean b/src/Lean/Meta/Sym/SymM.lean index 3b176bd365..d1a0e62924 100644 --- a/src/Lean/Meta/Sym/SymM.lean +++ b/src/Lean/Meta/Sym/SymM.lean @@ -5,7 +5,6 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Basic public import Lean.Meta.Sym.AlphaShareCommon public import Lean.Meta.CongrTheorems public section diff --git a/src/Lean/Meta/SynthInstance.lean b/src/Lean/Meta/SynthInstance.lean index 100c612d54..b7216e64fc 100644 --- a/src/Lean/Meta/SynthInstance.lean +++ b/src/Lean/Meta/SynthInstance.lean @@ -12,6 +12,7 @@ public import Init.Data.Array.InsertionSort public import Lean.Meta.Instances public import Lean.Meta.AbstractMVars public import Lean.Meta.Check +import Init.While public section diff --git a/src/Lean/Meta/Tactic/AC/Main.lean b/src/Lean/Meta/Tactic/AC/Main.lean index d356b28b56..6ff715344c 100644 --- a/src/Lean/Meta/Tactic/AC/Main.lean +++ b/src/Lean/Meta/Tactic/AC/Main.lean @@ -9,6 +9,7 @@ prelude public import Lean.Meta.Tactic.Refl public import Lean.Meta.Tactic.Simp.Main public import Lean.Elab.Tactic.Rewrite +import Init.Omega public section diff --git a/src/Lean/Meta/Tactic/Apply.lean b/src/Lean/Meta/Tactic/Apply.lean index 79f6229f59..ec11dc6aa4 100644 --- a/src/Lean/Meta/Tactic/Apply.lean +++ b/src/Lean/Meta/Tactic/Apply.lean @@ -9,6 +9,7 @@ prelude public import Lean.Meta.Tactic.Util public import Lean.PrettyPrinter import Lean.Meta.AppBuilder +import Init.Omega public section diff --git a/src/Lean/Meta/Tactic/Backtrack.lean b/src/Lean/Meta/Tactic/Backtrack.lean index 8bd55219f0..25cc0b7151 100644 --- a/src/Lean/Meta/Tactic/Backtrack.lean +++ b/src/Lean/Meta/Tactic/Backtrack.lean @@ -8,6 +8,8 @@ module prelude public import Lean.Meta.Iterator public import Lean.Meta.Tactic.IndependentOf +import Init.Data.Nat.Linear +import Init.Omega public section diff --git a/src/Lean/Meta/Tactic/Cases.lean b/src/Lean/Meta/Tactic/Cases.lean index 2486f9ffdc..28a0c4b825 100644 --- a/src/Lean/Meta/Tactic/Cases.lean +++ b/src/Lean/Meta/Tactic/Cases.lean @@ -11,6 +11,7 @@ public import Lean.Meta.Tactic.Acyclic public import Lean.Meta.Tactic.UnifyEq import Lean.Meta.Constructions.SparseCasesOn import Lean.Meta.Constructions.CtorIdx +import Init.Omega public section diff --git a/src/Lean/Meta/Tactic/CasesOnStuckLHS.lean b/src/Lean/Meta/Tactic/CasesOnStuckLHS.lean index 2d2a55acc4..7d13d762bf 100644 --- a/src/Lean/Meta/Tactic/CasesOnStuckLHS.lean +++ b/src/Lean/Meta/Tactic/CasesOnStuckLHS.lean @@ -6,8 +6,8 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Basic -import Lean.Meta.Tactic.SplitIf import Lean.ProjFns +import Lean.Meta.Tactic.Cases namespace Lean.Meta /-! diff --git a/src/Lean/Meta/Tactic/Cleanup.lean b/src/Lean/Meta/Tactic/Cleanup.lean index 36dabba101..a183753b90 100644 --- a/src/Lean/Meta/Tactic/Cleanup.lean +++ b/src/Lean/Meta/Tactic/Cleanup.lean @@ -8,7 +8,7 @@ module prelude public import Lean.Meta.Basic import Lean.Meta.CollectFVars -import Lean.Meta.Tactic.Clear +import Lean.Meta.Tactic.Util namespace Lean.Meta diff --git a/src/Lean/Meta/Tactic/Clear.lean b/src/Lean/Meta/Tactic/Clear.lean index 5ef1ceaa79..163c559d4b 100644 --- a/src/Lean/Meta/Tactic/Clear.lean +++ b/src/Lean/Meta/Tactic/Clear.lean @@ -7,6 +7,8 @@ module prelude public import Lean.Meta.Tactic.Util +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas public section diff --git a/src/Lean/Meta/Tactic/Contradiction.lean b/src/Lean/Meta/Tactic/Contradiction.lean index 256bd818d5..40375ef5a0 100644 --- a/src/Lean/Meta/Tactic/Contradiction.lean +++ b/src/Lean/Meta/Tactic/Contradiction.lean @@ -9,8 +9,8 @@ prelude public import Lean.Meta.Tactic.Assumption public import Lean.Meta.Tactic.Cases public import Lean.Meta.Tactic.Apply -import Lean.Meta.Tactic.Simp.Main import Lean.Meta.HasNotBit +import Lean.Meta.Tactic.Simp.Rewrite public section diff --git a/src/Lean/Meta/Tactic/ElimInfo.lean b/src/Lean/Meta/Tactic/ElimInfo.lean index d327368841..dc22ec5dd0 100644 --- a/src/Lean/Meta/Tactic/ElimInfo.lean +++ b/src/Lean/Meta/Tactic/ElimInfo.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Check +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/Meta/Tactic/ExposeNames.lean b/src/Lean/Meta/Tactic/ExposeNames.lean index ec89891670..350deea845 100644 --- a/src/Lean/Meta/Tactic/ExposeNames.lean +++ b/src/Lean/Meta/Tactic/ExposeNames.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Tactic.Util +import Init.While public section diff --git a/src/Lean/Meta/Tactic/FunInd.lean b/src/Lean/Meta/Tactic/FunInd.lean index caaed01c9d..7902200d21 100644 --- a/src/Lean/Meta/Tactic/FunInd.lean +++ b/src/Lean/Meta/Tactic/FunInd.lean @@ -15,11 +15,10 @@ import Lean.Meta.ArgsPacker import Lean.Elab.PreDefinition.WF.Eqns import Lean.Elab.PreDefinition.Structural.Eqns import Lean.Elab.PreDefinition.Structural.FindRecArg -import Lean.Meta.Tactic.ElimInfo import Lean.Meta.Tactic.FunIndInfo import Lean.Data.Array -import Lean.Meta.Tactic.Simp.Rewrite import Lean.Meta.Tactic.Replace +import Init.Omega /-! This module contains code to derive, from the definition of a recursive function (structural or diff --git a/src/Lean/Meta/Tactic/Grind/AC/DenoteExpr.lean b/src/Lean/Meta/Tactic/Grind/AC/DenoteExpr.lean index 8efd379f68..8150cc0383 100644 --- a/src/Lean/Meta/Tactic/Grind/AC/DenoteExpr.lean +++ b/src/Lean/Meta/Tactic/Grind/AC/DenoteExpr.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.AC.Util -import Lean.Meta.AppBuilder public section namespace Lean.Meta.Grind.AC open Lean.Grind diff --git a/src/Lean/Meta/Tactic/Grind/AC/Eq.lean b/src/Lean/Meta/Tactic/Grind/AC/Eq.lean index c22faad095..8906668047 100644 --- a/src/Lean/Meta/Tactic/Grind/AC/Eq.lean +++ b/src/Lean/Meta/Tactic/Grind/AC/Eq.lean @@ -10,6 +10,7 @@ import Lean.Meta.Tactic.Grind.AC.DenoteExpr import Lean.Meta.Tactic.Grind.AC.Proof import Lean.Meta.Tactic.Grind.AC.Seq import Lean.Meta.Tactic.Grind.AC.Inv +import Init.Data.Nat.Linear public section namespace Lean.Meta.Grind.AC open Lean.Grind diff --git a/src/Lean/Meta/Tactic/Grind/AC/PP.lean b/src/Lean/Meta/Tactic/Grind/AC/PP.lean index 41ad7b0b1e..e9c3501008 100644 --- a/src/Lean/Meta/Tactic/Grind/AC/PP.lean +++ b/src/Lean/Meta/Tactic/Grind/AC/PP.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Tactic.Grind.Types import Lean.Meta.Tactic.Grind.AC.DenoteExpr +import Init.Omega public section namespace Lean.Meta.Grind.AC diff --git a/src/Lean/Meta/Tactic/Grind/AC/Proof.lean b/src/Lean/Meta/Tactic/Grind/AC/Proof.lean index c00046385b..fc0ec2711a 100644 --- a/src/Lean/Meta/Tactic/Grind/AC/Proof.lean +++ b/src/Lean/Meta/Tactic/Grind/AC/Proof.lean @@ -11,6 +11,8 @@ import Lean.Meta.Tactic.Grind.Diseq import Lean.Meta.Tactic.Grind.ProofUtil import Lean.Meta.Tactic.Grind.AC.ToExpr import Lean.Meta.Tactic.Grind.AC.VarRename +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas public section namespace Lean.Meta.Grind.AC open Lean.Grind diff --git a/src/Lean/Meta/Tactic/Grind/AC/Seq.lean b/src/Lean/Meta/Tactic/Grind/AC/Seq.lean index 265806f568..ef5b60b260 100644 --- a/src/Lean/Meta/Tactic/Grind/AC/Seq.lean +++ b/src/Lean/Meta/Tactic/Grind/AC/Seq.lean @@ -7,6 +7,7 @@ module prelude public import Init.Grind.AC public import Init.Data.Ord +import Init.Data.Nat.Linear public section namespace Lean.Grind.AC diff --git a/src/Lean/Meta/Tactic/Grind/Anchor.lean b/src/Lean/Meta/Tactic/Grind/Anchor.lean index 984fb90d79..f3861877a4 100644 --- a/src/Lean/Meta/Tactic/Grind/Anchor.lean +++ b/src/Lean/Meta/Tactic/Grind/Anchor.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Tactic.Grind.Types import Lean.Meta.Tactic.Grind.MarkNestedSubsingletons +import Init.Omega namespace Lean.Meta.Grind /-! diff --git a/src/Lean/Meta/Tactic/Grind/Arith.lean b/src/Lean/Meta/Tactic/Grind/Arith.lean index 5c91658999..7c0ebe560e 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith.lean @@ -13,3 +13,4 @@ public import Lean.Meta.Tactic.Grind.Arith.Linear public import Lean.Meta.Tactic.Grind.Arith.Cutsat public import Lean.Meta.Tactic.Grind.Arith.Simproc public import Lean.Meta.Tactic.Grind.Arith.Propagate +public import Lean.Meta.Tactic.Grind.Arith.Model diff --git a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/EqCnstr.lean b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/EqCnstr.lean index 9a1052196f..ffa2d1fe3c 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/EqCnstr.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/EqCnstr.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Arith.CommRing.RingId -import Lean.Meta.Tactic.Grind.ProveEq import Lean.Meta.Tactic.Grind.Diseq import Lean.Meta.Tactic.Grind.Arith.Util import Lean.Meta.Tactic.Grind.Arith.CommRing.Proof diff --git a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/PP.lean b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/PP.lean index f3a4839ed6..6747f4bb3e 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/PP.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/PP.lean @@ -7,7 +7,7 @@ module prelude public import Lean.Meta.Tactic.Grind.Types import Lean.Meta.Tactic.Grind.Arith.CommRing.DenoteExpr -import Lean.Meta.Tactic.Grind.Arith.CommRing.RingM +import Init.Omega public section namespace Lean.Meta.Grind.Arith.CommRing diff --git a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Poly.lean b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Poly.lean index 69726f7b7a..9651a94161 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Poly.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Poly.lean @@ -6,6 +6,10 @@ Authors: Leonardo de Moura module prelude public import Init.Grind.Ring.CommSolver +import Init.Data.Nat.Gcd +import Init.Data.Nat.Lemmas +import Init.Data.Nat.Linear +import Init.WFTactics public section namespace Lean.Grind.CommRing diff --git a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Power.lean b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Power.lean index 2fea83b965..81e17b11da 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Power.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Power.lean @@ -5,12 +5,10 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Tactic.Grind.Types import Init.Grind -import Lean.Meta.Tactic.Grind.PropagatorAttr -import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Arith.Simproc import Lean.Meta.NatInstTesters +public import Lean.Meta.Tactic.Grind.PropagatorAttr public section namespace Lean.Meta.Grind.Arith.CommRing diff --git a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Proof.lean b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Proof.lean index 8f72a7e980..259d9e13ed 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Proof.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Proof.lean @@ -11,11 +11,11 @@ public import Lean.Meta.Tactic.Grind.Arith.CommRing.NonCommSemiringM import Lean.Data.RArray import Lean.Meta.Tactic.Grind.Diseq import Lean.Meta.Tactic.Grind.ProofUtil -import Lean.Meta.Tactic.Grind.Arith.Util import Lean.Meta.Tactic.Grind.Arith.CommRing.DenoteExpr -import Lean.Meta.Tactic.Grind.Arith.CommRing.SafePoly import Lean.Meta.Tactic.Grind.Arith.CommRing.ToExpr import Lean.Meta.Tactic.Grind.Arith.CommRing.VarRename +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas public section namespace Lean.Meta.Grind.Arith.CommRing /-- diff --git a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Reify.lean b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Reify.lean index 2706e6a7ce..2f502546bd 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Reify.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Reify.lean @@ -7,8 +7,6 @@ module prelude public import Lean.Meta.Tactic.Grind.Arith.CommRing.NonCommRingM public import Lean.Meta.Tactic.Grind.Arith.CommRing.NonCommSemiringM -import Lean.Meta.Tactic.Grind.Simp -import Lean.Meta.Tactic.Grind.Arith.CommRing.Functions public section namespace Lean.Meta.Grind.Arith.CommRing diff --git a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/RingId.lean b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/RingId.lean index 1b3799ab63..34ce52afad 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/RingId.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/RingId.lean @@ -6,9 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Arith.CommRing.RingM -import Init.Grind.Ring.Field -import Init.Grind.Ring.Envelope -import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Arith.Insts public section namespace Lean.Meta.Grind.Arith.CommRing diff --git a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/RingM.lean b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/RingM.lean index 6705339e1e..06cc4fb099 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/RingM.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/RingM.lean @@ -7,8 +7,6 @@ module prelude public import Lean.Meta.Tactic.Grind.SynthInstance public import Lean.Meta.Tactic.Grind.Arith.CommRing.MonadRing -import Lean.Meta.Tactic.Grind.Arith.CommRing.Functions -import Lean.Meta.Tactic.Grind.Arith.CommRing.Poly public section namespace Lean.Meta.Grind.Arith.CommRing diff --git a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/SafePoly.lean b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/SafePoly.lean index 00f8f6cb0b..f6f48b0824 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/SafePoly.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/SafePoly.lean @@ -8,6 +8,7 @@ prelude public import Lean.Meta.Tactic.Grind.Arith.CommRing.RingM public import Lean.Meta.Tactic.Grind.Arith.CommRing.Poly import Lean.Meta.Tactic.Grind.Arith.EvalNum +import Init.Data.Nat.Linear public section namespace Lean.Meta.Grind.Arith.CommRing /-! diff --git a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Types.lean b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Types.lean index 71c9b653fc..1750e8fe5d 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Types.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/CommRing/Types.lean @@ -8,7 +8,6 @@ prelude public import Init.Grind.Ring.CommSemiringAdapter public import Lean.Meta.Tactic.Grind.Types import Lean.Meta.Tactic.Grind.Arith.CommRing.Poly -import Lean.Data.PersistentArray public section namespace Lean.Meta.Grind.Arith.CommRing diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/CommRing.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/CommRing.lean index d98f79ca32..0f33a791e6 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/CommRing.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/CommRing.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Meta.Tactic.Grind.Arith.Cutsat.Types public import Lean.Meta.Tactic.Grind.Arith.CommRing.RingId -import Lean.Meta.Tactic.Grind.ProveEq import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Arith.Cutsat.Util import Lean.Meta.Tactic.Grind.Arith.Cutsat.Var diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/DvdCnstr.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/DvdCnstr.lean index f44d6b5016..2eaa24445a 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/DvdCnstr.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/DvdCnstr.lean @@ -9,13 +9,14 @@ public import Lean.Meta.Tactic.Grind.Arith.Cutsat.Types import Init.Data.Int.OfNat import Init.Grind.Propagator import Lean.Meta.Tactic.Grind.Simp -import Lean.Meta.Tactic.Grind.PropagatorAttr import Lean.Meta.Tactic.Grind.Arith.Cutsat.Var import Lean.Meta.Tactic.Grind.Arith.Cutsat.Nat import Lean.Meta.Tactic.Grind.Arith.Cutsat.Proof import Lean.Meta.Tactic.Grind.Arith.Cutsat.Norm import Lean.Meta.Tactic.Grind.Arith.Cutsat.CommRing import Lean.Meta.NatInstTesters +public import Lean.Meta.Tactic.Grind.PropagatorAttr +import Init.Data.Nat.Dvd public section namespace Lean.Meta.Grind.Arith.Cutsat diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/EqCnstr.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/EqCnstr.lean index 83ebfbd68f..f8fc4edc4b 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/EqCnstr.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/EqCnstr.lean @@ -17,6 +17,7 @@ import Lean.Meta.Tactic.Grind.Arith.Cutsat.CommRing import Lean.Meta.Tactic.Grind.Arith.Cutsat.Norm import Lean.Meta.Tactic.Grind.Arith.EvalNum import Lean.Meta.NatInstTesters +import Init.Omega public section namespace Lean.Meta.Grind.Arith.Cutsat diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Inv.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Inv.lean index 179e3cad39..f4bda7292e 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Inv.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Inv.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Meta.Tactic.Grind.Arith.Cutsat.Types import Lean.Meta.Tactic.Grind.Arith.Cutsat.Util -import Lean.Meta.Tactic.Grind.Arith.Cutsat.Var public section namespace Int.Linear /-- Returns `true` if all coefficients are not `0`. -/ diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/LeCnstr.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/LeCnstr.lean index 0e2d373a5c..2e66842145 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/LeCnstr.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/LeCnstr.lean @@ -8,7 +8,6 @@ prelude public import Lean.Meta.Tactic.Grind.Arith.Cutsat.ToInt import Init.Data.Int.OfNat import Lean.Meta.Tactic.Simp.Arith.Int -import Lean.Meta.Tactic.Grind.PropagatorAttr import Lean.Meta.Tactic.Grind.Arith.Cutsat.Var import Lean.Meta.Tactic.Grind.Arith.Cutsat.Proof import Lean.Meta.Tactic.Grind.Arith.Cutsat.Nat diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Model.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Model.lean index 0b946bc9cf..e0bcdb9233 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Model.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Model.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Arith.Cutsat.Types -import Init.Grind.ToInt import Lean.Meta.Tactic.Grind.Arith.ModelUtil public section namespace Lean.Meta.Grind.Arith.Cutsat diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Nat.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Nat.lean index 128d118dbb..077d0d36de 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Nat.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Nat.lean @@ -8,7 +8,6 @@ prelude public import Lean.Meta.Tactic.Grind.Arith.Cutsat.Types import Init.Data.Int.OfNat import Lean.Meta.Tactic.Grind.Simp -import Lean.Meta.Tactic.Grind.Arith.Cutsat.Norm import Lean.Meta.Tactic.Grind.Arith.Cutsat.ToInt import Lean.Meta.NatInstTesters public section diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Proof.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Proof.lean index 7c7f3c667a..04ca93e2d8 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Proof.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Proof.lean @@ -16,6 +16,8 @@ import Lean.Meta.Tactic.Grind.Arith.Cutsat.Nat import Lean.Meta.Tactic.Grind.Arith.Cutsat.VarRename import Lean.Meta.Tactic.Grind.Arith.CommRing.VarRename import Lean.Meta.Tactic.Grind.Arith.CommRing.ToExpr +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas public section namespace Lean.Meta.Grind.Arith.Cutsat deriving instance Hashable for Int.Linear.Expr diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Search.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Search.lean index b1e0632e5e..4fed26dad2 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Search.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Search.lean @@ -7,13 +7,10 @@ module prelude public import Lean.Meta.Tactic.Grind.Arith.Cutsat.SearchM import Lean.Meta.Tactic.Simp.Arith.Int.Simp -import Lean.Meta.Tactic.Grind.Arith.Cutsat.Var import Lean.Meta.Tactic.Grind.Arith.Cutsat.DvdCnstr -import Lean.Meta.Tactic.Grind.Arith.Cutsat.LeCnstr -import Lean.Meta.Tactic.Grind.Arith.Cutsat.EqCnstr -import Lean.Meta.Tactic.Grind.Arith.Cutsat.Model import Lean.Meta.Tactic.Grind.Arith.Cutsat.ReorderVars import Lean.Meta.Tactic.Grind.Arith.Cutsat.Proof +import Lean.Meta.Tactic.Grind.Arith.Cutsat.Util public section namespace Lean.Meta.Grind.Arith.Cutsat diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/ToInt.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/ToInt.lean index 5bf95b8f1d..572eea9716 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/ToInt.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/ToInt.lean @@ -11,7 +11,6 @@ import Init.GrindInstances.ToInt import Lean.Meta.Tactic.Grind.SynthInstance import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Arith.EvalNum -import Lean.Meta.Tactic.Grind.Arith.Cutsat.Norm public section namespace Lean.Meta.Grind.Arith.Cutsat diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/ToIntInfo.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/ToIntInfo.lean index 2b6e75e180..7a143f1190 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/ToIntInfo.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/ToIntInfo.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Arith.Util -import Init.Grind.ToInt import Lean.Meta.LitValues public section namespace Lean.Meta.Grind.Arith.Cutsat diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Types.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Types.lean index c3fedcd684..e7fb7cea59 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Types.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Types.lean @@ -8,8 +8,6 @@ prelude public import Init.Data.Int.Linear public import Lean.Meta.Tactic.Grind.Arith.CommRing.Types public import Lean.Meta.Tactic.Grind.Arith.Cutsat.ToIntInfo -import Lean.Meta.Sym.ExprPtr -import Lean.Meta.Tactic.Grind.Arith.Util public section namespace Lean.Meta.Grind.Arith.Cutsat diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Util.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Util.lean index b4643609a1..c1f9bc9ae7 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Util.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Util.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Arith.Cutsat.Types -import Lean.Meta.Tactic.Grind.Arith.Util import Lean.Meta.Tactic.Simp.Arith.Int.Simp public section namespace Int.Linear diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Var.lean b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Var.lean index 24dfbb125c..ba1bc102e3 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Var.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Cutsat/Var.lean @@ -6,9 +6,9 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Arith.Cutsat.Types -import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Arith.Cutsat.Nat import Lean.Meta.Tactic.Grind.Arith.Cutsat.ToInt +import Lean.Meta.IntInstTesters public section namespace Lean.Meta.Grind.Arith.Cutsat diff --git a/src/Lean/Meta/Tactic/Grind/Arith/FieldNormNum.lean b/src/Lean/Meta/Tactic/Grind/Arith/FieldNormNum.lean index 8ff3c9aae3..da182d7f48 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/FieldNormNum.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/FieldNormNum.lean @@ -7,8 +7,6 @@ module prelude public import Lean.Meta.Basic import Lean.Meta.Tactic.Grind.SynthInstance -import Lean.Util.SafeExponentiation -import Lean.Meta.AppBuilder import Init.Grind.FieldNormNum namespace Lean.Meta.Grind.Arith namespace FieldNormNum diff --git a/src/Lean/Meta/Tactic/Grind/Arith/IsRelevant.lean b/src/Lean/Meta/Tactic/Grind/Arith/IsRelevant.lean index a30f4a0e91..d8ca5cc446 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/IsRelevant.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/IsRelevant.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Types -import Lean.Meta.Tactic.Grind.Arith.Util import Lean.Meta.Tactic.Grind.Arith.Cutsat.ToInt import Lean.Meta.Tactic.Grind.Arith.Linear.StructId public section diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/Den.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/Den.lean index 1254c56f0e..731ad8cb80 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/Den.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/Den.lean @@ -6,8 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Arith.Linear.LinearM -import Lean.Meta.Tactic.Grind.Arith.CommRing.Reify -import Lean.Meta.Tactic.Grind.Arith.CommRing.DenoteExpr import Lean.Meta.Tactic.Grind.Arith.CommRing.SafePoly namespace Lean.Meta.Grind.Arith.Linear diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/DenoteExpr.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/DenoteExpr.lean index e66c03d1c9..9bda144b93 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/DenoteExpr.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/DenoteExpr.lean @@ -9,7 +9,6 @@ import Lean.Meta.Tactic.Grind.Arith.Util public import Lean.Meta.Tactic.Grind.Arith.Linear.Util import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Arith.CommRing.DenoteExpr -import Lean.Meta.Tactic.Grind.Arith.Linear.Var public section namespace Lean.Meta.Grind.Arith.Linear /-! diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/IneqCnstr.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/IneqCnstr.lean index 2c62c8543b..4aa1fe9309 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/IneqCnstr.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/IneqCnstr.lean @@ -7,14 +7,10 @@ module prelude public import Lean.Meta.Tactic.Grind.Arith.Linear.LinearM import Lean.Meta.Tactic.Grind.Arith.CommRing.Reify -import Lean.Meta.Tactic.Grind.Arith.CommRing.DenoteExpr import Lean.Meta.Tactic.Grind.Arith.Linear.Den -import Lean.Meta.Tactic.Grind.Arith.Linear.Var import Lean.Meta.Tactic.Grind.Arith.Linear.StructId import Lean.Meta.Tactic.Grind.Arith.Linear.Reify -import Lean.Meta.Tactic.Grind.Arith.Linear.DenoteExpr import Lean.Meta.Tactic.Grind.Arith.Linear.Proof -import Lean.Meta.Tactic.Grind.Arith.Linear.OfNatModule namespace Lean.Meta.Grind.Arith.Linear def isInstOf (fn? : Option Expr) (inst : Expr) : Bool := diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/Internalize.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/Internalize.lean index e02c73d77b..9e187a1207 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/Internalize.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/Internalize.lean @@ -6,9 +6,7 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Arith.Linear.OfNatModule -import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Arith.Util -import Lean.Meta.Tactic.Grind.Arith.CommRing.Reify import Lean.Meta.Tactic.Grind.Arith.Linear.StructId import Lean.Meta.Tactic.Grind.Arith.Linear.Var import Lean.Meta.Tactic.Grind.Arith.Linear.Util diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/MBTC.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/MBTC.lean index 57bc2e0e5a..d2cd767734 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/MBTC.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/MBTC.lean @@ -9,7 +9,7 @@ public import Lean.Meta.Tactic.Grind.Types import Lean.Meta.Tactic.Grind.MBTC import Lean.Meta.Tactic.Grind.Arith.ModelUtil import Lean.Meta.Tactic.Grind.Arith.Linear.Model -import Lean.Meta.Tactic.Grind.Arith.Linear.PropagateEq +import Lean.Meta.Tactic.Grind.Arith.Linear.LinearM public section namespace Lean.Meta.Grind.Arith.Linear diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/OfNatModule.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/OfNatModule.lean index 93c8c9d631..2645ad24c2 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/OfNatModule.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/OfNatModule.lean @@ -6,12 +6,13 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Arith.Linear.LinearM -import Lean.Meta.Tactic.Grind.Simp import Init.Grind.Module.OfNatModule import Init.Grind.Module.NatModuleNorm import Lean.Meta.Tactic.Grind.Diseq -import Lean.Meta.Tactic.Grind.Proof import Lean.Meta.Tactic.Grind.Arith.Linear.ToExpr +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas +import Lean.Data.RArray public section namespace Lean.Meta.Grind.Arith.Linear diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/PP.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/PP.lean index aced5d5fc2..4fc44447ca 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/PP.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/PP.lean @@ -8,6 +8,7 @@ prelude public import Lean.Meta.Tactic.Grind.Arith.Linear.Types import Lean.Meta.Tactic.Grind.Arith.Linear.Model import Lean.Meta.Tactic.Grind.Arith.Util +import Init.Omega public section namespace Lean.Meta.Grind.Arith.Linear diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/Proof.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/Proof.lean index b563fb70b4..093376d708 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/Proof.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/Proof.lean @@ -5,18 +5,19 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Tactic.Grind.Arith.Linear.LinearM public import Lean.Meta.Tactic.Grind.Arith.Util import Init.Grind.Module.OfNatModule import Lean.Data.RArray import Lean.Meta.Tactic.Grind.Arith.Linear.ToExpr -import Lean.Meta.Tactic.Grind.Arith.Linear.DenoteExpr import Lean.Meta.Tactic.Grind.Diseq import Lean.Meta.Tactic.Grind.ProofUtil import Lean.Meta.Tactic.Grind.Arith.CommRing.VarRename import Lean.Meta.Tactic.Grind.Arith.CommRing.ToExpr import Lean.Meta.Tactic.Grind.Arith.Linear.VarRename -import Lean.Meta.Tactic.Grind.Arith.Linear.OfNatModule +public import Lean.Meta.Tactic.Grind.Arith.Linear.DenoteExpr +public import Lean.Meta.Tactic.Grind.Arith.Linear.OfNatModule +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas public section namespace Lean.Meta.Grind.Arith.Linear diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/PropagateEq.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/PropagateEq.lean index 5a7486c0a2..43a5ffc2a9 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/PropagateEq.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/PropagateEq.lean @@ -7,15 +7,10 @@ module prelude public import Lean.Meta.Tactic.Grind.Arith.Linear.LinearM import Lean.Meta.Tactic.Grind.Arith.CommRing.Reify -import Lean.Meta.Tactic.Grind.Arith.CommRing.DenoteExpr import Lean.Meta.Tactic.Grind.Arith.Linear.Den -import Lean.Meta.Tactic.Grind.Arith.Linear.Var -import Lean.Meta.Tactic.Grind.Arith.Linear.StructId import Lean.Meta.Tactic.Grind.Arith.Linear.Reify import Lean.Meta.Tactic.Grind.Arith.Linear.IneqCnstr -import Lean.Meta.Tactic.Grind.Arith.Linear.DenoteExpr import Lean.Meta.Tactic.Grind.Arith.Linear.Proof -import Lean.Meta.Tactic.Grind.Arith.Linear.OfNatModule public section namespace Lean.Meta.Grind.Arith.Linear diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/Reify.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/Reify.lean index c97807690d..0de1a484b2 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/Reify.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/Reify.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Arith.Linear.LinearM -import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Arith.Linear.Var public section namespace Lean.Meta.Grind.Arith.Linear diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/Search.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/Search.lean index aaf7182f03..a1fe689d56 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/Search.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/Search.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Arith.Linear.SearchM -import Lean.Meta.Tactic.Grind.Arith.Linear.DenoteExpr import Lean.Meta.Tactic.Grind.Arith.Linear.IneqCnstr import Lean.Meta.Tactic.Grind.Arith.Linear.Proof public section diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/StructId.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/StructId.lean index 7db9117484..151fb01743 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/StructId.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/StructId.lean @@ -6,11 +6,9 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Types -import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.OrderInsts import Lean.Meta.Tactic.Grind.Arith.Cutsat.ToInt import Lean.Meta.Tactic.Grind.Arith.CommRing.RingId -import Lean.Meta.Tactic.Grind.Arith.Linear.Util import Lean.Meta.Tactic.Grind.Arith.Linear.Var import Lean.Meta.Tactic.Grind.Arith.Insts import Init.Grind.Module.Envelope diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Linear/Types.lean b/src/Lean/Meta/Tactic/Grind/Arith/Linear/Types.lean index a1bf0a01c0..786d05b08e 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Linear/Types.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Linear/Types.lean @@ -8,7 +8,6 @@ prelude public import Init.Grind.Ring.CommSolver public import Init.Grind.Ordered.Linarith public import Lean.Meta.Tactic.Grind.Types -public import Init.Data.Rat.Basic public section namespace Lean.Meta.Grind.Arith.Linear export Lean.Grind.Linarith (Var Poly) diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Main.lean b/src/Lean/Meta/Tactic/Grind/Arith/Main.lean index 998de81147..8ada686123 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Main.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Main.lean @@ -5,13 +5,10 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Tactic.Grind.Types import Init.Grind.Propagator -import Lean.Meta.Tactic.Grind.PropagatorAttr import Lean.Meta.Tactic.Grind.Arith.Cutsat.LeCnstr -import Lean.Meta.Tactic.Grind.Arith.Cutsat.Search import Lean.Meta.Tactic.Grind.Arith.Linear.IneqCnstr -import Lean.Meta.Tactic.Grind.Arith.Linear.Search +public import Lean.Meta.Tactic.Grind.PropagatorAttr public section namespace Lean.Meta.Grind.Arith diff --git a/src/Lean/Meta/Tactic/Grind/Arith/ModelUtil.lean b/src/Lean/Meta/Tactic/Grind/Arith/ModelUtil.lean index d58c1cbe0f..fa83f62dbb 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/ModelUtil.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/ModelUtil.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Types -public import Init.Data.Rat.Basic import Lean.Meta.Tactic.Grind.Arith.Util import Init.Grind.Module.Envelope public section diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Propagate.lean b/src/Lean/Meta/Tactic/Grind/Arith/Propagate.lean index 5678875312..65636bb150 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Propagate.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Propagate.lean @@ -5,12 +5,11 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Tactic.Grind.Types import Init.Grind -import Lean.Meta.Tactic.Grind.PropagatorAttr import Lean.Meta.Tactic.Grind.Arith.CommRing.RingId import Lean.Meta.Tactic.Grind.Arith.CommRing.NonCommRingM import Lean.Meta.Tactic.Grind.Arith.CommRing.NonCommSemiringM +public import Lean.Meta.Tactic.Grind.PropagatorAttr public section namespace Lean.Meta.Grind.Arith diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Simproc.lean b/src/Lean/Meta/Tactic/Grind/Arith/Simproc.lean index e4f0982489..6f74c39c4e 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Simproc.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Simproc.lean @@ -7,10 +7,8 @@ module prelude public import Init.Grind.Ring.Basic public import Init.Simproc -public import Lean.Meta.Tactic.Simp.Simproc public import Lean.Meta.Tactic.Grind.SynthInstance import Init.Grind.Ring.Field -import Init.Grind.FieldNormNum import Lean.Meta.Tactic.Grind.Arith.FieldNormNum public section namespace Lean.Meta.Grind.Arith diff --git a/src/Lean/Meta/Tactic/Grind/Arith/Util.lean b/src/Lean/Meta/Tactic/Grind/Arith/Util.lean index d12cd3915d..f8f2130415 100644 --- a/src/Lean/Meta/Tactic/Grind/Arith/Util.lean +++ b/src/Lean/Meta/Tactic/Grind/Arith/Util.lean @@ -7,7 +7,6 @@ module prelude public import Init.Grind.Ring.Basic public import Lean.Meta.SynthInstance -public import Init.Data.Rat.Basic public section namespace Lean.Meta.Grind.Arith diff --git a/src/Lean/Meta/Tactic/Grind/Canon.lean b/src/Lean/Meta/Tactic/Grind/Canon.lean index a4fb5f6926..9cfe6e3960 100644 --- a/src/Lean/Meta/Tactic/Grind/Canon.lean +++ b/src/Lean/Meta/Tactic/Grind/Canon.lean @@ -7,8 +7,6 @@ module prelude public import Lean.Meta.Tactic.Grind.Types import Init.Grind.Util -import Lean.Meta.FunInfo -import Lean.Util.FVarSubset import Lean.Meta.IntInstTesters import Lean.Meta.NatInstTesters import Lean.Meta.Tactic.Grind.SynthInstance diff --git a/src/Lean/Meta/Tactic/Grind/CasesMatch.lean b/src/Lean/Meta/Tactic/Grind/CasesMatch.lean index c056c6444b..0f681965db 100644 --- a/src/Lean/Meta/Tactic/Grind/CasesMatch.lean +++ b/src/Lean/Meta/Tactic/Grind/CasesMatch.lean @@ -8,8 +8,7 @@ prelude public import Lean.Meta.Tactic.Util import Lean.Meta.Tactic.Grind.Util import Lean.Meta.Match.MatcherApp -import Lean.Meta.Tactic.Grind.MatchCond -import Lean.Meta.Tactic.Grind.Simp +import Lean.Meta.Tactic.Cases public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/CheckResult.lean b/src/Lean/Meta/Tactic/Grind/CheckResult.lean index 755e749a71..b6bd8adebe 100644 --- a/src/Lean/Meta/Tactic/Grind/CheckResult.lean +++ b/src/Lean/Meta/Tactic/Grind/CheckResult.lean @@ -6,6 +6,7 @@ Authors: Leonardo de Moura module prelude public import Init.Data.Repr +import Init.MetaTypes -- shake: keep (dependency of `simp +decide`, fix) public section namespace Lean.Meta.Grind /-- diff --git a/src/Lean/Meta/Tactic/Grind/Core.lean b/src/Lean/Meta/Tactic/Grind/Core.lean index 977adf17ef..bca842ff87 100644 --- a/src/Lean/Meta/Tactic/Grind/Core.lean +++ b/src/Lean/Meta/Tactic/Grind/Core.lean @@ -9,10 +9,10 @@ public import Lean.Meta.Tactic.Grind.Types import Lean.Meta.Tactic.Grind.Inv import Lean.Meta.Tactic.Grind.PP import Lean.Meta.Tactic.Grind.Ctor -import Lean.Meta.Tactic.Grind.Util import Lean.Meta.Tactic.Grind.Beta import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Internalize +import Init.Omega public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/EMatch.lean b/src/Lean/Meta/Tactic/Grind/EMatch.lean index f198452597..caeea69530 100644 --- a/src/Lean/Meta/Tactic/Grind/EMatch.lean +++ b/src/Lean/Meta/Tactic/Grind/EMatch.lean @@ -7,12 +7,13 @@ module prelude public import Lean.Meta.Tactic.Grind.Types import Lean.Util.CollectLevelMVars -import Lean.Meta.Tactic.Grind.Core import Lean.Meta.Tactic.Grind.Util import Lean.Meta.Tactic.Grind.MatchDiscrOnly import Lean.Meta.Tactic.Grind.ProveEq import Lean.Meta.Tactic.Grind.SynthInstance import Lean.Meta.Tactic.Grind.Simp +import Init.Grind.Util +import Init.Omega public section namespace Lean.Meta.Grind namespace EMatch diff --git a/src/Lean/Meta/Tactic/Grind/EMatchAction.lean b/src/Lean/Meta/Tactic/Grind/EMatchAction.lean index 413518894d..fc52108c3b 100644 --- a/src/Lean/Meta/Tactic/Grind/EMatchAction.lean +++ b/src/Lean/Meta/Tactic/Grind/EMatchAction.lean @@ -5,7 +5,6 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Tactic.Grind.Action public import Lean.Meta.Tactic.Grind.Intro import Lean.Util.ParamMinimizer import Lean.Meta.Tactic.Grind.EMatch diff --git a/src/Lean/Meta/Tactic/Grind/EMatchTheorem.lean b/src/Lean/Meta/Tactic/Grind/EMatchTheorem.lean index 132ba8b27e..b842c880ba 100644 --- a/src/Lean/Meta/Tactic/Grind/EMatchTheorem.lean +++ b/src/Lean/Meta/Tactic/Grind/EMatchTheorem.lean @@ -6,10 +6,7 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Extension -import Init.Grind.Util -import Lean.Util.ForEachExpr import Lean.Meta.Tactic.Grind.Util -import Lean.Meta.Match.Basic import Lean.Meta.Tactic.TryThis import Lean.Meta.Sym.Util public section diff --git a/src/Lean/Meta/Tactic/Grind/EMatchTheoremParam.lean b/src/Lean/Meta/Tactic/Grind/EMatchTheoremParam.lean index 89c2fc9f58..9d8cb54840 100644 --- a/src/Lean/Meta/Tactic/Grind/EMatchTheoremParam.lean +++ b/src/Lean/Meta/Tactic/Grind/EMatchTheoremParam.lean @@ -6,8 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Anchor -public import Lean.Meta.Tactic.Grind.EMatchTheorem -import Lean.Meta.Eqns namespace Lean.Meta.Grind /-- Returns pairs `(type, anchor)` where `type` is the type of a local theorem, diff --git a/src/Lean/Meta/Tactic/Grind/Extension.lean b/src/Lean/Meta/Tactic/Grind/Extension.lean index d4101398b8..ec1142df21 100644 --- a/src/Lean/Meta/Tactic/Grind/Extension.lean +++ b/src/Lean/Meta/Tactic/Grind/Extension.lean @@ -5,8 +5,6 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Expr -public import Lean.Data.PersistentHashMap public import Lean.Meta.Tactic.Grind.Theorems public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/Finish.lean b/src/Lean/Meta/Tactic/Grind/Finish.lean index ede4a7c049..6bae01e1c2 100644 --- a/src/Lean/Meta/Tactic/Grind/Finish.lean +++ b/src/Lean/Meta/Tactic/Grind/Finish.lean @@ -8,7 +8,6 @@ prelude public import Lean.Meta.Tactic.Grind.Action import Lean.Meta.Tactic.Grind.EMatchAction import Lean.Meta.Tactic.Grind.Split -import Lean.Meta.Tactic.Grind.Intro namespace Lean.Meta.Grind.Action public abbrev maxIterationsDefault := 10000 -- **TODO**: Add option diff --git a/src/Lean/Meta/Tactic/Grind/ForallProp.lean b/src/Lean/Meta/Tactic/Grind/ForallProp.lean index 666d86a0e5..8ca3677a4f 100644 --- a/src/Lean/Meta/Tactic/Grind/ForallProp.lean +++ b/src/Lean/Meta/Tactic/Grind/ForallProp.lean @@ -5,17 +5,15 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Tactic.Grind.Types public import Init.Grind.Propagator import Init.Simproc import Init.Grind.Norm -import Lean.Meta.Tactic.Grind.PropagatorAttr -import Lean.Meta.Tactic.Grind.Propagate import Lean.Meta.Tactic.Grind.Internalize -import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Anchor import Lean.Meta.Tactic.Grind.EqResolution import Lean.Meta.Tactic.Grind.SynthInstance +public import Lean.Meta.Tactic.Grind.PropagatorAttr +import Init.Grind.Lemmas public section namespace Lean.Meta.Grind /-- diff --git a/src/Lean/Meta/Tactic/Grind/Injective.lean b/src/Lean/Meta/Tactic/Grind/Injective.lean index 1772bce4cd..b4440309bb 100644 --- a/src/Lean/Meta/Tactic/Grind/Injective.lean +++ b/src/Lean/Meta/Tactic/Grind/Injective.lean @@ -6,7 +6,8 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.EMatchTheorem -import Lean.Meta.FunInfo +import Init.Data.Function +import Init.Data.Range.Polymorphic.Iterators public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/Internalize.lean b/src/Lean/Meta/Tactic/Grind/Internalize.lean index eea50e3174..4f6a6ff663 100644 --- a/src/Lean/Meta/Tactic/Grind/Internalize.lean +++ b/src/Lean/Meta/Tactic/Grind/Internalize.lean @@ -6,17 +6,15 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Types -import Lean.Meta.Tactic.Grind.Arith.Cutsat.Types import Lean.Meta.Tactic.Grind.Arith.IsRelevant -import Lean.Meta.Match.MatchEqsExt import Lean.Meta.Tactic.Grind.Util import Lean.Meta.Tactic.Grind.Beta import Lean.Meta.Tactic.Grind.MatchCond import Lean.Meta.Tactic.Grind.Simp -import Lean.Meta.Tactic.Grind.Proof import Lean.Meta.Tactic.Grind.MarkNestedSubsingletons import Lean.Meta.Tactic.Grind.PropagateInj import Lean.Util.CollectLevelParams +import Init.Grind.Util public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/Intro.lean b/src/Lean/Meta/Tactic/Grind/Intro.lean index 5c29fe2a5b..27e2d7ceb7 100644 --- a/src/Lean/Meta/Tactic/Grind/Intro.lean +++ b/src/Lean/Meta/Tactic/Grind/Intro.lean @@ -8,12 +8,12 @@ prelude public import Init.Grind.Lemmas public import Lean.Meta.Tactic.Grind.Action import Lean.Meta.Tactic.Apply -import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Util import Lean.Meta.Tactic.Grind.CasesMatch import Lean.Meta.Tactic.Grind.Injection import Lean.Meta.Tactic.Grind.Core import Lean.Meta.Tactic.Grind.RevertAll +import Init.Grind.Util public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/Inv.lean b/src/Lean/Meta/Tactic/Grind/Inv.lean index 21754365b9..539924e850 100644 --- a/src/Lean/Meta/Tactic/Grind/Inv.lean +++ b/src/Lean/Meta/Tactic/Grind/Inv.lean @@ -7,8 +7,6 @@ module prelude public import Lean.Meta.Tactic.Grind.Types import Init.Grind.Util -import Lean.Meta.Tactic.Grind.Proof -import Lean.Meta.Tactic.Grind.MatchCond import Lean.Meta.Tactic.Grind.Util namespace Lean.Meta.Grind /-! diff --git a/src/Lean/Meta/Tactic/Grind/Lookahead.lean b/src/Lean/Meta/Tactic/Grind/Lookahead.lean index 11302108c6..9a059aa863 100644 --- a/src/Lean/Meta/Tactic/Grind/Lookahead.lean +++ b/src/Lean/Meta/Tactic/Grind/Lookahead.lean @@ -6,10 +6,7 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Types -import Lean.Meta.Tactic.Grind.Intro -import Lean.Meta.Tactic.Grind.Action import Lean.Meta.Tactic.Grind.Split -import Lean.Meta.Tactic.Grind.EMatch import Lean.Meta.Tactic.Grind.EMatchAction public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/Main.lean b/src/Lean/Meta/Tactic/Grind/Main.lean index e9ae5f73c9..00d3f532a4 100644 --- a/src/Lean/Meta/Tactic/Grind/Main.lean +++ b/src/Lean/Meta/Tactic/Grind/Main.lean @@ -12,22 +12,17 @@ import Lean.PrettyPrinter import Lean.Meta.Tactic.ExposeNames import Lean.Meta.Tactic.Simp.Diagnostics import Lean.Meta.Tactic.Simp.Rewrite -import Lean.Meta.Tactic.Grind.Split import Lean.Meta.Tactic.Grind.RevertAll -import Lean.Meta.Tactic.Grind.PropagatorAttr import Lean.Meta.Tactic.Grind.Proj import Lean.Meta.Tactic.Grind.ForallProp import Lean.Meta.Tactic.Grind.CtorIdx -import Lean.Meta.Tactic.Grind.Inv import Lean.Meta.Tactic.Grind.Intro -import Lean.Meta.Tactic.Grind.EMatch import Lean.Meta.Tactic.Grind.Solve import Lean.Meta.Tactic.Grind.Internalize import Lean.Meta.Tactic.Grind.SimpUtil import Lean.Meta.Tactic.Grind.LawfulEqCmp import Lean.Meta.Tactic.Grind.ReflCmp import Lean.Meta.Tactic.Grind.PP -import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Core public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/MarkNestedSubsingletons.lean b/src/Lean/Meta/Tactic/Grind/MarkNestedSubsingletons.lean index 7b43fb6a47..b2b4d32341 100644 --- a/src/Lean/Meta/Tactic/Grind/MarkNestedSubsingletons.lean +++ b/src/Lean/Meta/Tactic/Grind/MarkNestedSubsingletons.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Meta.Tactic.Grind.Types import Init.Grind.Util -import Lean.Meta.Sym.ExprPtr import Lean.Meta.Sym.Util import Lean.Meta.Tactic.Grind.Util public section diff --git a/src/Lean/Meta/Tactic/Grind/MatchCond.lean b/src/Lean/Meta/Tactic/Grind/MatchCond.lean index 8c19034973..e2b463a56b 100644 --- a/src/Lean/Meta/Tactic/Grind/MatchCond.lean +++ b/src/Lean/Meta/Tactic/Grind/MatchCond.lean @@ -5,12 +5,10 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Tactic.Grind.Types import Init.Grind -import Init.Simproc import Lean.Meta.Tactic.Contradiction import Lean.Meta.Tactic.Grind.ProveEq -import Lean.Meta.Tactic.Grind.PropagatorAttr +public import Lean.Meta.Tactic.Grind.PropagatorAttr public section namespace Lean.Meta.Grind /- diff --git a/src/Lean/Meta/Tactic/Grind/Order/Types.lean b/src/Lean/Meta/Tactic/Grind/Order/Types.lean index 5608094943..9a28bf13c9 100644 --- a/src/Lean/Meta/Tactic/Grind/Order/Types.lean +++ b/src/Lean/Meta/Tactic/Grind/Order/Types.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Types -public import Init.Data.Rat.Basic public section namespace Lean.Meta.Grind.Order diff --git a/src/Lean/Meta/Tactic/Grind/PP.lean b/src/Lean/Meta/Tactic/Grind/PP.lean index 1907c5065c..095c506987 100644 --- a/src/Lean/Meta/Tactic/Grind/PP.lean +++ b/src/Lean/Meta/Tactic/Grind/PP.lean @@ -9,12 +9,11 @@ public import Lean.Meta.Tactic.Grind.Types import Init.Grind.Util import Init.Grind.Injective import Init.Grind.PP -import Lean.Meta.Tactic.Grind.Arith.Model import Lean.Meta.Tactic.Grind.Arith.CommRing.PP import Lean.Meta.Tactic.Grind.Arith.Linear.PP import Lean.Meta.Tactic.Grind.AC.PP import Lean.Meta.Tactic.Grind.CastLike -import Lean.PrettyPrinter +import Lean.Meta.Tactic.Grind.Arith.Cutsat.Model public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/Proj.lean b/src/Lean/Meta/Tactic/Grind/Proj.lean index c07427238a..a82f851707 100644 --- a/src/Lean/Meta/Tactic/Grind/Proj.lean +++ b/src/Lean/Meta/Tactic/Grind/Proj.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Types -import Lean.Meta.Tactic.Grind.Internalize public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/Proof.lean b/src/Lean/Meta/Tactic/Grind/Proof.lean index 39b142155f..a3f4af97f7 100644 --- a/src/Lean/Meta/Tactic/Grind/Proof.lean +++ b/src/Lean/Meta/Tactic/Grind/Proof.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Tactic.Grind.Types import Init.Grind.Lemmas +import Init.Grind.Util public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/Propagate.lean b/src/Lean/Meta/Tactic/Grind/Propagate.lean index b252bed48e..0b273a1cb0 100644 --- a/src/Lean/Meta/Tactic/Grind/Propagate.lean +++ b/src/Lean/Meta/Tactic/Grind/Propagate.lean @@ -5,12 +5,11 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Tactic.Grind.Types import Init.Grind -import Lean.Meta.Tactic.Grind.PropagatorAttr import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.Ext import Lean.Meta.Tactic.Grind.Diseq +public import Lean.Meta.Tactic.Grind.PropagatorAttr public section namespace Lean.Meta.Grind /-- diff --git a/src/Lean/Meta/Tactic/Grind/PropagatorAttr.lean b/src/Lean/Meta/Tactic/Grind/PropagatorAttr.lean index be03852578..77e0ab069b 100644 --- a/src/Lean/Meta/Tactic/Grind/PropagatorAttr.lean +++ b/src/Lean/Meta/Tactic/Grind/PropagatorAttr.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Proof -import Lean.Compiler.InitAttr import Init.Grind public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/RegisterCommand.lean b/src/Lean/Meta/Tactic/Grind/RegisterCommand.lean index 2f5dfc6ea9..fb9f901823 100644 --- a/src/Lean/Meta/Tactic/Grind/RegisterCommand.lean +++ b/src/Lean/Meta/Tactic/Grind/RegisterCommand.lean @@ -6,7 +6,7 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Types -meta import Lean.Meta.Tactic.Grind.Attr +public meta import Init.Data.ToString.Name public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/RevertAll.lean b/src/Lean/Meta/Tactic/Grind/RevertAll.lean index e91cc6154d..553f8302d7 100644 --- a/src/Lean/Meta/Tactic/Grind/RevertAll.lean +++ b/src/Lean/Meta/Tactic/Grind/RevertAll.lean @@ -6,6 +6,7 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Revert +import Init.Data.Range.Polymorphic.Iterators public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/SimpUtil.lean b/src/Lean/Meta/Tactic/Grind/SimpUtil.lean index 654a9e0890..7dd198d62c 100644 --- a/src/Lean/Meta/Tactic/Grind/SimpUtil.lean +++ b/src/Lean/Meta/Tactic/Grind/SimpUtil.lean @@ -6,9 +6,7 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Simp.Simproc -import Lean.Meta.Tactic.Grind.Simp import Lean.Meta.Tactic.Grind.MatchDiscrOnly -import Lean.Meta.Tactic.Grind.MatchCond import Lean.Meta.Tactic.Grind.ForallProp import Lean.Meta.Tactic.Grind.Arith.Simproc import Lean.Meta.Tactic.Simp.BuiltinSimprocs.List @@ -16,6 +14,9 @@ import Lean.Meta.Tactic.Simp.BuiltinSimprocs.Core import Lean.Meta.Tactic.Grind.Util import Lean.Meta.Sym.Util import Init.Grind.Norm +public import Init.Grind.Config +import Init.ByCases +import Lean.Meta.Tactic.Simp.Main public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/Split.lean b/src/Lean/Meta/Tactic/Grind/Split.lean index 6441916af9..b7651d19b7 100644 --- a/src/Lean/Meta/Tactic/Grind/Split.lean +++ b/src/Lean/Meta/Tactic/Grind/Split.lean @@ -11,6 +11,9 @@ import Lean.Meta.Tactic.Grind.Intro import Lean.Meta.Tactic.Grind.Util import Lean.Meta.Tactic.Grind.CasesMatch import Lean.Meta.Tactic.Grind.Internalize +import Init.Data.List.MapIdx +import Init.Grind.Util +import Init.Omega public section namespace Lean.Meta.Grind diff --git a/src/Lean/Meta/Tactic/Grind/SynthInstance.lean b/src/Lean/Meta/Tactic/Grind/SynthInstance.lean index 0673079f2e..6174eeb4ce 100644 --- a/src/Lean/Meta/Tactic/Grind/SynthInstance.lean +++ b/src/Lean/Meta/Tactic/Grind/SynthInstance.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Tactic.Grind.Types -import Lean.Meta.SynthInstance public section namespace Lean.Meta.Grind /-- diff --git a/src/Lean/Meta/Tactic/Grind/Theorems.lean b/src/Lean/Meta/Tactic/Grind/Theorems.lean index 3b0ed3b8ad..7bbd56c0ce 100644 --- a/src/Lean/Meta/Tactic/Grind/Theorems.lean +++ b/src/Lean/Meta/Tactic/Grind/Theorems.lean @@ -8,6 +8,7 @@ prelude public import Lean.HeadIndex public import Lean.Meta.Basic import Lean.Meta.Eqns +import Init.Data.Range.Polymorphic.Iterators public section namespace Lean.Meta.Grind /-! diff --git a/src/Lean/Meta/Tactic/Grind/Types.lean b/src/Lean/Meta/Tactic/Grind/Types.lean index 0a8b1e9e4b..ef858b0f7d 100644 --- a/src/Lean/Meta/Tactic/Grind/Types.lean +++ b/src/Lean/Meta/Tactic/Grind/Types.lean @@ -6,17 +6,16 @@ Authors: Leonardo de Moura module prelude public import Lean.Meta.Sym.SymM -public import Lean.Meta.Tactic.Simp.Types public import Lean.Meta.Tactic.Grind.Attr public import Lean.Meta.Tactic.Grind.CheckResult -public import Lean.Meta.Tactic.Grind.Extension public import Init.Data.Queue -import Lean.HeadIndex -import Lean.Meta.Tactic.Grind.ExtAttr import Lean.Meta.AbstractNestedProofs import Lean.Meta.Match.MatchEqsExt -import Lean.PrettyPrinter -meta import Lean.Parser.Do +public import Init.Grind.Config +import Init.Data.Nat.Linear +meta import Init.Data.String.Basic +import Init.Omega +import Lean.Util.ShareCommon public section namespace Lean.Meta.Grind export Sym (isSameExpr hashPtrExpr ExprPtr shareCommon shareCommonInc) diff --git a/src/Lean/Meta/Tactic/Grind/Util.lean b/src/Lean/Meta/Tactic/Grind/Util.lean index 51eb0e2d28..8819f002ef 100644 --- a/src/Lean/Meta/Tactic/Grind/Util.lean +++ b/src/Lean/Meta/Tactic/Grind/Util.lean @@ -7,11 +7,11 @@ module prelude public import Lean.Meta.Tactic.Simp.Simproc import Init.Simproc -import Lean.ProjFns -import Lean.Meta.WHNF -import Lean.Meta.AbstractNestedProofs import Lean.Meta.Tactic.Clear import Lean.Meta.Sym.Util +public import Init.Grind.Config +import Init.Grind.Util +import Lean.Structure public section namespace Lean.Meta.Grind /-- diff --git a/src/Lean/Meta/Tactic/Induction.lean b/src/Lean/Meta/Tactic/Induction.lean index ddb1de7a91..285ee1f487 100644 --- a/src/Lean/Meta/Tactic/Induction.lean +++ b/src/Lean/Meta/Tactic/Induction.lean @@ -11,6 +11,7 @@ public import Lean.Meta.Tactic.Revert public import Lean.Meta.Tactic.Intro public import Lean.Meta.Tactic.FVarSubst import Lean.Meta.WHNF +import Init.Omega public section namespace Lean.Meta diff --git a/src/Lean/Meta/Tactic/LibrarySearch.lean b/src/Lean/Meta/Tactic/LibrarySearch.lean index 05c4a0b5a8..9bce5badd5 100644 --- a/src/Lean/Meta/Tactic/LibrarySearch.lean +++ b/src/Lean/Meta/Tactic/LibrarySearch.lean @@ -13,7 +13,7 @@ public import Lean.Util.Heartbeats import Init.Grind.Util import Init.Try import Lean.Elab.Tactic.Basic -import Lean.Linter.Deprecated +import Init.Omega public section diff --git a/src/Lean/Meta/Tactic/Repeat.lean b/src/Lean/Meta/Tactic/Repeat.lean index 444145a2c1..b80e29403e 100644 --- a/src/Lean/Meta/Tactic/Repeat.lean +++ b/src/Lean/Meta/Tactic/Repeat.lean @@ -7,6 +7,8 @@ module prelude public import Lean.Meta.Basic +import Init.Data.Nat.Linear +import Init.Omega public section diff --git a/src/Lean/Meta/Tactic/Rewrites.lean b/src/Lean/Meta/Tactic/Rewrites.lean index 7822facacb..895b8e5969 100644 --- a/src/Lean/Meta/Tactic/Rewrites.lean +++ b/src/Lean/Meta/Tactic/Rewrites.lean @@ -7,13 +7,11 @@ module prelude public import Lean.Meta.LazyDiscrTree -public import Lean.Meta.Tactic.Assumption public import Lean.Meta.Tactic.Rewrite public import Lean.Meta.Tactic.Refl public import Lean.Meta.Tactic.SolveByElim public import Lean.Meta.Tactic.TryThis public import Lean.Util.Heartbeats -import Lean.Linter.Deprecated public section diff --git a/src/Lean/Meta/Tactic/Simp/Arith/Nat/Basic.lean b/src/Lean/Meta/Tactic/Simp/Arith/Nat/Basic.lean index 8c099b9b0d..af8bbb5f52 100644 --- a/src/Lean/Meta/Tactic/Simp/Arith/Nat/Basic.lean +++ b/src/Lean/Meta/Tactic/Simp/Arith/Nat/Basic.lean @@ -8,9 +8,9 @@ prelude public import Lean.Util.SortExprs public import Lean.Meta.KExprMap import Lean.Data.RArray -import Lean.Meta.AppBuilder import Lean.Meta.NatInstTesters import Lean.Meta.Offset +public import Init.Data.Nat.Linear public section namespace Nat.Linear diff --git a/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/BitVec.lean b/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/BitVec.lean index 04b40a9747..efd9994f99 100644 --- a/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/BitVec.lean +++ b/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/BitVec.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Tactic.Simp.BuiltinSimprocs.Int +import Init.Data.BitVec.Lemmas public section diff --git a/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/Fin.lean b/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/Fin.lean index 15cdb7bf9c..86b575eb2f 100644 --- a/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/Fin.lean +++ b/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/Fin.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Tactic.Simp.BuiltinSimprocs.Nat +import Init.Omega public section diff --git a/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/Int.lean b/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/Int.lean index 14b4fa0c1e..4f1f0563ad 100644 --- a/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/Int.lean +++ b/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/Int.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Tactic.Simp.BuiltinSimprocs.Nat import Lean.Util.SafeExponentiation +import Init.Data.Int.DivMod public section namespace Int open Lean Meta Simp diff --git a/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/Nat.lean b/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/Nat.lean index c5fc8d1af3..cfb909e866 100644 --- a/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/Nat.lean +++ b/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/Nat.lean @@ -10,6 +10,8 @@ public import Lean.Meta.Tactic.Simp.BuiltinSimprocs.Util public import Lean.Meta.LitValues public import Lean.Meta.Offset import Lean.Util.SafeExponentiation +import Init.Data.Nat.Dvd +import Init.Data.Nat.Simproc public section namespace Nat open Lean Meta Simp diff --git a/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/SInt.lean b/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/SInt.lean index 4514ffcff6..3d8a5b0bf0 100644 --- a/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/SInt.lean +++ b/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/SInt.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Tactic.Simp.BuiltinSimprocs.Int +import Init.Data.SInt.Lemmas public section diff --git a/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/UInt.lean b/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/UInt.lean index aeaeb45afa..0468873d89 100644 --- a/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/UInt.lean +++ b/src/Lean/Meta/Tactic/Simp/BuiltinSimprocs/UInt.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Tactic.Simp.BuiltinSimprocs.Nat +import Init.Data.UInt.Lemmas public section diff --git a/src/Lean/Meta/Tactic/Simp/RegisterCommand.lean b/src/Lean/Meta/Tactic/Simp/RegisterCommand.lean index 3b4569c3c6..da8139e3c7 100644 --- a/src/Lean/Meta/Tactic/Simp/RegisterCommand.lean +++ b/src/Lean/Meta/Tactic/Simp/RegisterCommand.lean @@ -6,8 +6,8 @@ Authors: Leonardo de Moura module prelude -public import Lean.Meta.Tactic.Simp.Simproc -meta import Lean.Meta.Tactic.Simp.Attr +public import Lean.Meta.Tactic.Simp.Attr -- shake: keep (macro output dependency) +public meta import Lean.Meta.Tactic.Simp.Simproc public section diff --git a/src/Lean/Meta/Tactic/Simp/Rewrite.lean b/src/Lean/Meta/Tactic/Simp/Rewrite.lean index e490f99a70..dea3c15cfb 100644 --- a/src/Lean/Meta/Tactic/Simp/Rewrite.lean +++ b/src/Lean/Meta/Tactic/Simp/Rewrite.lean @@ -11,7 +11,6 @@ public import Lean.Meta.Tactic.UnifyEq public import Lean.Meta.Tactic.Simp.Arith public import Lean.Meta.Tactic.Simp.Attr public import Lean.Meta.BinderNameHint -import Lean.Meta.FunInfo import Lean.Meta.WHNF public section namespace Lean.Meta.Simp diff --git a/src/Lean/Meta/Tactic/Simp/SimpTheorems.lean b/src/Lean/Meta/Tactic/Simp/SimpTheorems.lean index 1ce1ea09c0..6c7099cd7c 100644 --- a/src/Lean/Meta/Tactic/Simp/SimpTheorems.lean +++ b/src/Lean/Meta/Tactic/Simp/SimpTheorems.lean @@ -8,11 +8,10 @@ prelude public import Lean.Meta.DiscrTree.Main public import Lean.Meta.Tactic.AuxLemma public import Lean.DocString -import Lean.ExtraModUses -import Lean.ProjFns import Lean.Meta.AppBuilder import Lean.Meta.Eqns import Lean.Meta.WHNF +public import Init.Data.Format.Macro public section /-! diff --git a/src/Lean/Meta/Tactic/Simp/Types.lean b/src/Lean/Meta/Tactic/Simp/Types.lean index 0877f9e136..e277d665ac 100644 --- a/src/Lean/Meta/Tactic/Simp/Types.lean +++ b/src/Lean/Meta/Tactic/Simp/Types.lean @@ -11,7 +11,7 @@ public import Lean.Meta.Eqns public import Lean.Meta.Tactic.Simp.SimpTheorems public import Lean.Meta.Tactic.Simp.SimpCongrTheorems import Lean.Meta.Tactic.Replace -import Lean.Meta.FunInfo +import Init.Data.Nat.Linear public section namespace Lean.Meta namespace Simp diff --git a/src/Lean/Meta/Tactic/SplitIf.lean b/src/Lean/Meta/Tactic/SplitIf.lean index 7232656320..2c7cfa824d 100644 --- a/src/Lean/Meta/Tactic/SplitIf.lean +++ b/src/Lean/Meta/Tactic/SplitIf.lean @@ -8,7 +8,6 @@ prelude public import Lean.Meta.Tactic.Cases public import Lean.Meta.Tactic.Simp.Rewrite import Lean.Meta.Tactic.Simp.Main -import Lean.Meta.FunInfo public section namespace Lean.Meta diff --git a/src/Lean/Meta/Tactic/Try/Collect.lean b/src/Lean/Meta/Tactic/Try/Collect.lean index 6aecbac7f0..83232bc0b5 100644 --- a/src/Lean/Meta/Tactic/Try/Collect.lean +++ b/src/Lean/Meta/Tactic/Try/Collect.lean @@ -8,7 +8,6 @@ prelude public import Init.Try public import Lean.Meta.Tactic.LibrarySearch public import Lean.Meta.Tactic.FunIndCollect -import Lean.Meta.Eqns public section namespace Lean.Meta.Try.Collector diff --git a/src/Lean/Meta/Tactic/TryThis.lean b/src/Lean/Meta/Tactic/TryThis.lean index b514ffe032..b2a1dedbdb 100644 --- a/src/Lean/Meta/Tactic/TryThis.lean +++ b/src/Lean/Meta/Tactic/TryThis.lean @@ -6,12 +6,9 @@ Authors: Gabriel Ebner, Mario Carneiro, Thomas Murrills module prelude -public import Lean.Elab.Tactic.Basic import Lean.Server.CodeActions -import Lean.Widget.UserWidget import Lean.Meta.Tactic.ExposeNames -meta import Lean.Meta.Hint -public import Lean.Meta.Hint +public import Lean.Widget.UserWidget public section diff --git a/src/Lean/Meta/Tactic/UnifyEq.lean b/src/Lean/Meta/Tactic/UnifyEq.lean index e830132513..283f29799e 100644 --- a/src/Lean/Meta/Tactic/UnifyEq.lean +++ b/src/Lean/Meta/Tactic/UnifyEq.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Tactic.Injection +import Init.Data.Nat.Linear public section diff --git a/src/Lean/Meta/Transform.lean b/src/Lean/Meta/Transform.lean index 13cb5d33a9..2723651acf 100644 --- a/src/Lean/Meta/Transform.lean +++ b/src/Lean/Meta/Transform.lean @@ -5,8 +5,8 @@ Authors: Leonardo de Moura -/ module prelude -public import Lean.Meta.Basic public import Lean.Meta.FunInfo +import Init.Data.Range.Polymorphic.Iterators public section namespace Lean diff --git a/src/Lean/Meta/TransparencyMode.lean b/src/Lean/Meta/TransparencyMode.lean index 420ecb9ee1..8f2ca2ff58 100644 --- a/src/Lean/Meta/TransparencyMode.lean +++ b/src/Lean/Meta/TransparencyMode.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.UInt.Basic +public import Init.MetaTypes public section namespace Lean.Meta diff --git a/src/Lean/Meta/WHNF.lean b/src/Lean/Meta/WHNF.lean index 08561363d7..26fe0a789c 100644 --- a/src/Lean/Meta/WHNF.lean +++ b/src/Lean/Meta/WHNF.lean @@ -10,11 +10,11 @@ public import Lean.Structure public import Lean.Util.Recognizers public import Lean.Util.SafeExponentiation public import Lean.Meta.GetUnfoldableConst -public import Lean.Meta.FunInfo public import Lean.Meta.CtorRecognizer public import Lean.Meta.Match.MatcherInfo public import Lean.Meta.Match.MatchPatternAttr public import Lean.Meta.Transform +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/MetavarContext.lean b/src/Lean/MetavarContext.lean index cc600d2480..bff82ec59d 100644 --- a/src/Lean/MetavarContext.lean +++ b/src/Lean/MetavarContext.lean @@ -10,6 +10,8 @@ public import Init.ShareCommon public import Lean.Util.MonadCache public import Lean.LocalContext import Init.Data.Slice +import Init.Data.ToString.Macro +import Init.Omega public section diff --git a/src/Lean/Parser/Command.lean b/src/Lean/Parser/Command.lean index e7ca5cd63d..a3eb4de825 100644 --- a/src/Lean/Parser/Command.lean +++ b/src/Lean/Parser/Command.lean @@ -8,7 +8,6 @@ module prelude public import Lean.Parser.Do import Lean.DocString.Parser -meta import Lean.Parser.Basic public section diff --git a/src/Lean/Parser/Extra.lean b/src/Lean/Parser/Extra.lean index adaa8d9319..c97b763f72 100644 --- a/src/Lean/Parser/Extra.lean +++ b/src/Lean/Parser/Extra.lean @@ -8,11 +8,11 @@ module prelude public import Lean.PrettyPrinter.Formatter public import Lean.PrettyPrinter.Parenthesizer -meta import Lean.Hygiene -- for `run_builtin_parser_attribute_hooks` import all Lean.Parser.Types import all Lean.Parser.Basic import all Lean.Parser.Extension +public meta import Lean.Hygiene public section diff --git a/src/Lean/Parser/Module.lean b/src/Lean/Parser/Module.lean index b762ff6e78..c5492738ea 100644 --- a/src/Lean/Parser/Module.lean +++ b/src/Lean/Parser/Module.lean @@ -7,7 +7,7 @@ module prelude public import Lean.Parser.Command -meta import Lean.Parser.Extra +import Init.While public section diff --git a/src/Lean/Parser/Term.lean b/src/Lean/Parser/Term.lean index 5c3d8e1b70..98b9648f18 100644 --- a/src/Lean/Parser/Term.lean +++ b/src/Lean/Parser/Term.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Parser.Term.Basic -meta import Lean.Parser.Term.Basic public import Lean.Parser.Term.Doc import Lean.DocString.Parser public import Lean.DocString.Formatter diff --git a/src/Lean/Parser/Term/Basic.lean b/src/Lean/Parser/Term/Basic.lean index 125cb9fca9..3123a3f923 100644 --- a/src/Lean/Parser/Term/Basic.lean +++ b/src/Lean/Parser/Term/Basic.lean @@ -9,7 +9,6 @@ prelude public import Lean.Parser.Attr public import Lean.Parser.Level public import Lean.Parser.Term.Doc -meta import Lean.Parser.Basic /-! This module contains the bare minimum of term syntax that's required to get documentation syntax to diff --git a/src/Lean/Parser/Term/Doc.lean b/src/Lean/Parser/Term/Doc.lean index 3461ebb902..89488ad7b5 100644 --- a/src/Lean/Parser/Term/Doc.lean +++ b/src/Lean/Parser/Term/Doc.lean @@ -7,7 +7,6 @@ module prelude public import Lean.Parser.Extension -import Init.Data.String.Search public section diff --git a/src/Lean/ParserCompiler.lean b/src/Lean/ParserCompiler.lean index 360c598846..01f647bedb 100644 --- a/src/Lean/ParserCompiler.lean +++ b/src/Lean/ParserCompiler.lean @@ -11,6 +11,7 @@ public import Lean.Meta.WHNF public import Lean.KeyedDeclsAttribute public import Lean.ParserCompiler.Attribute public import Lean.Parser.Extension +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/PrettyPrinter.lean b/src/Lean/PrettyPrinter.lean index da0b7e4ab9..eae0232f38 100644 --- a/src/Lean/PrettyPrinter.lean +++ b/src/Lean/PrettyPrinter.lean @@ -8,8 +8,6 @@ module prelude public import Lean.PrettyPrinter.Delaborator.Basic import Lean.PrettyPrinter.Delaborator -import Lean.PrettyPrinter.Parenthesizer -import Lean.PrettyPrinter.Formatter public import Lean.Parser.Module public import Lean.ParserCompiler public import Lean.Util.NumObjs diff --git a/src/Lean/PrettyPrinter/Delaborator/Basic.lean b/src/Lean/PrettyPrinter/Delaborator/Basic.lean index ea6d342f8f..afc303d881 100644 --- a/src/Lean/PrettyPrinter/Delaborator/Basic.lean +++ b/src/Lean/PrettyPrinter/Delaborator/Basic.lean @@ -9,8 +9,8 @@ prelude public import Lean.KeyedDeclsAttribute public import Lean.PrettyPrinter.Delaborator.TopDownAnalyze import Lean.Elab.InfoTree.Main -meta import Init.Data.ToString.Name import Lean.ExtraModUses +public meta import Init.Data.ToString.Name public section diff --git a/src/Lean/PrettyPrinter/Delaborator/Builtins.lean b/src/Lean/PrettyPrinter/Delaborator/Builtins.lean index 3457a9baf8..d4b8e8bcaa 100644 --- a/src/Lean/PrettyPrinter/Delaborator/Builtins.lean +++ b/src/Lean/PrettyPrinter/Delaborator/Builtins.lean @@ -10,7 +10,9 @@ public import Lean.PrettyPrinter.Delaborator.Basic public import Lean.Meta.CoeAttr public import Lean.Meta.Structure import Lean.Parser.Command -meta import Lean.Parser.Command +public import Lean.PrettyPrinter.Formatter +public import Lean.PrettyPrinter.Parenthesizer +meta import Lean.Parser.Do public section diff --git a/src/Lean/PrettyPrinter/Delaborator/FieldNotation.lean b/src/Lean/PrettyPrinter/Delaborator/FieldNotation.lean index 7b09dcd8e1..f0167df68d 100644 --- a/src/Lean/PrettyPrinter/Delaborator/FieldNotation.lean +++ b/src/Lean/PrettyPrinter/Delaborator/FieldNotation.lean @@ -9,6 +9,7 @@ prelude public import Lean.Meta.WHNF public import Lean.PrettyPrinter.Delaborator.Attributes public import Lean.PrettyPrinter.Delaborator.Options +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/ReducibilityAttrs.lean b/src/Lean/ReducibilityAttrs.lean index db6cf887b7..c1288148a5 100644 --- a/src/Lean/ReducibilityAttrs.lean +++ b/src/Lean/ReducibilityAttrs.lean @@ -6,7 +6,6 @@ Authors: Leonardo de Moura module prelude public import Lean.ScopedEnvExtension -import Lean.OriginalConstKind public section namespace Lean diff --git a/src/Lean/Server/Completion/CompletionItemCompression.lean b/src/Lean/Server/Completion/CompletionItemCompression.lean index 75dfb3ca9a..29ca18ac08 100644 --- a/src/Lean/Server/Completion/CompletionItemCompression.lean +++ b/src/Lean/Server/Completion/CompletionItemCompression.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Data.Lsp.LanguageFeatures +import Init.Omega namespace Lean.Lsp.ResolvableCompletionList diff --git a/src/Lean/Server/Completion/SyntheticCompletion.lean b/src/Lean/Server/Completion/SyntheticCompletion.lean index d34262b290..cf2b962095 100644 --- a/src/Lean/Server/Completion/SyntheticCompletion.lean +++ b/src/Lean/Server/Completion/SyntheticCompletion.lean @@ -8,7 +8,6 @@ module prelude public import Lean.Server.InfoUtils public import Lean.Server.Completion.CompletionUtils -meta import Lean.Parser.Term public section diff --git a/src/Lean/Server/FileWorker/RequestHandling.lean b/src/Lean/Server/FileWorker/RequestHandling.lean index 2270b825d8..a51b43e189 100644 --- a/src/Lean/Server/FileWorker/RequestHandling.lean +++ b/src/Lean/Server/FileWorker/RequestHandling.lean @@ -14,7 +14,6 @@ public import Lean.Server.FileWorker.SignatureHelp public import Lean.Server.Completion public import Lean.Server.References public import Lean.Server.Completion.CompletionItemCompression -meta import Lean.Parser.Module public import Lean.Widget.Diff diff --git a/src/Lean/Server/FileWorker/SemanticHighlighting.lean b/src/Lean/Server/FileWorker/SemanticHighlighting.lean index 597847502c..90eb9824a4 100644 --- a/src/Lean/Server/FileWorker/SemanticHighlighting.lean +++ b/src/Lean/Server/FileWorker/SemanticHighlighting.lean @@ -7,8 +7,6 @@ module prelude public import Lean.Server.Requests -import Lean.DocString.Syntax -import Init.Data.List.Sort public section diff --git a/src/Lean/Server/FileWorker/SignatureHelp.lean b/src/Lean/Server/FileWorker/SignatureHelp.lean index edb261315e..9fac5c6ba9 100644 --- a/src/Lean/Server/FileWorker/SignatureHelp.lean +++ b/src/Lean/Server/FileWorker/SignatureHelp.lean @@ -10,7 +10,6 @@ public import Lean.Server.InfoUtils public import Lean.Data.Lsp public import Init.Data.List.Sort.Basic import Lean.PrettyPrinter.Delaborator -meta import Lean.Parser.Term public section diff --git a/src/Lean/Server/FileWorker/Utils.lean b/src/Lean/Server/FileWorker/Utils.lean index 7efcd9f539..78a465edd4 100644 --- a/src/Lean/Server/FileWorker/Utils.lean +++ b/src/Lean/Server/FileWorker/Utils.lean @@ -10,7 +10,6 @@ prelude public import Lean.Language.Lean.Types public import Lean.Server.Snapshots public import Lean.Server.AsyncList -import Init.Data.ByteArray.Extra public section diff --git a/src/Lean/Server/FileWorker/WidgetRequests.lean b/src/Lean/Server/FileWorker/WidgetRequests.lean index f68bdcf867..cdcd967833 100644 --- a/src/Lean/Server/FileWorker/WidgetRequests.lean +++ b/src/Lean/Server/FileWorker/WidgetRequests.lean @@ -11,6 +11,7 @@ prelude public import Lean.Server.Rpc.RequestHandling public import Lean.Server.FileWorker.RequestHandling import Lean.PrettyPrinter.Delaborator.Builtins +import Init.Omega public section diff --git a/src/Lean/Server/InfoUtils.lean b/src/Lean/Server/InfoUtils.lean index b45ba908e9..a4b04b2b45 100644 --- a/src/Lean/Server/InfoUtils.lean +++ b/src/Lean/Server/InfoUtils.lean @@ -9,7 +9,6 @@ module prelude public import Lean.DocString public import Lean.PrettyPrinter -meta import Lean.Parser.Term public section diff --git a/src/Lean/Server/Logging.lean b/src/Lean/Server/Logging.lean index 1ee4a5e278..9c320605c5 100644 --- a/src/Lean/Server/Logging.lean +++ b/src/Lean/Server/Logging.lean @@ -7,9 +7,7 @@ Author: Marc Huisinga module prelude -public import Lean.Data.JsonRpc import Std.Time -import Lean.Data.Lsp.Extra public import Lean.Data.Lsp.InitShutdown namespace Lean.Server.Logging diff --git a/src/Lean/Server/RequestCancellation.lean b/src/Lean/Server/RequestCancellation.lean index 8b8a7f0cec..6d500b8aa1 100644 --- a/src/Lean/Server/RequestCancellation.lean +++ b/src/Lean/Server/RequestCancellation.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Server.ServerTask +public import Init.System.Promise public section diff --git a/src/Lean/Server/ServerTask.lean b/src/Lean/Server/ServerTask.lean index d755c14b39..9d01aad95c 100644 --- a/src/Lean/Server/ServerTask.lean +++ b/src/Lean/Server/ServerTask.lean @@ -7,6 +7,7 @@ module prelude public import Init.Task +public import Init.System.IO public section diff --git a/src/Lean/Server/Test/Cancel.lean b/src/Lean/Server/Test/Cancel.lean index d0ff96006e..997f270edf 100644 --- a/src/Lean/Server/Test/Cancel.lean +++ b/src/Lean/Server/Test/Cancel.lean @@ -8,7 +8,7 @@ module prelude public import Lean.Elab.Tactic.Basic -meta import Lean.Elab.Tactic.Basic +public meta import Lean.Elab.Tactic.Basic public section diff --git a/src/Lean/Shell.lean b/src/Lean/Shell.lean index 628cc9634c..ab08059988 100644 --- a/src/Lean/Shell.lean +++ b/src/Lean/Shell.lean @@ -11,6 +11,7 @@ import Lean.Elab.ParseImportsFast import Lean.Server.Watchdog import Lean.Server.FileWorker import Lean.Compiler.IR.EmitC +import Init.System.Platform /- Lean companion to `shell.cpp` -/ diff --git a/src/Lean/Structure.lean b/src/Lean/Structure.lean index 87085d574e..878d16e73f 100644 --- a/src/Lean/Structure.lean +++ b/src/Lean/Structure.lean @@ -10,6 +10,8 @@ module prelude public import Lean.ProjFns public import Lean.Exception +public import Init.While +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/SubExpr.lean b/src/Lean/SubExpr.lean index 1b80a1b03a..f588a626e4 100644 --- a/src/Lean/SubExpr.lean +++ b/src/Lean/SubExpr.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Meta.Basic +public import Init.Data.Format.Macro public section diff --git a/src/Lean/Syntax.lean b/src/Lean/Syntax.lean index d6f3a9e8ec..627090cb9a 100644 --- a/src/Lean/Syntax.lean +++ b/src/Lean/Syntax.lean @@ -10,6 +10,10 @@ public import Init.Data.Slice public import Init.Data.Hashable public import Lean.Data.Format public import Init.Data.Option.Coe +import Init.Data.Range.Polymorphic.Iterators +import Init.Data.ToString.Macro +import Init.Omega +import Init.Syntax public section diff --git a/src/Lean/Util/Diff.lean b/src/Lean/Util/Diff.lean index 19b8d5f4b5..43e0d1db5d 100644 --- a/src/Lean/Util/Diff.lean +++ b/src/Lean/Util/Diff.lean @@ -10,8 +10,13 @@ public import Init.Data.Array.Subarray.Split public import Init.Data.Slice.Array.Iterator public import Init.Data.Range public import Std.Data.HashMap.Basic -import Init.Data.Iterators.Combinators.ULift -- TODO: necessary because of codegen issue public import Init.Data.String.Basic +public import Init.Data.Range.Polymorphic.RangeIterator +public import Init.While +import Init.Data.Range.Polymorphic.Iterators +import Init.Data.Range.Polymorphic.Nat +import Init.Data.ToString.Macro +import Init.Omega public section diff --git a/src/Lean/Util/PPExt.lean b/src/Lean/Util/PPExt.lean index a194e3f7c2..8f82ec335f 100644 --- a/src/Lean/Util/PPExt.lean +++ b/src/Lean/Util/PPExt.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Elab.InfoTree.Types +import Init.Data.Format.Macro public section diff --git a/src/Lean/Util/ParamMinimizer.lean b/src/Lean/Util/ParamMinimizer.lean index b7c954bb59..b22aff0ada 100644 --- a/src/Lean/Util/ParamMinimizer.lean +++ b/src/Lean/Util/ParamMinimizer.lean @@ -5,7 +5,6 @@ Authors: Leonardo de Moura -/ module prelude -public import Init.Data.Array.Basic public import Init.While public import Init.Data.Range.Polymorphic namespace Lean.Util.ParamMinimizer diff --git a/src/Lean/Util/Path.lean b/src/Lean/Util/Path.lean index f4b17e8097..37e175e696 100644 --- a/src/Lean/Util/Path.lean +++ b/src/Lean/Util/Path.lean @@ -14,6 +14,9 @@ prelude public import Init.System.IO import Init.Data.ToString.Name import Init.Data.String.TakeDrop +import Init.Data.List.Monadic +import Init.Data.Option.BasicAux +import Init.Data.ToString.Macro public section diff --git a/src/Lean/Util/Profiler.lean b/src/Lean/Util/Profiler.lean index 999e1b20ef..cd0d7668cd 100644 --- a/src/Lean/Util/Profiler.lean +++ b/src/Lean/Util/Profiler.lean @@ -7,6 +7,7 @@ module prelude public import Lean.Util.Trace +import Init.Data.Range.Polymorphic.Iterators public section diff --git a/src/Lean/Util/Reprove.lean b/src/Lean/Util/Reprove.lean index a6be19b464..a7b3c76f39 100644 --- a/src/Lean/Util/Reprove.lean +++ b/src/Lean/Util/Reprove.lean @@ -7,7 +7,8 @@ module prelude public meta import Lean.Elab.Command -import Lean.Elab.Tactic.Basic +public import Init.Notation +import Lean.Exception /-! # The `reprove` command diff --git a/src/Lean/Util/TestExtern.lean b/src/Lean/Util/TestExtern.lean index 046559fcef..5f7a44e7b4 100644 --- a/src/Lean/Util/TestExtern.lean +++ b/src/Lean/Util/TestExtern.lean @@ -10,6 +10,8 @@ public meta import Lean.Meta.Tactic.Unfold public meta import Lean.Meta.Eval public meta import Lean.Compiler.ImplementedByAttr public meta import Lean.Elab.Command +public import Init.Notation +import Lean.Exception public section diff --git a/src/Lean/Widget/Commands.lean b/src/Lean/Widget/Commands.lean index d132b4c97e..5697e06243 100644 --- a/src/Lean/Widget/Commands.lean +++ b/src/Lean/Widget/Commands.lean @@ -8,6 +8,8 @@ module prelude public meta import Lean.Widget.UserWidget +public import Init.Notation +import Lean.Attributes public section diff --git a/src/Lean/Widget/TaggedText.lean b/src/Lean/Widget/TaggedText.lean index 2c539e50e5..f903b03faa 100644 --- a/src/Lean/Widget/TaggedText.lean +++ b/src/Lean/Widget/TaggedText.lean @@ -8,6 +8,7 @@ module prelude public import Lean.Server.Rpc.Basic +import Init.Data.Array.GetLit public section diff --git a/src/Lean/Widget/UserWidget.lean b/src/Lean/Widget/UserWidget.lean index 55d856e131..6ff6cbe097 100644 --- a/src/Lean/Widget/UserWidget.lean +++ b/src/Lean/Widget/UserWidget.lean @@ -9,7 +9,6 @@ module prelude public import Lean.Elab.Eval public import Lean.Server.Rpc.RequestHandling -meta import Lean.Elab.Command public section diff --git a/src/Std/Data/ByteSlice.lean b/src/Std/Data/ByteSlice.lean index b740e67b03..dcaef215f3 100644 --- a/src/Std/Data/ByteSlice.lean +++ b/src/Std/Data/ByteSlice.lean @@ -10,6 +10,7 @@ public import Init.Data.ByteArray public import Init.Data.Slice.Basic public import Init.Data.Slice.Notation public import Init.Data.Range.Polymorphic.Nat +import Init.Omega /-! This module defines the `ByteSlice` structure. It's a modified version of the `SubArray` code, diff --git a/src/Std/Data/DHashMap/Internal/AssocList/Lemmas.lean b/src/Std/Data/DHashMap/Internal/AssocList/Lemmas.lean index e9c08935cd..9ec1109c75 100644 --- a/src/Std/Data/DHashMap/Internal/AssocList/Lemmas.lean +++ b/src/Std/Data/DHashMap/Internal/AssocList/Lemmas.lean @@ -9,6 +9,8 @@ prelude public import Std.Data.DHashMap.Internal.AssocList.Basic import all Std.Data.DHashMap.Internal.AssocList.Basic public import Std.Data.Internal.List.Associative +import Init.ByCases +import Init.Data.Array.Bootstrap public section diff --git a/src/Std/Data/DHashMap/Internal/Defs.lean b/src/Std/Data/DHashMap/Internal/Defs.lean index c31d0fe686..bcbd862f06 100644 --- a/src/Std/Data/DHashMap/Internal/Defs.lean +++ b/src/Std/Data/DHashMap/Internal/Defs.lean @@ -10,6 +10,8 @@ public import Init.Data.Array.Lemmas public import Std.Data.DHashMap.RawDef public import Std.Data.Internal.List.Defs public import Std.Data.DHashMap.Internal.Index +public import Init.Data.Nat.Power2.Basic +import Init.Omega public section diff --git a/src/Std/Data/DHashMap/Internal/Index.lean b/src/Std/Data/DHashMap/Internal/Index.lean index d492d36a76..9db685587b 100644 --- a/src/Std/Data/DHashMap/Internal/Index.lean +++ b/src/Std/Data/DHashMap/Internal/Index.lean @@ -7,6 +7,8 @@ module prelude public import Init.Data.UInt.Bitwise +import Init.ByCases +import Init.Data.UInt.Lemmas public section diff --git a/src/Std/Data/DHashMap/Internal/Model.lean b/src/Std/Data/DHashMap/Internal/Model.lean index 7ebc9dc29b..9ea6577b8f 100644 --- a/src/Std/Data/DHashMap/Internal/Model.lean +++ b/src/Std/Data/DHashMap/Internal/Model.lean @@ -11,6 +11,8 @@ public import Std.Data.DHashMap.Basic import all Std.Data.DHashMap.Internal.Defs public import Std.Data.DHashMap.Internal.HashesTo public import Std.Data.DHashMap.Internal.AssocList.Lemmas +import Init.Data.Array.Bootstrap +import Init.Data.UInt.Lemmas @[expose] public section diff --git a/src/Std/Data/DHashMap/Internal/RawLemmas.lean b/src/Std/Data/DHashMap/Internal/RawLemmas.lean index 2a9dfb1bca..05f37bc422 100644 --- a/src/Std/Data/DHashMap/Internal/RawLemmas.lean +++ b/src/Std/Data/DHashMap/Internal/RawLemmas.lean @@ -12,7 +12,7 @@ public import Std.Data.DHashMap.Internal.WF import all Std.Data.DHashMap.Raw import all Std.Data.DHashMap.Basic import all Std.Data.DHashMap.RawDef -meta import Std.Data.DHashMap.Basic +public meta import Std.Data.DHashMap.Basic public section diff --git a/src/Std/Data/DHashMap/Internal/WF.lean b/src/Std/Data/DHashMap/Internal/WF.lean index f80d5659f8..b62c66248c 100644 --- a/src/Std/Data/DHashMap/Internal/WF.lean +++ b/src/Std/Data/DHashMap/Internal/WF.lean @@ -12,6 +12,9 @@ import all Std.Data.DHashMap.Internal.Defs public import Std.Data.DHashMap.Internal.Model import all Std.Data.DHashMap.Internal.AssocList.Basic import all Std.Data.DHashMap.RawDef +import Init.Data.Array.Bootstrap +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.TakeDrop public section diff --git a/src/Std/Data/DHashMap/Iterator.lean b/src/Std/Data/DHashMap/Iterator.lean index 3e2266a0ec..7ec84ce7cb 100644 --- a/src/Std/Data/DHashMap/Iterator.lean +++ b/src/Std/Data/DHashMap/Iterator.lean @@ -10,6 +10,7 @@ public import Std.Data.Iterators.Producers.Array public import Init.Data.Iterators.Combinators.FlatMap public import Std.Data.DHashMap.Basic public import Std.Data.DHashMap.Internal.AssocList.Iterator +import Init.Data.Iterators.Combinators.FilterMap /-! # Iterators on `DHashMap` and `DHashMap.Raw` diff --git a/src/Std/Data/DHashMap/Lemmas.lean b/src/Std/Data/DHashMap/Lemmas.lean index 315beeeafb..467ce1e49b 100644 --- a/src/Std/Data/DHashMap/Lemmas.lean +++ b/src/Std/Data/DHashMap/Lemmas.lean @@ -10,6 +10,11 @@ public import Std.Data.DHashMap.Internal.RawLemmas import all Std.Data.DHashMap.Basic public import Std.Data.DHashMap.AdditionalOperations import all Std.Data.DHashMap.AdditionalOperations +import Init.ByCases +import Init.Data.List.Find +import Init.Data.List.Impl +import Init.Data.List.Pairwise +import Init.Data.Prod public section diff --git a/src/Std/Data/DHashMap/RawDef.lean b/src/Std/Data/DHashMap/RawDef.lean index 4f6d26b7d3..25a721ee1d 100644 --- a/src/Std/Data/DHashMap/RawDef.lean +++ b/src/Std/Data/DHashMap/RawDef.lean @@ -7,6 +7,7 @@ module prelude public import Std.Data.DHashMap.Internal.AssocList.Basic +public import Init.Data.Array.Basic public section diff --git a/src/Std/Data/DHashMap/RawLemmas.lean b/src/Std/Data/DHashMap/RawLemmas.lean index ddbbe3c4c5..f81d7eb622 100644 --- a/src/Std/Data/DHashMap/RawLemmas.lean +++ b/src/Std/Data/DHashMap/RawLemmas.lean @@ -9,6 +9,11 @@ prelude public import Std.Data.DHashMap.Internal.Raw public import Std.Data.DHashMap.Internal.RawLemmas import all Std.Data.DHashMap.Raw +import Init.ByCases +import Init.Data.List.Find +import Init.Data.List.Impl +import Init.Data.List.Pairwise +import Init.Data.Prod public section diff --git a/src/Std/Data/DTreeMap/DecidableEquiv.lean b/src/Std/Data/DTreeMap/DecidableEquiv.lean index b5c6762a5d..36514917a1 100644 --- a/src/Std/Data/DTreeMap/DecidableEquiv.lean +++ b/src/Std/Data/DTreeMap/DecidableEquiv.lean @@ -6,7 +6,6 @@ Authors: Wojciech Różowski module prelude -public import Std.Data.DTreeMap.Internal.Lemmas public import Std.Data.DTreeMap.Raw public section diff --git a/src/Std/Data/DTreeMap/Internal/Balanced.lean b/src/Std/Data/DTreeMap/Internal/Balanced.lean index 2f8967695b..cdba2bbb49 100644 --- a/src/Std/Data/DTreeMap/Internal/Balanced.lean +++ b/src/Std/Data/DTreeMap/Internal/Balanced.lean @@ -8,6 +8,8 @@ module prelude public import Init.Data.AC public import Std.Data.DTreeMap.Internal.Def +import Init.Omega +import Init.RCases @[expose] public section diff --git a/src/Std/Data/DTreeMap/Internal/Balancing.lean b/src/Std/Data/DTreeMap/Internal/Balancing.lean index 0e362adee6..f665717ed3 100644 --- a/src/Std/Data/DTreeMap/Internal/Balancing.lean +++ b/src/Std/Data/DTreeMap/Internal/Balancing.lean @@ -8,6 +8,10 @@ module prelude public import Init.Data.Ord.Basic public import Std.Data.DTreeMap.Internal.Balanced +import Init.ByCases +import Init.Data.Nat.Lemmas +import Init.Data.Nat.Simproc +import Init.Omega @[expose] public section diff --git a/src/Std/Data/DTreeMap/Internal/Cell.lean b/src/Std/Data/DTreeMap/Internal/Cell.lean index 44f42f4530..2d39eec97b 100644 --- a/src/Std/Data/DTreeMap/Internal/Cell.lean +++ b/src/Std/Data/DTreeMap/Internal/Cell.lean @@ -7,6 +7,7 @@ module prelude public import Std.Data.Internal.List.Associative +import Init.Data.List.Find @[expose] public section diff --git a/src/Std/Data/DTreeMap/Internal/Lemmas.lean b/src/Std/Data/DTreeMap/Internal/Lemmas.lean index c10e59e1ab..ad89db5a18 100644 --- a/src/Std/Data/DTreeMap/Internal/Lemmas.lean +++ b/src/Std/Data/DTreeMap/Internal/Lemmas.lean @@ -7,9 +7,12 @@ module prelude public import Std.Data.HashMap.Basic -meta import Std.Data.HashMap.Basic public import Std.Data.DTreeMap.Internal.WF.Lemmas -public import Init.Data.Order.ClassesExtra +public meta import Std.Data.HashMap.Basic +import Init.Data.List.Find +import Init.Data.List.Pairwise +import Init.Data.Prod +import Init.Omega @[expose] public section diff --git a/src/Std/Data/DTreeMap/Internal/Model.lean b/src/Std/Data/DTreeMap/Internal/Model.lean index 666d34a930..05428ba66a 100644 --- a/src/Std/Data/DTreeMap/Internal/Model.lean +++ b/src/Std/Data/DTreeMap/Internal/Model.lean @@ -8,6 +8,8 @@ module prelude public import Std.Data.DTreeMap.Internal.WF.Defs public import Std.Data.DTreeMap.Internal.Cell +import Init.Data.Nat.Linear +import Init.Omega @[expose] public section diff --git a/src/Std/Data/DTreeMap/Internal/Operations.lean b/src/Std/Data/DTreeMap/Internal/Operations.lean index 023913a345..94c3962aa7 100644 --- a/src/Std/Data/DTreeMap/Internal/Operations.lean +++ b/src/Std/Data/DTreeMap/Internal/Operations.lean @@ -9,6 +9,10 @@ prelude public import Std.Data.DTreeMap.Internal.Balancing public import Std.Data.DTreeMap.Internal.Queries public import Init.Data.List.Control +import Init.Data.Nat.Lemmas +import Init.Data.Nat.Linear +import Init.Omega +import Init.WFTactics @[expose] public section diff --git a/src/Std/Data/DTreeMap/Internal/Ordered.lean b/src/Std/Data/DTreeMap/Internal/Ordered.lean index d30fab213c..e2b1c2cbcb 100644 --- a/src/Std/Data/DTreeMap/Internal/Ordered.lean +++ b/src/Std/Data/DTreeMap/Internal/Ordered.lean @@ -9,6 +9,7 @@ prelude public import Std.Data.DTreeMap.Internal.Def public import Std.Data.Internal.Cut import Init.Data.List.Pairwise +import Init.Data.List.Sublist @[expose] public section diff --git a/src/Std/Data/DTreeMap/Internal/Queries.lean b/src/Std/Data/DTreeMap/Internal/Queries.lean index 4247b48cc7..55161f900a 100644 --- a/src/Std/Data/DTreeMap/Internal/Queries.lean +++ b/src/Std/Data/DTreeMap/Internal/Queries.lean @@ -9,7 +9,13 @@ prelude public import Init.Data.Nat.Compare public import Std.Data.DTreeMap.Internal.Balanced public import Std.Data.DTreeMap.Internal.Ordered -import Init.BinderPredicates +public import Init.BinderPredicates +public import Init.Data.Option.BasicAux +import Init.Data.Nat.Lemmas +import Init.Data.Nat.Linear +import Init.Omega +import Init.RCases +import Init.WFTactics @[expose] public section diff --git a/src/Std/Data/DTreeMap/Internal/WF/Lemmas.lean b/src/Std/Data/DTreeMap/Internal/WF/Lemmas.lean index 051ed4661a..edaf053d17 100644 --- a/src/Std/Data/DTreeMap/Internal/WF/Lemmas.lean +++ b/src/Std/Data/DTreeMap/Internal/WF/Lemmas.lean @@ -8,6 +8,10 @@ module prelude public import Std.Data.DTreeMap.Internal.Model import all Std.Data.Internal.List.Associative +import Init.Data.List.Impl +import Init.Data.Nat.Linear +import Init.Data.Option.List +import Init.Data.Subtype.Basic @[expose] public section diff --git a/src/Std/Data/DTreeMap/Internal/Zipper.lean b/src/Std/Data/DTreeMap/Internal/Zipper.lean index ba2f155684..a57854bc76 100644 --- a/src/Std/Data/DTreeMap/Internal/Zipper.lean +++ b/src/Std/Data/DTreeMap/Internal/Zipper.lean @@ -9,6 +9,13 @@ prelude public import Std.Data.Iterators.Lemmas.Producers.Slice public import Init.Data.Slice public import Std.Data.DTreeMap.Internal.Lemmas +public import Init.Data.Iterators.Combinators.FilterMap +import Init.Data.Iterators.Lemmas.Combinators.FilterMap +import Init.Data.Iterators.Lemmas.Consumers.Collect +import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect +import Init.Data.List.Pairwise +import Init.Data.List.Sublist +import Init.Data.List.TakeDrop namespace Std.DTreeMap.Internal diff --git a/src/Std/Data/DTreeMap/Lemmas.lean b/src/Std/Data/DTreeMap/Lemmas.lean index 044a925c82..286cebe2d8 100644 --- a/src/Std/Data/DTreeMap/Lemmas.lean +++ b/src/Std/Data/DTreeMap/Lemmas.lean @@ -8,6 +8,8 @@ module prelude import Std.Data.DTreeMap.Internal.Lemmas public import Std.Data.DTreeMap.AdditionalOperations +import Init.Data.List.Pairwise +import Init.Data.Prod @[expose] public section diff --git a/src/Std/Data/DTreeMap/Raw/Iterator.lean b/src/Std/Data/DTreeMap/Raw/Iterator.lean index a0adf7233c..27c13bb0f6 100644 --- a/src/Std/Data/DTreeMap/Raw/Iterator.lean +++ b/src/Std/Data/DTreeMap/Raw/Iterator.lean @@ -8,6 +8,7 @@ module prelude public import Std.Data.DTreeMap.Internal.Zipper public import Std.Data.DTreeMap.Raw.Basic +import Init.Data.Iterators.Lemmas.Combinators.FilterMap /-! # Iterators on `DTreeMap.Raw` diff --git a/src/Std/Data/DTreeMap/Raw/Lemmas.lean b/src/Std/Data/DTreeMap/Raw/Lemmas.lean index 077c0ddf78..adee7aae69 100644 --- a/src/Std/Data/DTreeMap/Raw/Lemmas.lean +++ b/src/Std/Data/DTreeMap/Raw/Lemmas.lean @@ -8,6 +8,9 @@ module prelude import Std.Data.DTreeMap.Internal.Lemmas public import Std.Data.DTreeMap.Raw.AdditionalOperations +import Init.Data.List.Find +import Init.Data.List.Pairwise +import Init.Data.Prod @[expose] public section diff --git a/src/Std/Data/DTreeMap/Raw/Slice.lean b/src/Std/Data/DTreeMap/Raw/Slice.lean index 91ee92637d..b57ecf3178 100644 --- a/src/Std/Data/DTreeMap/Raw/Slice.lean +++ b/src/Std/Data/DTreeMap/Raw/Slice.lean @@ -6,7 +6,6 @@ Authors: Wojciech Różowski module prelude -public import Std.Data.DTreeMap.Internal.Ordered public import Std.Data.DTreeMap.Internal.Zipper public import Std.Data.DTreeMap.Raw.Basic diff --git a/src/Std/Data/DTreeMap/Raw/WF.lean b/src/Std/Data/DTreeMap/Raw/WF.lean index d260d53aae..08c969bcb9 100644 --- a/src/Std/Data/DTreeMap/Raw/WF.lean +++ b/src/Std/Data/DTreeMap/Raw/WF.lean @@ -6,7 +6,6 @@ Authors: Paul Reichert module prelude -import Std.Data.DTreeMap.Internal.Lemmas public import Std.Data.DTreeMap.Raw.AdditionalOperations @[expose] public section diff --git a/src/Std/Data/ExtDTreeMap/Lemmas.lean b/src/Std/Data/ExtDTreeMap/Lemmas.lean index c9dcaced41..29ae68d420 100644 --- a/src/Std/Data/ExtDTreeMap/Lemmas.lean +++ b/src/Std/Data/ExtDTreeMap/Lemmas.lean @@ -7,6 +7,7 @@ module prelude public import Std.Data.ExtDTreeMap.Basic +import Init.Data.List.Pairwise @[expose] public section diff --git a/src/Std/Data/ExtTreeMap/Lemmas.lean b/src/Std/Data/ExtTreeMap/Lemmas.lean index 9fc002250d..f0b558f49a 100644 --- a/src/Std/Data/ExtTreeMap/Lemmas.lean +++ b/src/Std/Data/ExtTreeMap/Lemmas.lean @@ -8,6 +8,7 @@ module prelude public import Std.Data.ExtDTreeMap.Lemmas public import Std.Data.ExtTreeMap.Basic +import Init.Data.List.Pairwise @[expose] public section diff --git a/src/Std/Data/HashMap/Basic.lean b/src/Std/Data/HashMap/Basic.lean index ff391137ba..c1c0bf1524 100644 --- a/src/Std/Data/HashMap/Basic.lean +++ b/src/Std/Data/HashMap/Basic.lean @@ -7,6 +7,7 @@ module prelude public import Std.Data.DHashMap.Basic +public import Init.Data.List.Impl @[expose] public section diff --git a/src/Std/Data/HashMap/Iterator.lean b/src/Std/Data/HashMap/Iterator.lean index 7222732e72..1c34f46d2a 100644 --- a/src/Std/Data/HashMap/Iterator.lean +++ b/src/Std/Data/HashMap/Iterator.lean @@ -9,6 +9,7 @@ prelude public import Std.Data.DHashMap.Iterator public import Std.Data.HashMap.Basic public import Std.Data.HashMap.Raw +import Init.Data.Iterators.Combinators.FilterMap /-! # Iterators on `HashMap` and `HashMap.Raw` diff --git a/src/Std/Data/HashMap/Lemmas.lean b/src/Std/Data/HashMap/Lemmas.lean index 94b1ec4d40..8b23eb5102 100644 --- a/src/Std/Data/HashMap/Lemmas.lean +++ b/src/Std/Data/HashMap/Lemmas.lean @@ -9,6 +9,7 @@ prelude public import Std.Data.DHashMap.Lemmas public import Std.Data.HashMap.AdditionalOperations import all Std.Data.DHashMap.Basic +import Init.Data.List.Pairwise @[expose] public section diff --git a/src/Std/Data/HashMap/RawLemmas.lean b/src/Std/Data/HashMap/RawLemmas.lean index 7d390701af..37bbc386ee 100644 --- a/src/Std/Data/HashMap/RawLemmas.lean +++ b/src/Std/Data/HashMap/RawLemmas.lean @@ -9,6 +9,7 @@ prelude public import Std.Data.DHashMap.RawLemmas public import Std.Data.HashMap.Raw import all Std.Data.DHashMap.Raw +import Init.Data.List.Pairwise @[expose] public section diff --git a/src/Std/Data/HashSet/Iterator.lean b/src/Std/Data/HashSet/Iterator.lean index 86686492c0..94d3833ab3 100644 --- a/src/Std/Data/HashSet/Iterator.lean +++ b/src/Std/Data/HashSet/Iterator.lean @@ -9,6 +9,7 @@ prelude public import Std.Data.HashMap.Iterator public import Std.Data.HashSet.Basic public import Std.Data.HashSet.Raw +import Init.Data.Iterators.Combinators.FilterMap /-! # Iterators on `HashSet` and `HashSet.Raw` diff --git a/src/Std/Data/HashSet/IteratorLemmas.lean b/src/Std/Data/HashSet/IteratorLemmas.lean index 934da5d6c3..82f5e17fba 100644 --- a/src/Std/Data/HashSet/IteratorLemmas.lean +++ b/src/Std/Data/HashSet/IteratorLemmas.lean @@ -6,14 +6,12 @@ Authors: Paul Reichert module prelude -import Init.Data.Iterators.Lemmas.Combinators import Std.Data.DHashMap.IteratorLemmas import all Std.Data.HashMap.IteratorLemmas public import Std.Data.HashSet.Iterator import all Std.Data.HashSet.Iterator import Std.Data.HashSet.RawLemmas -import Std.Data.HashSet.Lemmas import all Std.Data.DHashMap.Basic namespace Std.HashSet.Raw diff --git a/src/Std/Data/Internal/List/Associative.lean b/src/Std/Data/Internal/List/Associative.lean index ac4b90b068..ebf7b71bee 100644 --- a/src/Std/Data/Internal/List/Associative.lean +++ b/src/Std/Data/Internal/List/Associative.lean @@ -8,13 +8,19 @@ module prelude public import Init.Data.Option.Attach public import Init.Data.List.Perm -public import Init.Data.List.Monadic public import Std.Data.Internal.List.Defs import all Std.Data.Internal.List.Defs -public import Init.Data.Order.Ord -import Init.Data.Subtype.Order -public import Init.Data.Order.ClassesExtra public import Init.Data.Order.LemmasExtra +public import Init.Data.Bool +import Init.ByCases +import Init.Data.List.Count +import Init.Data.List.Erase +import Init.Data.List.Find +import Init.Data.List.MinMax +import Init.Data.List.Pairwise +import Init.Data.List.Sublist +import Init.Data.Prod +import Init.Omega public section diff --git a/src/Std/Data/Internal/List/Defs.lean b/src/Std/Data/Internal/List/Defs.lean index b12878672e..7d662f43d4 100644 --- a/src/Std/Data/Internal/List/Defs.lean +++ b/src/Std/Data/Internal/List/Defs.lean @@ -7,6 +7,7 @@ module prelude public import Init.BinderPredicates +public import Init.NotationExtra public section diff --git a/src/Std/Data/Iterators/Lemmas/Combinators/Drop.lean b/src/Std/Data/Iterators/Lemmas/Combinators/Drop.lean index 94fd78d9c8..2ed254118d 100644 --- a/src/Std/Data/Iterators/Lemmas/Combinators/Drop.lean +++ b/src/Std/Data/Iterators/Lemmas/Combinators/Drop.lean @@ -9,6 +9,12 @@ prelude public import Std.Data.Iterators.Combinators.Drop public import Std.Data.Iterators.Lemmas.Combinators.Monadic.Drop public import Init.Data.Iterators.Lemmas.Combinators.Take +import Init.Data.Array.Lemmas +import Init.Data.Iterators.Lemmas.Basic +import Init.Data.Iterators.Lemmas.Consumers.Access +import Init.Data.Iterators.Lemmas.Consumers.Collect +import Init.Data.List.Nat.TakeDrop +import Init.Data.Option.Lemmas @[expose] public section diff --git a/src/Std/Data/Iterators/Lemmas/Combinators/DropWhile.lean b/src/Std/Data/Iterators/Lemmas/Combinators/DropWhile.lean index a51bbd3c8c..3237de9b97 100644 --- a/src/Std/Data/Iterators/Lemmas/Combinators/DropWhile.lean +++ b/src/Std/Data/Iterators/Lemmas/Combinators/DropWhile.lean @@ -9,6 +9,9 @@ prelude public import Std.Data.Iterators.Combinators.DropWhile public import Std.Data.Iterators.Lemmas.Combinators.Monadic.DropWhile public import Init.Data.Iterators.Lemmas.Consumers +import Init.Data.Bool +import Init.Data.Iterators.Lemmas.Basic +import Init.Data.List.TakeDrop @[expose] public section diff --git a/src/Std/Data/Iterators/Lemmas/Combinators/Monadic/DropWhile.lean b/src/Std/Data/Iterators/Lemmas/Combinators/Monadic/DropWhile.lean index 5963782e01..5a8bbf2c72 100644 --- a/src/Std/Data/Iterators/Lemmas/Combinators/Monadic/DropWhile.lean +++ b/src/Std/Data/Iterators/Lemmas/Combinators/Monadic/DropWhile.lean @@ -8,6 +8,7 @@ module prelude public import Std.Data.Iterators.Combinators.Monadic.DropWhile public import Init.Data.Iterators.Lemmas.Consumers.Monadic +import Init.Data.Bool @[expose] public section diff --git a/src/Std/Data/Iterators/Lemmas/Combinators/TakeWhile.lean b/src/Std/Data/Iterators/Lemmas/Combinators/TakeWhile.lean index 3573625adb..44bf9c44a1 100644 --- a/src/Std/Data/Iterators/Lemmas/Combinators/TakeWhile.lean +++ b/src/Std/Data/Iterators/Lemmas/Combinators/TakeWhile.lean @@ -9,7 +9,10 @@ prelude public import Std.Data.Iterators.Combinators.TakeWhile public import Std.Data.Iterators.Lemmas.Combinators.Monadic.TakeWhile public import Std.Data.Iterators.Lemmas.Consumers -public import Init.Data.Iterators.Lemmas.Consumers.Access +import Init.Data.List.TakeDrop +import Init.Data.List.ToArray +import Init.Data.Option.Lemmas +import Init.Omega @[expose] public section diff --git a/src/Std/Data/Iterators/Lemmas/Combinators/Zip.lean b/src/Std/Data/Iterators/Lemmas/Combinators/Zip.lean index 76258b2339..e810699be5 100644 --- a/src/Std/Data/Iterators/Lemmas/Combinators/Zip.lean +++ b/src/Std/Data/Iterators/Lemmas/Combinators/Zip.lean @@ -9,6 +9,11 @@ prelude public import Std.Data.Iterators.Combinators.Zip public import Std.Data.Iterators.Lemmas.Combinators.Monadic.Zip public import Init.Data.Iterators.Lemmas.Combinators.Take +import Init.Data.Iterators.Lemmas.Basic +import Init.Data.Iterators.Lemmas.Consumers.Access +import Init.Data.Iterators.Lemmas.Consumers.Collect +import Init.Data.List.ToArray +import Init.Data.List.Zip @[expose] public section diff --git a/src/Std/Data/Iterators/Lemmas/Consumers/Monadic/Collect.lean b/src/Std/Data/Iterators/Lemmas/Consumers/Monadic/Collect.lean index be8d384db9..e14c92c6e8 100644 --- a/src/Std/Data/Iterators/Lemmas/Consumers/Monadic/Collect.lean +++ b/src/Std/Data/Iterators/Lemmas/Consumers/Monadic/Collect.lean @@ -8,6 +8,7 @@ module prelude public import Init.Data.Iterators.Lemmas.Consumers.Monadic.Collect public import Std.Data.Iterators.Lemmas.Equivalence.StepCongr +import Init.Data.Iterators.Lemmas.Monadic.Basic @[expose] public section diff --git a/src/Std/Data/Iterators/Lemmas/Consumers/Monadic/Loop.lean b/src/Std/Data/Iterators/Lemmas/Consumers/Monadic/Loop.lean index 0deadd4c4a..f7c3b6af3f 100644 --- a/src/Std/Data/Iterators/Lemmas/Consumers/Monadic/Loop.lean +++ b/src/Std/Data/Iterators/Lemmas/Consumers/Monadic/Loop.lean @@ -8,6 +8,7 @@ module prelude public import Init.Data.Iterators.Lemmas.Consumers.Monadic.Loop public import Std.Data.Iterators.Lemmas.Consumers.Monadic.Collect +import Init.Data.Iterators.Lemmas.Monadic.Basic @[expose] public section diff --git a/src/Std/Data/Iterators/Lemmas/Equivalence/HetT.lean b/src/Std/Data/Iterators/Lemmas/Equivalence/HetT.lean index c04e000f0e..dc6a978e33 100644 --- a/src/Std/Data/Iterators/Lemmas/Equivalence/HetT.lean +++ b/src/Std/Data/Iterators/Lemmas/Equivalence/HetT.lean @@ -8,6 +8,7 @@ module prelude public import Init.Data.Iterators.Internal.LawfulMonadLiftFunction public import Init.Data.Iterators.PostconditionMonad +public import Init.Classical @[expose] public section diff --git a/src/Std/Data/Iterators/Lemmas/Producers/Monadic/Array.lean b/src/Std/Data/Iterators/Lemmas/Producers/Monadic/Array.lean index 248f85bf49..19da094352 100644 --- a/src/Std/Data/Iterators/Lemmas/Producers/Monadic/Array.lean +++ b/src/Std/Data/Iterators/Lemmas/Producers/Monadic/Array.lean @@ -9,6 +9,10 @@ prelude public import Std.Data.Iterators.Producers.Monadic.Array public import Std.Data.Iterators.Lemmas.Consumers.Monadic public import Std.Data.Iterators.Lemmas.Producers.Monadic.List +public import Init.Data.Array.Lemmas +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.TakeDrop +import Init.Omega @[expose] public section diff --git a/src/Std/Data/Iterators/Lemmas/Producers/Range.lean b/src/Std/Data/Iterators/Lemmas/Producers/Range.lean index 06488b691d..0bdca594e1 100644 --- a/src/Std/Data/Iterators/Lemmas/Producers/Range.lean +++ b/src/Std/Data/Iterators/Lemmas/Producers/Range.lean @@ -8,6 +8,8 @@ module prelude public import Std.Data.Iterators.Producers.Range import Init.Data.Range.Polymorphic.Lemmas +public import Init.Data.Iterators.Consumers.Loop +import Init.Data.Iterators.Lemmas.Consumers.Loop @[expose] public section diff --git a/src/Std/Data/Iterators/Lemmas/Producers/Repeat.lean b/src/Std/Data/Iterators/Lemmas/Producers/Repeat.lean index d0216952d5..42240f827f 100644 --- a/src/Std/Data/Iterators/Lemmas/Producers/Repeat.lean +++ b/src/Std/Data/Iterators/Lemmas/Producers/Repeat.lean @@ -8,6 +8,9 @@ module prelude public import Std.Data.Iterators.Producers.Repeat public import Init.Data.Iterators.Lemmas.Combinators.Take +import Init.Data.Iterators.Lemmas.Consumers.Access +import Init.Data.Iterators.Lemmas.Consumers.Collect +import Init.Data.Option.Lemmas @[expose] public section diff --git a/src/Std/Data/Iterators/Producers/Monadic/Array.lean b/src/Std/Data/Iterators/Producers/Monadic/Array.lean index bbeb9043d1..913cf1507d 100644 --- a/src/Std/Data/Iterators/Producers/Monadic/Array.lean +++ b/src/Std/Data/Iterators/Producers/Monadic/Array.lean @@ -7,6 +7,7 @@ module prelude public import Init.Data.Iterators.Consumers +import Init.Omega @[expose] public section diff --git a/src/Std/Data/TreeMap/Iterator.lean b/src/Std/Data/TreeMap/Iterator.lean index 6873493e15..9526c2e5c4 100644 --- a/src/Std/Data/TreeMap/Iterator.lean +++ b/src/Std/Data/TreeMap/Iterator.lean @@ -8,6 +8,7 @@ module prelude public import Std.Data.TreeMap.Basic public import Std.Data.DTreeMap.Iterator +import Init.Data.Iterators.Lemmas.Combinators.FilterMap /-! # Iterators on `DTreeMap` diff --git a/src/Std/Data/TreeMap/Lemmas.lean b/src/Std/Data/TreeMap/Lemmas.lean index 83be7f6723..f771b0b2f6 100644 --- a/src/Std/Data/TreeMap/Lemmas.lean +++ b/src/Std/Data/TreeMap/Lemmas.lean @@ -8,6 +8,7 @@ module prelude import Std.Data.DTreeMap.Lemmas public import Std.Data.TreeMap.AdditionalOperations +import Init.Data.List.Pairwise @[expose] public section diff --git a/src/Std/Data/TreeMap/Raw/Iterator.lean b/src/Std/Data/TreeMap/Raw/Iterator.lean index 3590f1cb36..0ee4ae2190 100644 --- a/src/Std/Data/TreeMap/Raw/Iterator.lean +++ b/src/Std/Data/TreeMap/Raw/Iterator.lean @@ -8,6 +8,7 @@ module prelude public import Std.Data.DTreeMap.Raw.Iterator public import Std.Data.TreeMap.Raw.Basic +import Init.Data.Iterators.Lemmas.Combinators.FilterMap /-! # Iterators on `DTreeMap.Raw` diff --git a/src/Std/Data/TreeMap/Raw/Lemmas.lean b/src/Std/Data/TreeMap/Raw/Lemmas.lean index c9626cdcc1..a302501b92 100644 --- a/src/Std/Data/TreeMap/Raw/Lemmas.lean +++ b/src/Std/Data/TreeMap/Raw/Lemmas.lean @@ -8,6 +8,10 @@ module prelude import Std.Data.DTreeMap.Raw.Lemmas public import Std.Data.TreeMap.Raw.AdditionalOperations +import Init.Data.List.Find +import Init.Data.List.Impl +import Init.Data.List.Pairwise +import Init.Data.Prod @[expose] public section diff --git a/src/Std/Data/TreeSet/Iterator.lean b/src/Std/Data/TreeSet/Iterator.lean index 1400a0d261..6feaef9a5c 100644 --- a/src/Std/Data/TreeSet/Iterator.lean +++ b/src/Std/Data/TreeSet/Iterator.lean @@ -9,6 +9,7 @@ prelude public import Std.Data.TreeSet.Basic public import Std.Data.TreeMap.Iterator public import Std.Data.DTreeMap.Lemmas +import Init.Data.Iterators.Lemmas.Combinators.FilterMap /-! # Iterators on `DTreeMap` diff --git a/src/Std/Data/TreeSet/Raw/Iterator.lean b/src/Std/Data/TreeSet/Raw/Iterator.lean index ddb4e0744b..4d3233b6a8 100644 --- a/src/Std/Data/TreeSet/Raw/Iterator.lean +++ b/src/Std/Data/TreeSet/Raw/Iterator.lean @@ -9,6 +9,7 @@ prelude public import Std.Data.TreeSet.Raw.Basic public import Std.Data.TreeMap.Raw.Iterator public import Std.Data.DTreeMap.Raw.Lemmas +import Init.Data.Iterators.Lemmas.Combinators.FilterMap /-! # Iterators on `DTreeMap` diff --git a/src/Std/Data/TreeSet/Raw/Lemmas.lean b/src/Std/Data/TreeSet/Raw/Lemmas.lean index 5a945cba20..8ddb016bd7 100644 --- a/src/Std/Data/TreeSet/Raw/Lemmas.lean +++ b/src/Std/Data/TreeSet/Raw/Lemmas.lean @@ -11,6 +11,7 @@ import Std.Data.DTreeMap.Raw.Lemmas public import Std.Data.TreeSet.Raw.Basic public import Init.Data.List.BasicAux public import Init.Data.Order.ClassesExtra +public import Init.Data.Order.Classes @[expose] public section diff --git a/src/Std/Data/TreeSet/Slice.lean b/src/Std/Data/TreeSet/Slice.lean index 87731fcfcc..7abfbbddb3 100644 --- a/src/Std/Data/TreeSet/Slice.lean +++ b/src/Std/Data/TreeSet/Slice.lean @@ -7,7 +7,6 @@ module prelude public import Std.Data.TreeSet.Raw.Slice -public import Std.Data.TreeSet.Basic /-! This module provides slice notation for `TreeSet` slices and implements an iterator diff --git a/src/Std/Do/SPred/DerivedLaws.lean b/src/Std/Do/SPred/DerivedLaws.lean index 52f797a421..4e272ce88b 100644 --- a/src/Std/Do/SPred/DerivedLaws.lean +++ b/src/Std/Do/SPred/DerivedLaws.lean @@ -8,6 +8,8 @@ module prelude public import Init.ByCases public import Std.Do.SPred.Laws +import Init.Classical +import Init.TacticsExtra @[expose] public section diff --git a/src/Std/Do/SPred/Notation.lean b/src/Std/Do/SPred/Notation.lean index 91b0a89b05..c6f2b68171 100644 --- a/src/Std/Do/SPred/Notation.lean +++ b/src/Std/Do/SPred/Notation.lean @@ -6,8 +6,8 @@ Authors: Lars König, Sebastian Graf module prelude -public import Std.Do.SPred.SPred public meta import Std.Do.SPred.Notation.Basic +public import Std.Do.SPred.Notation.Basic public section diff --git a/src/Std/Do/SPred/Notation/Basic.lean b/src/Std/Do/SPred/Notation/Basic.lean index 065c7c85e2..91aeb8a521 100644 --- a/src/Std/Do/SPred/Notation/Basic.lean +++ b/src/Std/Do/SPred/Notation/Basic.lean @@ -7,7 +7,6 @@ module prelude public import Std.Do.SPred.SPred -import Init.NotationExtra public section diff --git a/src/Std/Do/SPred/SPred.lean b/src/Std/Do/SPred/SPred.lean index 2b11430d1e..27bb8d2f78 100644 --- a/src/Std/Do/SPred/SPred.lean +++ b/src/Std/Do/SPred/SPred.lean @@ -8,6 +8,7 @@ module prelude public import Init.Ext public import Std.Do.SPred.SVal +public import Init.NotationExtra @[expose] public section diff --git a/src/Std/Do/SPred/SVal.lean b/src/Std/Do/SPred/SVal.lean index 0cb339ba57..367ee943b0 100644 --- a/src/Std/Do/SPred/SVal.lean +++ b/src/Std/Do/SPred/SVal.lean @@ -8,6 +8,8 @@ module prelude public import Init.Data.List.Notation import Init.SimpLemmas +public import Init.Core +import Init.Grind.Attr @[expose] public section diff --git a/src/Std/Do/Triple/Basic.lean b/src/Std/Do/Triple/Basic.lean index fae333f9e6..be74b244a1 100644 --- a/src/Std/Do/Triple/Basic.lean +++ b/src/Std/Do/Triple/Basic.lean @@ -7,7 +7,6 @@ module prelude public import Std.Do.WP -meta import Std.Do.SPred.Notation set_option linter.missingDocs true diff --git a/src/Std/Do/Triple/SpecLemmas.lean b/src/Std/Do/Triple/SpecLemmas.lean index 5894877232..3b215c0215 100644 --- a/src/Std/Do/Triple/SpecLemmas.lean +++ b/src/Std/Do/Triple/SpecLemmas.lean @@ -10,11 +10,19 @@ public import Std.Do.Triple.Basic public import Init.Data.Range.Polymorphic.Iterators import Init.Data.Range.Polymorphic public import Init.Data.Slice.Array -public import Init.Data.Iterators.ToIterator -- This public import is a workaround for #10652. -- Without it, adding the `spec` attribute for `instMonadLiftTOfMonadLift` will fail. public import Init.Data.Iterators.Lemmas.Combinators.FilterMap +public import Init.Data.Range +import Init.Data.Iterators.Lemmas +import Init.Data.List.Nat.Range +import Init.Data.List.Nat.TakeDrop +import Init.Data.List.Range +import Init.Data.List.TakeDrop +import Init.Data.Nat.Mod +import Init.Data.Slice.Lemmas +import Init.Omega set_option linter.missingDocs true diff --git a/src/Std/Internal/Async/Basic.lean b/src/Std/Internal/Async/Basic.lean index 009e4d45d6..698c701a8f 100644 --- a/src/Std/Internal/Async/Basic.lean +++ b/src/Std/Internal/Async/Basic.lean @@ -7,6 +7,7 @@ module prelude public import Init.System.Promise +public import Init.While public section diff --git a/src/Std/Internal/Async/ContextAsync.lean b/src/Std/Internal/Async/ContextAsync.lean index bde6733470..4eabe0c9bf 100644 --- a/src/Std/Internal/Async/ContextAsync.lean +++ b/src/Std/Internal/Async/ContextAsync.lean @@ -6,9 +6,7 @@ Authors: Sofia Rodrigues module prelude -public import Std.Time public import Std.Internal.UV -public import Std.Internal.Async.Basic public import Std.Internal.Async.Timer public import Std.Sync.CancellationContext diff --git a/src/Std/Internal/Async/DNS.lean b/src/Std/Internal/Async/DNS.lean index 5433b5fcaa..40eed1ebed 100644 --- a/src/Std/Internal/Async/DNS.lean +++ b/src/Std/Internal/Async/DNS.lean @@ -9,6 +9,7 @@ prelude public import Std.Time public import Std.Internal.UV public import Std.Internal.Async.Basic +public import Init.Data.Function public section diff --git a/src/Std/Internal/Async/Process.lean b/src/Std/Internal/Async/Process.lean index 1dbf318727..77e26f0427 100644 --- a/src/Std/Internal/Async/Process.lean +++ b/src/Std/Internal/Async/Process.lean @@ -9,6 +9,7 @@ prelude public import Std.Time public import Std.Internal.UV.System public import Std.Data.HashMap +import Init.Data.Ord.UInt public section diff --git a/src/Std/Internal/Async/Select.lean b/src/Std/Internal/Async/Select.lean index cf9065c221..996a160039 100644 --- a/src/Std/Internal/Async/Select.lean +++ b/src/Std/Internal/Async/Select.lean @@ -9,6 +9,8 @@ prelude public import Init.Data.Random public import Std.Internal.Async.Basic import Init.Data.ByteArray.Extra +import Init.Data.Array.Lemmas +import Init.Omega public section diff --git a/src/Std/Internal/Parsec/Basic.lean b/src/Std/Internal/Parsec/Basic.lean index b3e0f4662c..065290cb10 100644 --- a/src/Std/Internal/Parsec/Basic.lean +++ b/src/Std/Internal/Parsec/Basic.lean @@ -8,7 +8,7 @@ module prelude public import Init.NotationExtra public import Init.Data.ToString.Macro -import Init.Data.String.Basic +import Init.Data.Array.Basic public section diff --git a/src/Std/Internal/Parsec/ByteArray.lean b/src/Std/Internal/Parsec/ByteArray.lean index c92bab2fc0..7832bb5ec5 100644 --- a/src/Std/Internal/Parsec/ByteArray.lean +++ b/src/Std/Internal/Parsec/ByteArray.lean @@ -9,6 +9,7 @@ prelude public import Std.Internal.Parsec.Basic public import Init.Data.String.Basic public import Std.Data.ByteSlice +import Init.Omega public section diff --git a/src/Std/Sat/AIG/Basic.lean b/src/Std/Sat/AIG/Basic.lean index 75a79e20b3..71803618d5 100644 --- a/src/Std/Sat/AIG/Basic.lean +++ b/src/Std/Sat/AIG/Basic.lean @@ -9,6 +9,9 @@ prelude public import Std.Data.HashSet public import Init.Data.Vector.Basic public import Init.Data.Hashable +public import Init.Data.String.Defs +public import Init.Data.ToString.Macro +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/AIG/CNF.lean b/src/Std/Sat/AIG/CNF.lean index b2187b84ca..a236faabe9 100644 --- a/src/Std/Sat/AIG/CNF.lean +++ b/src/Std/Sat/AIG/CNF.lean @@ -8,6 +8,8 @@ module prelude public import Std.Sat.CNF public import Std.Sat.AIG.Lemmas +import Init.ByCases +import Init.Omega public section diff --git a/src/Std/Sat/AIG/Cached.lean b/src/Std/Sat/AIG/Cached.lean index 37912a7b85..bbeab847c7 100644 --- a/src/Std/Sat/AIG/Cached.lean +++ b/src/Std/Sat/AIG/Cached.lean @@ -7,6 +7,7 @@ module prelude public import Std.Sat.AIG.Lemmas +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/AIG/CachedGatesLemmas.lean b/src/Std/Sat/AIG/CachedGatesLemmas.lean index 60da4e364d..48a70657d8 100644 --- a/src/Std/Sat/AIG/CachedGatesLemmas.lean +++ b/src/Std/Sat/AIG/CachedGatesLemmas.lean @@ -7,6 +7,7 @@ module prelude public import Std.Sat.AIG.CachedGates +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/AIG/CachedLemmas.lean b/src/Std/Sat/AIG/CachedLemmas.lean index 77133cbc5a..ddef402dad 100644 --- a/src/Std/Sat/AIG/CachedLemmas.lean +++ b/src/Std/Sat/AIG/CachedLemmas.lean @@ -7,6 +7,8 @@ module prelude public import Std.Sat.AIG.Cached +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas @[expose] public section diff --git a/src/Std/Sat/AIG/If.lean b/src/Std/Sat/AIG/If.lean index d06ee4faa6..bab0841183 100644 --- a/src/Std/Sat/AIG/If.lean +++ b/src/Std/Sat/AIG/If.lean @@ -7,6 +7,7 @@ module prelude public import Std.Sat.AIG.LawfulVecOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/AIG/LawfulOperator.lean b/src/Std/Sat/AIG/LawfulOperator.lean index 719d9a94fd..10bc040f2d 100644 --- a/src/Std/Sat/AIG/LawfulOperator.lean +++ b/src/Std/Sat/AIG/LawfulOperator.lean @@ -7,6 +7,7 @@ module prelude public import Std.Sat.AIG.Basic +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/AIG/LawfulVecOperator.lean b/src/Std/Sat/AIG/LawfulVecOperator.lean index a578c0fd81..35eeef714b 100644 --- a/src/Std/Sat/AIG/LawfulVecOperator.lean +++ b/src/Std/Sat/AIG/LawfulVecOperator.lean @@ -7,6 +7,7 @@ module prelude public import Std.Sat.AIG.RefVec +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/AIG/Lemmas.lean b/src/Std/Sat/AIG/Lemmas.lean index 0051798c28..e473093e8f 100644 --- a/src/Std/Sat/AIG/Lemmas.lean +++ b/src/Std/Sat/AIG/Lemmas.lean @@ -7,6 +7,7 @@ module prelude public import Std.Sat.AIG.LawfulOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/AIG/RefVec.lean b/src/Std/Sat/AIG/RefVec.lean index 76e1b04571..a5a46eddd1 100644 --- a/src/Std/Sat/AIG/RefVec.lean +++ b/src/Std/Sat/AIG/RefVec.lean @@ -8,6 +8,8 @@ module prelude public import Std.Sat.AIG.CachedGatesLemmas public import Init.Data.Vector.Lemmas +import Init.ByCases +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/AIG/RefVecOperator/Fold.lean b/src/Std/Sat/AIG/RefVecOperator/Fold.lean index 2a6fe19b9f..94c07ea130 100644 --- a/src/Std/Sat/AIG/RefVecOperator/Fold.lean +++ b/src/Std/Sat/AIG/RefVecOperator/Fold.lean @@ -7,6 +7,7 @@ module prelude public import Std.Sat.AIG.LawfulVecOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/AIG/RefVecOperator/Map.lean b/src/Std/Sat/AIG/RefVecOperator/Map.lean index c8c219e82f..480e18292b 100644 --- a/src/Std/Sat/AIG/RefVecOperator/Map.lean +++ b/src/Std/Sat/AIG/RefVecOperator/Map.lean @@ -7,6 +7,7 @@ module prelude public import Std.Sat.AIG.LawfulVecOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/AIG/RefVecOperator/Zip.lean b/src/Std/Sat/AIG/RefVecOperator/Zip.lean index 87d8e1916f..2c55407bb9 100644 --- a/src/Std/Sat/AIG/RefVecOperator/Zip.lean +++ b/src/Std/Sat/AIG/RefVecOperator/Zip.lean @@ -7,6 +7,7 @@ module prelude public import Std.Sat.AIG.LawfulVecOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/AIG/Relabel.lean b/src/Std/Sat/AIG/Relabel.lean index f82b4eb2db..834745e4d1 100644 --- a/src/Std/Sat/AIG/Relabel.lean +++ b/src/Std/Sat/AIG/Relabel.lean @@ -7,6 +7,8 @@ module prelude public import Std.Sat.AIG.Lemmas +import Init.ByCases +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/AIG/RelabelNat.lean b/src/Std/Sat/AIG/RelabelNat.lean index aaf1749e1d..40de5d64b1 100644 --- a/src/Std/Sat/AIG/RelabelNat.lean +++ b/src/Std/Sat/AIG/RelabelNat.lean @@ -7,6 +7,8 @@ module prelude public import Std.Sat.AIG.Relabel +import Init.ByCases +import Init.Omega @[expose] public section diff --git a/src/Std/Sat/CNF/Basic.lean b/src/Std/Sat/CNF/Basic.lean index 36bfd9ed80..76b6499226 100644 --- a/src/Std/Sat/CNF/Basic.lean +++ b/src/Std/Sat/CNF/Basic.lean @@ -7,6 +7,7 @@ module prelude public import Std.Sat.CNF.Literal +public import Init.Data.Prod -- shake: keep (proof instance elab'd in public scope, fix?) @[expose] public section diff --git a/src/Std/Sat/CNF/RelabelFin.lean b/src/Std/Sat/CNF/RelabelFin.lean index 9f229e72ea..49823b78eb 100644 --- a/src/Std/Sat/CNF/RelabelFin.lean +++ b/src/Std/Sat/CNF/RelabelFin.lean @@ -8,6 +8,9 @@ module prelude public import Init.Data.Nat.Order public import Std.Sat.CNF.Relabel +import Init.Data.List.MinMax +import Init.Data.Option.Lemmas +import Init.Omega @[expose] public section diff --git a/src/Std/Sync/CancellationContext.lean b/src/Std/Sync/CancellationContext.lean index b62e931acb..238b2796fd 100644 --- a/src/Std/Sync/CancellationContext.lean +++ b/src/Std/Sync/CancellationContext.lean @@ -6,12 +6,8 @@ Authors: Sofia Rodrigues module prelude -public import Std.Data -public import Init.System.Promise -public import Init.Data.Queue -public import Std.Sync.Mutex public import Std.Sync.CancellationToken -public import Std.Internal.Async.Select +public import Init.Data.Ord.UInt public section diff --git a/src/Std/Sync/CancellationToken.lean b/src/Std/Sync/CancellationToken.lean index 4f5c0debbf..4cc4223435 100644 --- a/src/Std/Sync/CancellationToken.lean +++ b/src/Std/Sync/CancellationToken.lean @@ -10,6 +10,7 @@ public import Std.Data public import Init.Data.Queue public import Std.Sync.Mutex public import Std.Internal.Async.Select +public import Init.Data.ToString.Macro public section diff --git a/src/Std/Sync/Channel.lean b/src/Std/Sync/Channel.lean index 644794e7b3..d096756ee2 100644 --- a/src/Std/Sync/Channel.lean +++ b/src/Std/Sync/Channel.lean @@ -10,6 +10,8 @@ public import Init.Data.Queue public import Std.Sync.Mutex public import Std.Internal.Async.IO import Init.Data.Vector.Basic +import Init.Data.Option.BasicAux +import Init.Omega public section diff --git a/src/Std/Sync/Mutex.lean b/src/Std/Sync/Mutex.lean index 6ec9302f75..668308c898 100644 --- a/src/Std/Sync/Mutex.lean +++ b/src/Std/Sync/Mutex.lean @@ -7,6 +7,7 @@ module prelude public import Std.Sync.Basic +public import Init.While public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Basic.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Basic.lean index 7883ae02da..548a37ce94 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Basic.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Basic.lean @@ -8,6 +8,10 @@ module prelude public import Init.Data.Hashable public import Std.Tactic.BVDecide.Bitblast.BoolExpr.Basic +public import Init.Data.RArray +public import Init.Data.ToString.Macro +import Init.Data.BitVec.Lemmas +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Carry.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Carry.lean index 913366f9fc..06dad774da 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Carry.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Carry.lean @@ -7,6 +7,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Add +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Const.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Const.lean index ac7973db8c..6417d65462 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Const.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Const.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Basic public import Std.Sat.AIG.LawfulVecOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Expr.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Expr.lean index 8cac25a5fa..6c0af86b4e 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Expr.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Expr.lean @@ -17,6 +17,8 @@ public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Mul public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Umod public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Reverse public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Clz +import Init.Data.Nat.Linear +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Add.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Add.lean index 7b41fa9c58..fb5e48ff54 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Add.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Add.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Basic public import Std.Sat.AIG.LawfulVecOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Append.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Append.lean index 750362bf24..af3f8456cc 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Append.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Append.lean @@ -8,6 +8,8 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Basic public import Std.Sat.AIG.LawfulVecOperator +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Clz.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Clz.lean index d60cab8647..df11749460 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Clz.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Clz.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Const public import Std.Sat.AIG.If +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Extract.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Extract.lean index 826e2fedb1..7dc1bfbeee 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Extract.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Extract.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Basic public import Std.Sat.AIG.LawfulVecOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Mul.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Mul.lean index e352cd548a..b3a19bca7d 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Mul.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Mul.lean @@ -9,6 +9,7 @@ prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Add public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.ShiftLeft public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Const +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Replicate.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Replicate.lean index b8f79abf46..2e52e1968c 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Replicate.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Replicate.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Basic public import Std.Sat.AIG.LawfulVecOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Reverse.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Reverse.lean index 58949dd7db..cd627f4eb4 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Reverse.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Reverse.lean @@ -8,6 +8,8 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Basic public import Std.Sat.AIG.LawfulVecOperator +import Init.Data.Nat.Order +import Init.Data.Order.Lemmas @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/RotateLeft.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/RotateLeft.lean index 9e6a09bee3..b1323d005d 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/RotateLeft.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/RotateLeft.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Basic public import Std.Sat.AIG.LawfulVecOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/RotateRight.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/RotateRight.lean index 09d3e423cf..0e0e0149c9 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/RotateRight.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/RotateRight.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Basic public import Std.Sat.AIG.LawfulVecOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/ShiftLeft.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/ShiftLeft.lean index ecf0134766..238182584c 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/ShiftLeft.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/ShiftLeft.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Basic public import Std.Sat.AIG.If +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/ShiftRight.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/ShiftRight.lean index 0d4a30f0c2..0856ab2f50 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/ShiftRight.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/ShiftRight.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Basic public import Std.Sat.AIG.If +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Udiv.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Udiv.lean index 4b1e9202eb..2e96c8758d 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Udiv.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Udiv.lean @@ -11,6 +11,7 @@ public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Eq public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Ult public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.ZeroExtend public import Std.Sat.AIG.If +import Init.Omega public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/ZeroExtend.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/ZeroExtend.lean index 96b88ea3c5..e49438f555 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/ZeroExtend.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/ZeroExtend.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Basic public import Std.Sat.AIG.LawfulVecOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Pred.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Pred.lean index 034f0747e6..94d51d73ad 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Pred.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Pred.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.GetLsbD public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Expr +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Substructure.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Substructure.lean index 1a55e06802..1e76145924 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Substructure.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Substructure.lean @@ -7,6 +7,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Pred +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Var.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Var.lean index 478d3a4e39..da5ddd8c07 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Var.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Var.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Basic public import Std.Sat.AIG.LawfulVecOperator +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Carry.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Carry.lean index 960ea75622..1e7cf1ae58 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Carry.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Carry.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Operations.Add public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Carry +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Const.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Const.lean index 4636917ba2..2f48bb4bfb 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Const.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Const.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Const +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Expr.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Expr.lean index 5261792c82..869b259256 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Expr.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Expr.lean @@ -18,6 +18,9 @@ public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Operations.Umod public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Operations.Reverse public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Operations.Clz public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Expr +import Init.ByCases +import Init.Data.Nat.Linear +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Add.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Add.lean index 6d1c306c6f..c4b3e75509 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Add.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Add.lean @@ -9,6 +9,7 @@ prelude public import Init.Data.BitVec.Bitblast public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Add +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Append.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Append.lean index 7d16e570a3..7bf0961303 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Append.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Append.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Append +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Clz.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Clz.lean index ac0c03ad93..aed9a8422a 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Clz.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Clz.lean @@ -8,6 +8,9 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Clz public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Const +import Init.Data.BitVec.Lemmas +import Init.Data.Int.Pow +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Eq.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Eq.lean index a238fe2bd1..08693b1ede 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Eq.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Eq.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Eq +import Init.Data.BitVec.Bootstrap @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Extract.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Extract.lean index 6241193f62..bb8ae634d5 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Extract.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Extract.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Extract +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/GetLsbD.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/GetLsbD.lean index bae797145b..24e5b66806 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/GetLsbD.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/GetLsbD.lean @@ -8,6 +8,8 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.GetLsbD +import Init.Data.BitVec.Bootstrap +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Mul.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Mul.lean index 0d01b5dd60..7fda233979 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Mul.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Mul.lean @@ -10,6 +10,8 @@ public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Operations.Add public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Operations.ShiftLeft public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Const public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Mul +import Init.Data.BitVec.Bootstrap +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Replicate.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Replicate.lean index 9b1abb6d16..9f2c0dfc1c 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Replicate.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Replicate.lean @@ -8,6 +8,9 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Replicate +import Init.ByCases +import Init.Data.Nat.Mod +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Reverse.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Reverse.lean index d41c629a87..90e617ac4c 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Reverse.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Reverse.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Reverse +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/RotateLeft.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/RotateLeft.lean index 237a651f03..c9f2cd383c 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/RotateLeft.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/RotateLeft.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.RotateLeft +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/RotateRight.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/RotateRight.lean index fa6f5dcf29..48d34262ab 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/RotateRight.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/RotateRight.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.RotateRight +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/ShiftLeft.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/ShiftLeft.lean index 166926819f..ced59a84df 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/ShiftLeft.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/ShiftLeft.lean @@ -9,6 +9,8 @@ prelude public import Init.Data.BitVec.Bitblast public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.ShiftLeft +import Init.Data.BitVec.Bootstrap +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/ShiftRight.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/ShiftRight.lean index cc09e862d5..d98444aa9d 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/ShiftRight.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/ShiftRight.lean @@ -9,6 +9,8 @@ prelude public import Init.Data.BitVec.Bitblast public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.ShiftRight +import Init.Data.BitVec.Bootstrap +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Udiv.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Udiv.lean index 113c5e80df..ca7efc2421 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Udiv.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/Udiv.lean @@ -14,6 +14,8 @@ public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Operations.GetL public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Udiv import all Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.Udiv public import Std.Tactic.BVDecide.Normalize.BitVec +import Init.ByCases +import Init.Data.Nat.Linear @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/ZeroExtend.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/ZeroExtend.lean index 2b720eef66..4c85b4ba29 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/ZeroExtend.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Operations/ZeroExtend.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Operations.ZeroExtend +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Pred.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Pred.lean index c46575ba69..5884f51eb5 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Pred.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Pred.lean @@ -8,6 +8,7 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Expr public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Pred +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Var.lean b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Var.lean index 42e62b9406..9eb6f12619 100644 --- a/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Var.lean +++ b/src/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Lemmas/Var.lean @@ -8,6 +8,9 @@ module prelude public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Lemmas.Basic public import Std.Tactic.BVDecide.Bitblast.BVExpr.Circuit.Impl.Var +import Init.Data.BitVec.Bootstrap +import Init.Data.BitVec.Lemmas +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/LRAT/Internal/Clause.lean b/src/Std/Tactic/BVDecide/LRAT/Internal/Clause.lean index 8f6059cf9b..9913df6b2d 100644 --- a/src/Std/Tactic/BVDecide/LRAT/Internal/Clause.lean +++ b/src/Std/Tactic/BVDecide/LRAT/Internal/Clause.lean @@ -8,6 +8,8 @@ prelude public import Std.Data.HashMap public import Std.Sat.CNF.Basic public import Std.Tactic.BVDecide.LRAT.Internal.Assignment +import Init.Data.List.Erase +import Init.Data.List.Pairwise @[expose] public section namespace Std.Tactic.BVDecide diff --git a/src/Std/Tactic/BVDecide/LRAT/Internal/Convert.lean b/src/Std/Tactic/BVDecide/LRAT/Internal/Convert.lean index 878ae761c9..1a72b1e376 100644 --- a/src/Std/Tactic/BVDecide/LRAT/Internal/Convert.lean +++ b/src/Std/Tactic/BVDecide/LRAT/Internal/Convert.lean @@ -8,6 +8,7 @@ module prelude public import Std.Sat.CNF.RelabelFin public import Std.Tactic.BVDecide.LRAT.Internal.Formula +import Init.Data.Array.Bootstrap @[expose] public section diff --git a/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/Lemmas.lean b/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/Lemmas.lean index d2e0838712..5bb664e7f5 100644 --- a/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/Lemmas.lean +++ b/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/Lemmas.lean @@ -8,6 +8,11 @@ module prelude public import Std.Tactic.BVDecide.LRAT.Internal.Formula.Implementation public import Std.Tactic.BVDecide.LRAT.Internal.CNF +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.Int.OfNat +import Init.Data.List.Pairwise +import Init.Data.Nat.Linear @[expose] public section diff --git a/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RatAddResult.lean b/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RatAddResult.lean index 610d35a70f..435ac75150 100644 --- a/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RatAddResult.lean +++ b/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RatAddResult.lean @@ -7,6 +7,9 @@ module prelude public import Std.Tactic.BVDecide.LRAT.Internal.Formula.RupAddSound +import Init.ByCases +import Init.Data.Int.OfNat +import Init.Data.Nat.Linear @[expose] public section diff --git a/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RatAddSound.lean b/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RatAddSound.lean index 0d9f26d8e4..e4e1a0412c 100644 --- a/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RatAddSound.lean +++ b/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RatAddSound.lean @@ -7,6 +7,10 @@ module prelude public import Std.Tactic.BVDecide.LRAT.Internal.Formula.RatAddResult +import Init.ByCases +import Init.Data.Array.Range +import Init.Data.Int.OfNat +import Init.Data.Nat.Linear @[expose] public section diff --git a/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RupAddResult.lean b/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RupAddResult.lean index 400609f9b1..38ca3ff46b 100644 --- a/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RupAddResult.lean +++ b/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RupAddResult.lean @@ -7,6 +7,13 @@ module prelude public import Std.Tactic.BVDecide.LRAT.Internal.Formula.Lemmas +public import Init.GrindInstances.ToInt +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.Fin.Lemmas +import Init.Data.Int.OfNat +import Init.Data.Nat.Linear +import Init.Data.Nat.Simproc @[expose] public section diff --git a/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RupAddSound.lean b/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RupAddSound.lean index 841f2744d2..cb5105e54f 100644 --- a/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RupAddSound.lean +++ b/src/Std/Tactic/BVDecide/LRAT/Internal/Formula/RupAddSound.lean @@ -7,6 +7,11 @@ module prelude public import Std.Tactic.BVDecide.LRAT.Internal.Formula.RupAddResult +import Init.ByCases +import Init.Data.Array.Bootstrap +import Init.Data.Int.OfNat +import Init.Data.Nat.Linear +import Init.Data.Nat.Simproc @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Normalize/BitVec.lean b/src/Std/Tactic/BVDecide/Normalize/BitVec.lean index eb92fd66cf..e553614dfe 100644 --- a/src/Std/Tactic/BVDecide/Normalize/BitVec.lean +++ b/src/Std/Tactic/BVDecide/Normalize/BitVec.lean @@ -11,6 +11,8 @@ public import Init.Data.AC public import Std.Tactic.BVDecide.Normalize.Bool public import Std.Tactic.BVDecide.Normalize.Canonicalize public import Init.Data.SInt.Basic +import Init.ByCases +import Init.Omega @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Normalize/Canonicalize.lean b/src/Std/Tactic/BVDecide/Normalize/Canonicalize.lean index 78ac61c0c1..9a46459f44 100644 --- a/src/Std/Tactic/BVDecide/Normalize/Canonicalize.lean +++ b/src/Std/Tactic/BVDecide/Normalize/Canonicalize.lean @@ -8,6 +8,8 @@ module prelude public import Init.Data.BitVec.Lemmas public import Std.Tactic.BVDecide.Syntax +public import Init.Data.BitVec.Bootstrap +import Init.PropLemmas @[expose] public section diff --git a/src/Std/Tactic/BVDecide/Syntax.lean b/src/Std/Tactic/BVDecide/Syntax.lean index 590db83eca..329bb5cc9f 100644 --- a/src/Std/Tactic/BVDecide/Syntax.lean +++ b/src/Std/Tactic/BVDecide/Syntax.lean @@ -7,6 +7,9 @@ module prelude public import Init.Simproc +public import Init.Grind.Tactics +public import Init.MetaTypes +import Init.Data.Nat.Bitwise.Basic @[expose] public section diff --git a/src/Std/Tactic/Do/Syntax.lean b/src/Std/Tactic/Do/Syntax.lean index 1d8506cddf..9f05ad1a7a 100644 --- a/src/Std/Tactic/Do/Syntax.lean +++ b/src/Std/Tactic/Do/Syntax.lean @@ -8,6 +8,7 @@ module prelude public import Std.Do public import Std.Tactic.Do.ProofMode -- For (meta) importing `mgoalStx`; otherwise users might experience +public import Init.Data.Array.GetLit -- a broken goal view due to the builtin delaborator for `MGoalEntails` @[expose] public section diff --git a/src/Std/Time/Date/Unit/Month.lean b/src/Std/Time/Date/Unit/Month.lean index a8d184508e..53f24c15df 100644 --- a/src/Std/Time/Date/Unit/Month.lean +++ b/src/Std/Time/Date/Unit/Month.lean @@ -7,6 +7,7 @@ module prelude public import Std.Time.Date.Unit.Day +import Init.Data.Fin.Lemmas public section diff --git a/src/Std/Time/Date/ValidDate.lean b/src/Std/Time/Date/ValidDate.lean index 86dae3f21f..6c84059764 100644 --- a/src/Std/Time/Date/ValidDate.lean +++ b/src/Std/Time/Date/ValidDate.lean @@ -8,6 +8,7 @@ module prelude public import Std.Time.Date.Unit.Month import all Std.Time.Date.Unit.Month +import Init.Data.Bool public section diff --git a/src/Std/Time/Duration.lean b/src/Std/Time/Duration.lean index 77796dbf7f..c89495f8eb 100644 --- a/src/Std/Time/Duration.lean +++ b/src/Std/Time/Duration.lean @@ -7,6 +7,7 @@ module prelude public import Std.Time.Date +public import Init.Data.String.Basic public section diff --git a/src/Std/Time/Internal/Bounded.lean b/src/Std/Time/Internal/Bounded.lean index faf8bd0300..139e51bf39 100644 --- a/src/Std/Time/Internal/Bounded.lean +++ b/src/Std/Time/Internal/Bounded.lean @@ -8,7 +8,8 @@ module prelude public import Init.Data.Int.DivMod.Lemmas public import Init.Data.Order.Ord -import Init.Data.Subtype.Basic +public import Init.Omega +import Init.Ext @[expose] public section diff --git a/src/Std/Time/Zoned/Database.lean b/src/Std/Time/Zoned/Database.lean index fd3a7f0e7b..a78452323c 100644 --- a/src/Std/Time/Zoned/Database.lean +++ b/src/Std/Time/Zoned/Database.lean @@ -10,6 +10,7 @@ public import Std.Time.Zoned.ZonedDateTime public import Std.Time.Zoned.Database.Basic public import Std.Time.Zoned.Database.TZdb public import Std.Time.Zoned.Database.Windows +import Init.System.Platform public section diff --git a/src/Std/Time/Zoned/Database/TzIf.lean b/src/Std/Time/Zoned/Database/TzIf.lean index c1fc1d6cb2..657796bf38 100644 --- a/src/Std/Time/Zoned/Database/TzIf.lean +++ b/src/Std/Time/Zoned/Database/TzIf.lean @@ -8,7 +8,6 @@ module prelude public import Init.Data.Range.Polymorphic.Iterators public import Std.Internal.Parsec -import Init.Data.ByteArray.Extra public section diff --git a/src/Std/Time/Zoned/Database/Windows.lean b/src/Std/Time/Zoned/Database/Windows.lean index 0a22d05f7c..a8d51cb1a3 100644 --- a/src/Std/Time/Zoned/Database/Windows.lean +++ b/src/Std/Time/Zoned/Database/Windows.lean @@ -8,6 +8,7 @@ module prelude public import Init.Data.SInt.Basic public import Std.Time.Zoned.Database.Basic +import Init.While public section diff --git a/src/lake/Lake/Build/Actions.lean b/src/lake/Lake/Build/Actions.lean index 1a7f18c0fb..3ac3dc6a99 100644 --- a/src/lake/Lake/Build/Actions.lean +++ b/src/lake/Lake/Build/Actions.lean @@ -7,12 +7,12 @@ module prelude public import Lake.Util.Log -import Lake.Config.Dynlib import Lake.Util.Proc -import Lake.Util.NativeLib import Lake.Util.FilePath import Lake.Util.IO import Init.Data.String.Search +import Init.Data.String.TakeDrop +import Init.System.Platform /-! # Common Build Actions Low level actions to build common Lean artifacts via the Lean toolchain. diff --git a/src/lake/Lake/Build/Common.lean b/src/lake/Lake/Build/Common.lean index c076bd6def..a25841b58a 100644 --- a/src/lake/Lake/Build/Common.lean +++ b/src/lake/Lake/Build/Common.lean @@ -10,7 +10,6 @@ public import Lake.Build.Job.Monad public import Lake.Config.Monad public import Lake.Util.JsonObject public import Lake.Util.IO -import Lake.Build.Target.Fetch public import Lake.Build.Actions /-! # Common Build Tools diff --git a/src/lake/Lake/Build/Data.lean b/src/lake/Lake/Build/Data.lean index 2c58f16c9a..d7a2c56677 100644 --- a/src/lake/Lake/Build/Data.lean +++ b/src/lake/Lake/Build/Data.lean @@ -13,6 +13,7 @@ public import Lake.Config.Kinds public meta import Lake.Config.Kinds public meta import Lake.Util.Name import all Lake.Config.Kinds +import Lake.Util.Name open Lean diff --git a/src/lake/Lake/Build/Key.lean b/src/lake/Lake/Build/Key.lean index d1b340f5a1..39d17709df 100644 --- a/src/lake/Lake/Build/Key.lean +++ b/src/lake/Lake/Build/Key.lean @@ -8,9 +8,8 @@ module prelude public import Init.Data.Order import Lake.Util.Name -import Lake.Config.Kinds -import Init.Data.String.TakeDrop import Init.Data.String.Search +import Init.Data.Iterators.Consumers namespace Lake open Lean (Name) diff --git a/src/lake/Lake/Build/Module.lean b/src/lake/Lake/Build/Module.lean index 81997d353a..66f6431a83 100644 --- a/src/lake/Lake/Build/Module.lean +++ b/src/lake/Lake/Build/Module.lean @@ -10,11 +10,11 @@ public import Lake.Config.FacetConfig public import Lake.Build.Job.Monad public import Lake.Build.Infos import Lean.Elab.ParseImportsFast -import Lake.Util.IO import Lake.Util.Proc import Lake.Build.Job.Register import Lake.Build.Common import Lake.Build.Target +import Init.Omega /-! # Module Build Definitions -/ diff --git a/src/lake/Lake/Build/Package.lean b/src/lake/Lake/Build/Package.lean index a25d68cde3..2f55a2a5fd 100644 --- a/src/lake/Lake/Build/Package.lean +++ b/src/lake/Lake/Build/Package.lean @@ -13,7 +13,6 @@ import Lake.Util.Git import Lake.Util.Url import Lake.Build.Common import Lake.Build.Targets -import Lake.Build.Topological import Lake.Build.Job.Register import Lake.Reservoir diff --git a/src/lake/Lake/Build/Run.lean b/src/lake/Lake/Build/Run.lean index 69b6739db8..a8bbd2c202 100644 --- a/src/lake/Lake/Build/Run.lean +++ b/src/lake/Lake/Build/Run.lean @@ -10,6 +10,7 @@ public import Lake.Config.Workspace import Lake.Config.Monad import Lake.Build.Job.Monad import Lake.Build.Index +import Init.Omega /-! # Build Runner diff --git a/src/lake/Lake/Build/Store.lean b/src/lake/Lake/Build/Store.lean index 179752d5bd..8a5c9dbdb8 100644 --- a/src/lake/Lake/Build/Store.lean +++ b/src/lake/Lake/Build/Store.lean @@ -8,8 +8,6 @@ module prelude public import Lake.Util.Store public import Lake.Build.Job.Basic -import Lake.Util.StoreInsts -import Lake.Build.Data /-! # The Lake Build Store diff --git a/src/lake/Lake/Build/Trace.lean b/src/lake/Lake/Build/Trace.lean index f7e775b865..d43c7ec750 100644 --- a/src/lake/Lake/Build/Trace.lean +++ b/src/lake/Lake/Build/Trace.lean @@ -9,9 +9,9 @@ prelude public import Lean.Data.Json import Init.Data.Nat.Fold import Lake.Util.String -import Lake.Util.IO public import Init.Data.String.Search public import Init.Data.String.Extra +import Init.Data.Option.Coe /-! # Lake Traces diff --git a/src/lake/Lake/CLI/Actions.lean b/src/lake/Lake/CLI/Actions.lean index a9bce94d44..cb277d8278 100644 --- a/src/lake/Lake/CLI/Actions.lean +++ b/src/lake/Lake/CLI/Actions.lean @@ -11,9 +11,7 @@ import Lake.Build.Run import Lake.Build.Actions import Lake.Build.Targets import Lake.Build.Module -import Lake.CLI.Build import Lake.Util.Proc -import Init.Data.String.Search namespace Lake open Lean (Name) diff --git a/src/lake/Lake/CLI/Build.lean b/src/lake/Lake/CLI/Build.lean index 280cf16120..1a8d71d8ef 100644 --- a/src/lake/Lake/CLI/Build.lean +++ b/src/lake/Lake/CLI/Build.lean @@ -8,12 +8,11 @@ module prelude public import Lake.CLI.Error public import Lake.Config.Workspace -import Lake.Config.Monad import Lake.Build.Infos import Lake.Build.Job.Monad public import Lake.Build.Job.Register import Lake.Util.IO -import Init.Data.String.Search +import Init.Data.Iterators.Consumers open System Lean diff --git a/src/lake/Lake/CLI/Error.lean b/src/lake/Lake/CLI/Error.lean index 0b5273430e..c17a3e8255 100644 --- a/src/lake/Lake/CLI/Error.lean +++ b/src/lake/Lake/CLI/Error.lean @@ -8,7 +8,6 @@ module prelude public import Init.Data.ToString public import Init.System.FilePath -import Init.Data.ToString.Name open Lean (Name) diff --git a/src/lake/Lake/CLI/Help.lean b/src/lake/Lake/CLI/Help.lean index 7a36ed6ed8..2ec5e273bf 100644 --- a/src/lake/Lake/CLI/Help.lean +++ b/src/lake/Lake/CLI/Help.lean @@ -8,7 +8,6 @@ module prelude public import Init.Data.ToString import Lake.Version -import Init.Data.String.Basic namespace Lake diff --git a/src/lake/Lake/CLI/Init.lean b/src/lake/Lake/CLI/Init.lean index f23fd69a1f..2af0cfd3a0 100644 --- a/src/lake/Lake/CLI/Init.lean +++ b/src/lake/Lake/CLI/Init.lean @@ -9,12 +9,8 @@ prelude public import Lake.Config.Env public import Lake.Config.Lang import Lake.Util.Git -import Lake.Util.Version -import Lake.Config.Package -import Lake.Config.Workspace -import Lake.Load.Config import Lake.Load.Workspace -import Lake.Build.Actions +import Init.Data.String.Modify namespace Lake open Git System diff --git a/src/lake/Lake/CLI/Main.lean b/src/lake/Lake/CLI/Main.lean index 443c1757a3..4de8226289 100644 --- a/src/lake/Lake/CLI/Main.lean +++ b/src/lake/Lake/CLI/Main.lean @@ -6,7 +6,6 @@ Authors: Mac Malone module prelude -public import Init.System.IO public import Lake.Util.Exit public import Lake.Load.Config public import Lake.CLI.Error @@ -14,24 +13,20 @@ public import Lake.CLI.Shake import Lake.Version import Lake.Build.Run import Lake.Build.Targets -import Lake.Build.Job.Monad -import Lake.Build.Job.Register import Lake.Build.Target.Fetch import Lake.Load.Package import Lake.Load.Workspace import Lake.Util.IO import Lake.Util.Git -import Lake.Util.Error import Lake.Util.MainM import Lake.Util.Cli import Lake.CLI.Init import Lake.CLI.Help import Lake.CLI.Build -import Lake.CLI.Error import Lake.CLI.Actions import Lake.CLI.Translate import Lake.CLI.Serve -import Init.Data.String.Search +import Init.Data.String.Modify -- # CLI diff --git a/src/lake/Lake/CLI/Shake.lean b/src/lake/Lake/CLI/Shake.lean index de489e8cb4..8ef81b3bc2 100644 --- a/src/lake/Lake/CLI/Shake.lean +++ b/src/lake/Lake/CLI/Shake.lean @@ -6,12 +6,11 @@ Authors: Mario Carneiro, Sebastian Ullrich module prelude -public import Init.Prelude -public import Init.System.IO public import Lean.Util.Path -import Lean.Environment import Lean.ExtraModUses import Lean.Parser.Module +import Init.Data.Range.Polymorphic.Iterators +meta import Lean.Parser.Module /-! # Shake: A Lean import minimizer diff --git a/src/lake/Lake/CLI/Translate/Lean.lean b/src/lake/Lake/CLI/Translate/Lean.lean index a4df2918e9..4ae2001d93 100644 --- a/src/lake/Lake/CLI/Translate/Lean.lean +++ b/src/lake/Lake/CLI/Translate/Lean.lean @@ -8,7 +8,6 @@ module prelude public import Lake.Config.Package import Lake.DSL.Syntax -import Lake.Config.Package meta import Lean.Parser.Module meta import Lake.Config.LeanLibConfig meta import Lake.Config.LeanExeConfig diff --git a/src/lake/Lake/Config/Artifact.lean b/src/lake/Lake/Config/Artifact.lean index 74a97ad119..38dc6a549a 100644 --- a/src/lake/Lake/Config/Artifact.lean +++ b/src/lake/Lake/Config/Artifact.lean @@ -7,7 +7,6 @@ module prelude public import Lake.Build.Trace -import Init.Data.String.Search open System Lean diff --git a/src/lake/Lake/Config/Cache.lean b/src/lake/Lake/Config/Cache.lean index 933aa86130..80a9b30c31 100644 --- a/src/lake/Lake/Config/Cache.lean +++ b/src/lake/Lake/Config/Cache.lean @@ -15,8 +15,7 @@ import Lake.Util.Proc import Lake.Util.Reservoir import Lake.Util.JsonObject import Lake.Util.IO -import Init.Data.String.Search -import Init.Data.String.Lemmas.Basic +import Init.Data.String.Lemmas open Lean System diff --git a/src/lake/Lake/Config/Dependency.lean b/src/lake/Lake/Config/Dependency.lean index 457352257b..a06fad9cd1 100644 --- a/src/lake/Lake/Config/Dependency.lean +++ b/src/lake/Lake/Config/Dependency.lean @@ -10,6 +10,7 @@ public import Init.Dynamic public import Init.System.FilePath public import Lean.Data.NameMap.Basic import Init.Data.ToString.Name +import Init.Data.ToString.Macro /- # Package Dependency Configuration diff --git a/src/lake/Lake/Config/Env.lean b/src/lake/Lake/Config/Env.lean index f005f5ce3a..bfdcbd2b50 100644 --- a/src/lake/Lake/Config/Env.lean +++ b/src/lake/Lake/Config/Env.lean @@ -8,6 +8,7 @@ module prelude public import Lake.Config.Cache public import Lake.Config.InstallPath +import Init.System.Platform open System open Lean hiding SearchPath diff --git a/src/lake/Lake/Config/Glob.lean b/src/lake/Lake/Config/Glob.lean index aa92730144..c7ca1840ca 100644 --- a/src/lake/Lake/Config/Glob.lean +++ b/src/lake/Lake/Config/Glob.lean @@ -7,7 +7,8 @@ module prelude public import Lean.Util.Path -import Lake.Util.Name +import Init.Data.ToString.Name +import Lean.Data.Name open Lean (Name) open System (FilePath) diff --git a/src/lake/Lake/Config/InputFileConfig.lean b/src/lake/Lake/Config/InputFileConfig.lean index f883135651..ab63d5dbbe 100644 --- a/src/lake/Lake/Config/InputFileConfig.lean +++ b/src/lake/Lake/Config/InputFileConfig.lean @@ -10,6 +10,7 @@ public import Lake.Config.Pattern public import Lake.Config.MetaClasses public import Init.Data.ToString.Name meta import all Lake.Config.Meta +import Lake.Config.Meta open Lean System diff --git a/src/lake/Lake/Config/InstallPath.lean b/src/lake/Lake/Config/InstallPath.lean index a486d98ab9..4a6fde70cc 100644 --- a/src/lake/Lake/Config/InstallPath.lean +++ b/src/lake/Lake/Config/InstallPath.lean @@ -11,6 +11,7 @@ public import Lake.Config.Dynlib public import Lake.Config.Defaults public import Lake.Util.NativeLib import Init.Data.String.Modify +import Init.System.Platform open System Lean.Compiler.FFI diff --git a/src/lake/Lake/Config/LeanConfig.lean b/src/lake/Lake/Config/LeanConfig.lean index 2ae704b2bb..1c1922f5e5 100644 --- a/src/lake/Lake/Config/LeanConfig.lean +++ b/src/lake/Lake/Config/LeanConfig.lean @@ -12,6 +12,7 @@ public import Lake.Config.MetaClasses meta import all Lake.Config.Meta import Lake.Util.Name import Init.Data.String.Modify +import Lake.Config.Meta open System Lean diff --git a/src/lake/Lake/Config/LeanExeConfig.lean b/src/lake/Lake/Config/LeanExeConfig.lean index de965dd168..7722a38fa5 100644 --- a/src/lake/Lake/Config/LeanExeConfig.lean +++ b/src/lake/Lake/Config/LeanExeConfig.lean @@ -9,6 +9,7 @@ prelude public import Lake.Build.Facets public import Lake.Config.LeanConfig meta import all Lake.Config.Meta +import Lake.Config.Meta namespace Lake open Lean System diff --git a/src/lake/Lake/Config/LeanLib.lean b/src/lake/Lake/Config/LeanLib.lean index 817303729b..077efb6c24 100644 --- a/src/lake/Lake/Config/LeanLib.lean +++ b/src/lake/Lake/Config/LeanLib.lean @@ -8,6 +8,7 @@ module prelude public import Lake.Config.ConfigTarget public import Lake.Util.NativeLib +import Init.Omega namespace Lake open Lean System diff --git a/src/lake/Lake/Config/LeanLibConfig.lean b/src/lake/Lake/Config/LeanLibConfig.lean index 8720134610..3cb6ba173b 100644 --- a/src/lake/Lake/Config/LeanLibConfig.lean +++ b/src/lake/Lake/Config/LeanLibConfig.lean @@ -12,6 +12,7 @@ public import Lake.Build.Facets public import Lake.Config.LeanConfig public import Lake.Config.Glob meta import all Lake.Config.Meta +import Lake.Config.Meta namespace Lake open Lean System diff --git a/src/lake/Lake/Config/Meta.lean b/src/lake/Lake/Config/Meta.lean index 71180ee838..ee74eec3ce 100644 --- a/src/lake/Lake/Config/Meta.lean +++ b/src/lake/Lake/Config/Meta.lean @@ -11,6 +11,7 @@ public import Lake.Config.MetaClasses public meta import Lake.Util.Binder public meta import Lean.Parser.Command public meta import Lake.Util.Name +import Lean.Parser.Command open Lean Syntax Parser Command diff --git a/src/lake/Lake/Config/Module.lean b/src/lake/Lake/Config/Module.lean index 0a75ae1a13..231cfb57bd 100644 --- a/src/lake/Lake/Config/Module.lean +++ b/src/lake/Lake/Config/Module.lean @@ -7,9 +7,6 @@ module prelude public import Lake.Config.LeanLib -import Lake.Util.OrdHashSet -import Lake.Util.NativeLib -import Lake.Util.FilePath namespace Lake open Lean System diff --git a/src/lake/Lake/Config/Opaque.lean b/src/lake/Lake/Config/Opaque.lean index a18436846d..227c9572e0 100644 --- a/src/lake/Lake/Config/Opaque.lean +++ b/src/lake/Lake/Config/Opaque.lean @@ -8,6 +8,7 @@ module prelude public import Init.Prelude meta import all Lake.Util.OpaqueType +import Lake.Util.OpaqueType namespace Lake diff --git a/src/lake/Lake/Config/Package.lean b/src/lake/Lake/Config/Package.lean index a6e1385552..dffed4dbeb 100644 --- a/src/lake/Lake/Config/Package.lean +++ b/src/lake/Lake/Config/Package.lean @@ -15,6 +15,7 @@ public import Lake.Util.FilePath -- use scoped instance downstream public import Lake.Util.OrdHashSet public import Lake.Util.Name meta import all Lake.Util.OpaqueType +import Lake.Util.OpaqueType open System Lean diff --git a/src/lake/Lake/Config/PackageConfig.lean b/src/lake/Lake/Config/PackageConfig.lean index 7718e149ef..2323adb2ec 100644 --- a/src/lake/Lake/Config/PackageConfig.lean +++ b/src/lake/Lake/Config/PackageConfig.lean @@ -12,6 +12,8 @@ public import Lake.Config.Pattern public import Lake.Config.LeanConfig public import Lake.Config.WorkspaceConfig meta import all Lake.Config.Meta +public import Init.System.Platform +import Lake.Config.Meta open System Lean diff --git a/src/lake/Lake/Config/Pattern.lean b/src/lake/Lake/Config/Pattern.lean index 59f929f473..fd8de09dd0 100644 --- a/src/lake/Lake/Config/Pattern.lean +++ b/src/lake/Lake/Config/Pattern.lean @@ -11,6 +11,9 @@ public import Std.Data.TreeMap.Basic public import Lean.Data.Name import Lake.Util.Name import Init.Data.String.TakeDrop +public import Init.Data.String.Basic +import Init.Data.Option.Coe +import Init.Omega open System Lean diff --git a/src/lake/Lake/Config/TargetConfig.lean b/src/lake/Lake/Config/TargetConfig.lean index d17d3cd190..1387a40904 100644 --- a/src/lake/Lake/Config/TargetConfig.lean +++ b/src/lake/Lake/Config/TargetConfig.lean @@ -8,6 +8,7 @@ module prelude public import Lake.Build.Fetch meta import all Lake.Util.OpaqueType +import Lake.Util.OpaqueType open Lean diff --git a/src/lake/Lake/Config/Workspace.lean b/src/lake/Lake/Config/Workspace.lean index 5e72264485..07e90a3ae0 100644 --- a/src/lake/Lake/Config/Workspace.lean +++ b/src/lake/Lake/Config/Workspace.lean @@ -12,6 +12,8 @@ public import Lake.Config.ExternLib public import Lake.Config.FacetConfig public import Lake.Config.TargetConfig meta import all Lake.Util.OpaqueType +import Lake.Util.OpaqueType +import Lean.DocString.Syntax set_option doc.verso true diff --git a/src/lake/Lake/Config/WorkspaceConfig.lean b/src/lake/Lake/Config/WorkspaceConfig.lean index 7324429cc7..e6074ad0e0 100644 --- a/src/lake/Lake/Config/WorkspaceConfig.lean +++ b/src/lake/Lake/Config/WorkspaceConfig.lean @@ -9,6 +9,7 @@ prelude public import Lake.Config.Defaults public import Lake.Config.MetaClasses meta import all Lake.Config.Meta +import Lake.Config.Meta open System namespace Lake diff --git a/src/lake/Lake/DSL/Key.lean b/src/lake/Lake/DSL/Key.lean index 0268228bbf..edceea66c1 100644 --- a/src/lake/Lake/DSL/Key.lean +++ b/src/lake/Lake/DSL/Key.lean @@ -6,7 +6,7 @@ Authors: Mac Malone module prelude -import Lake.Build.Key +import Lake.Build.Key -- shake: keep (builtin macro output dependency) import Lake.DSL.Syntax import Lake.Util.Name diff --git a/src/lake/Lake/DSL/Meta.lean b/src/lake/Lake/DSL/Meta.lean index ee39d062d3..42a659a355 100644 --- a/src/lake/Lake/DSL/Meta.lean +++ b/src/lake/Lake/DSL/Meta.lean @@ -8,8 +8,6 @@ module prelude public import Lean.ToExpr import Lean.Elab.Eval -import Lean.Elab.ElabRules -import Lake.Util.FilePath import Lake.DSL.Syntax /-! diff --git a/src/lake/Lake/DSL/Package.lean b/src/lake/Lake/DSL/Package.lean index 3e935f8b46..91169e3d68 100644 --- a/src/lake/Lake/DSL/Package.lean +++ b/src/lake/Lake/DSL/Package.lean @@ -7,10 +7,8 @@ module prelude public import Lake.DSL.Syntax -import Lake.Config.Package -import Lake.DSL.Attributes +import Lake.Config.Package -- shake: keep (builtin macro output dependency) import Lake.DSL.Extensions -import Lake.DSL.DeclUtil open Lean Parser Elab Command diff --git a/src/lake/Lake/DSL/Require.lean b/src/lake/Lake/DSL/Require.lean index 26c8307128..53a2193ce8 100644 --- a/src/lake/Lake/DSL/Require.lean +++ b/src/lake/Lake/DSL/Require.lean @@ -8,8 +8,6 @@ module prelude public import Lake.DSL.Syntax import Lake.Config.Dependency -import Lake.DSL.Extensions -import Lake.DSL.DeclUtil open Lean Parser Command diff --git a/src/lake/Lake/DSL/Script.lean b/src/lake/Lake/DSL/Script.lean index cba967983d..143e5f04cb 100644 --- a/src/lake/Lake/DSL/Script.lean +++ b/src/lake/Lake/DSL/Script.lean @@ -7,8 +7,8 @@ module prelude public import Init.Prelude -import Lake.Config.Package -import Lake.DSL.Attributes +import Lake.Config.Package -- shake: keep (builtin macro output dependency) +import Lake.DSL.Attributes -- shake: keep (builtin macro output dependency) import Lake.DSL.Syntax /-! # Script Declarations diff --git a/src/lake/Lake/DSL/Targets.lean b/src/lake/Lake/DSL/Targets.lean index c41facee67..282f166cc2 100644 --- a/src/lake/Lake/DSL/Targets.lean +++ b/src/lake/Lake/DSL/Targets.lean @@ -11,7 +11,6 @@ public import Lake.Config.TargetConfig public import Lake.Config.FacetConfig public import Lake.Build.Job.Register public import Lake.Build.Infos -import Lake.DSL.DeclUtil /-! # DSL for Targets & Facets Macros for declaring Lake targets and facets. diff --git a/src/lake/Lake/DSL/VerLit.lean b/src/lake/Lake/DSL/VerLit.lean index 0b8c74dffa..b34d18596f 100644 --- a/src/lake/Lake/DSL/VerLit.lean +++ b/src/lake/Lake/DSL/VerLit.lean @@ -8,8 +8,8 @@ module prelude public import Lean.ToExpr public import Lake.Util.Version -import Lean.Elab.Eval import Lake.DSL.Syntax +import Lean.Meta.Eval open Lean Elab Term Meta diff --git a/src/lake/Lake/Load/Config.lean b/src/lake/Lake/Load/Config.lean index 7e17d1a46d..bb64546cee 100644 --- a/src/lake/Lake/Load/Config.lean +++ b/src/lake/Lake/Load/Config.lean @@ -8,7 +8,6 @@ module prelude public import Lake.Config.Env public import Lake.Load.Manifest -public import Lake.Util.FilePath set_option doc.verso true diff --git a/src/lake/Lake/Load/Lean.lean b/src/lake/Lake/Load/Lean.lean index edc27a9eb2..b38ee619b4 100644 --- a/src/lake/Lake/Load/Lean.lean +++ b/src/lake/Lake/Load/Lean.lean @@ -6,7 +6,6 @@ Authors: Mac Malone module prelude -public import Lean.Environment public import Lake.Config.Package public import Lake.Load.Config import Lake.Load.Lean.Elab diff --git a/src/lake/Lake/Load/Lean/Elab.lean b/src/lake/Lake/Load/Lean/Elab.lean index 7e8c7ffd1c..3a7d69663e 100644 --- a/src/lake/Lake/Load/Lean/Elab.lean +++ b/src/lake/Lake/Load/Lean/Elab.lean @@ -6,16 +6,13 @@ Authors: Mac Malone module prelude -public import Lake.Util.Log public import Lake.Load.Config -public import Lean.Environment import Lean.Compiler.IR import Lean.Elab.Frontend import Lake.DSL.Extensions -import Lake.DSL.Attributes -import Lake.Load.Config -import Lake.Build.Trace import Lake.Util.JsonObject +import Init.System.Platform +import Lake.DSL.AttributesCore /-! # Lean Configuration Elaborator diff --git a/src/lake/Lake/Load/Lean/Eval.lean b/src/lake/Lake/Load/Lean/Eval.lean index 02791dfa65..a74b7b3b8c 100644 --- a/src/lake/Lake/Load/Lean/Eval.lean +++ b/src/lake/Lake/Load/Lean/Eval.lean @@ -6,10 +6,9 @@ Authors: Mac Malone module prelude -public import Lean.Environment public import Lake.Config.Workspace -import Lake.DSL.Attributes import Lean.DocString +import Lake.DSL.AttributesCore /-! # Lean Configuration Evaluator diff --git a/src/lake/Lake/Load/Manifest.lean b/src/lake/Lake/Load/Manifest.lean index 5d2989e3bb..6051ab174c 100644 --- a/src/lake/Lake/Load/Manifest.lean +++ b/src/lake/Lake/Load/Manifest.lean @@ -6,13 +6,12 @@ Authors: Mac Malone, Gabriel Ebner module prelude -public import Lean.Data.Json public import Lake.Util.Version public import Lake.Config.Defaults -import Lake.Util.Name import Lake.Util.Error public import Lake.Util.FilePath import Lake.Util.JsonObject +import Init.Data.Option.Coe open System Lean diff --git a/src/lake/Lake/Load/Materialize.lean b/src/lake/Lake/Load/Materialize.lean index ea49acdba0..fd31b4e27e 100644 --- a/src/lake/Lake/Load/Materialize.lean +++ b/src/lake/Lake/Load/Materialize.lean @@ -10,7 +10,6 @@ public import Lake.Config.Env public import Lake.Load.Manifest public import Lake.Config.Package import Lake.Util.Git -import Lake.Config.Dependency import Lake.Reservoir open System Lean diff --git a/src/lake/Lake/Load/Toml.lean b/src/lake/Lake/Load/Toml.lean index fff2fd156b..9e99bbce1d 100644 --- a/src/lake/Lake/Load/Toml.lean +++ b/src/lake/Lake/Load/Toml.lean @@ -6,13 +6,16 @@ Authors: Mac Malone module prelude -public import Lake.Util.Log public import Lake.Config.Package public import Lake.Load.Config public import Lake.Toml.Decode import Lake.Toml.Load import Lean.Parser.Extension -meta import Lake.Config.Package +import Init.Omega +meta import Lake.Config.InputFileConfig +meta import Lake.Config.LeanExeConfig +meta import Lake.Config.LeanLibConfig +meta import Lake.Config.PackageConfig open Lean Parser open System (FilePath) diff --git a/src/lake/Lake/Reservoir.lean b/src/lake/Lake/Reservoir.lean index 3ddcb7ab74..2180b54ea9 100644 --- a/src/lake/Lake/Reservoir.lean +++ b/src/lake/Lake/Reservoir.lean @@ -10,7 +10,6 @@ public import Lake.Util.JsonObject public import Lake.Util.Version public import Lake.Config.Env public import Lake.Util.Reservoir -import Lake.Util.Proc import Lake.Util.Url /-! # Package Registries diff --git a/src/lake/Lake/Toml/Data/DateTime.lean b/src/lake/Lake/Toml/Data/DateTime.lean index 646fac98dd..342921105f 100644 --- a/src/lake/Lake/Toml/Data/DateTime.lean +++ b/src/lake/Lake/Toml/Data/DateTime.lean @@ -8,8 +8,10 @@ module prelude public import Lake.Util.Date import Lake.Util.String -import Init.Data.String.TakeDrop import Init.Data.String.Search +import Init.Data.Iterators.Consumers.Collect +import Init.Data.Iterators.Consumers.Loop +import Init.Data.ToString.Macro /-! # TOML Date-Time diff --git a/src/lake/Lake/Toml/Data/Value.lean b/src/lake/Lake/Toml/Data/Value.lean index 6ed15335f7..1b09f78415 100644 --- a/src/lake/Lake/Toml/Data/Value.lean +++ b/src/lake/Lake/Toml/Data/Value.lean @@ -12,6 +12,8 @@ public import Lake.Toml.Data.DateTime import Lake.Util.String import Init.Data.String.TakeDrop import Init.Data.String.Search +public import Init.Data.String.Defs +import Init.Data.ToString.Macro /-! # TOML Value diff --git a/src/lake/Lake/Toml/Decode.lean b/src/lake/Lake/Toml/Decode.lean index e793c5c246..c12cf4df8b 100644 --- a/src/lake/Lake/Toml/Decode.lean +++ b/src/lake/Lake/Toml/Decode.lean @@ -8,6 +8,7 @@ module prelude public import Init.System.FilePath public import Lake.Toml.Data +import Init.Data.ToString.Macro open Lean diff --git a/src/lake/Lake/Toml/Elab/Value.lean b/src/lake/Lake/Toml/Elab/Value.lean index 6e2c87779b..ed722b3fb2 100644 --- a/src/lake/Lake/Toml/Elab/Value.lean +++ b/src/lake/Lake/Toml/Elab/Value.lean @@ -6,7 +6,6 @@ Authors: Mac Malone module prelude -public import Lean.CoreM public import Lake.Toml.Data.Value public import Lake.Toml.Grammar meta import all Lake.Toml.Grammar -- for quotations diff --git a/src/lake/Lake/Toml/Grammar.lean b/src/lake/Lake/Toml/Grammar.lean index 7579f7f9ce..2aa565abcc 100644 --- a/src/lake/Lake/Toml/Grammar.lean +++ b/src/lake/Lake/Toml/Grammar.lean @@ -6,9 +6,10 @@ Authors: Mac Malone module prelude -public import Lean.Parser.Types import Lake.Toml.ParserUtil import Lean.Parser +public import Lean.PrettyPrinter.Formatter +public import Lean.PrettyPrinter.Parenthesizer /-! # TOML Grammar diff --git a/src/lake/Lake/Toml/Load.lean b/src/lake/Lake/Toml/Load.lean index 074538f5c1..1ab74c6c67 100644 --- a/src/lake/Lake/Toml/Load.lean +++ b/src/lake/Lake/Toml/Load.lean @@ -8,9 +8,9 @@ module prelude public import Lean.Parser.Types public import Lake.Toml.Data.Value -import Lean.Parser import Lake.Toml.Elab import Lake.Util.Message +import Std.Do open Lean Parser diff --git a/src/lake/Lake/Util/Casing.lean b/src/lake/Lake/Util/Casing.lean index 70a2877408..1f40b5a074 100644 --- a/src/lake/Lake/Util/Casing.lean +++ b/src/lake/Lake/Util/Casing.lean @@ -9,6 +9,7 @@ prelude public import Init.Data.String.Basic import Init.Data.String.Modify import Init.Data.String.Search +import Init.Data.Iterators.Consumers.Collect namespace Lake diff --git a/src/lake/Lake/Util/Cli.lean b/src/lake/Lake/Util/Cli.lean index 3a07c0edf3..79d4d76fb1 100644 --- a/src/lake/Lake/Util/Cli.lean +++ b/src/lake/Lake/Util/Cli.lean @@ -6,9 +6,7 @@ Authors: Mac Malone module prelude -import Init.Data.Array.Basic public import Init.Data.String.TakeDrop -import Init.Data.String.Slice public import Init.Data.String.Search namespace Lake diff --git a/src/lake/Lake/Util/Cycle.lean b/src/lake/Lake/Util/Cycle.lean index ad68af858f..ea7f6b53e6 100644 --- a/src/lake/Lake/Util/Cycle.lean +++ b/src/lake/Lake/Util/Cycle.lean @@ -7,7 +7,6 @@ module prelude public import Init.Data.ToString -import Init.Data.String.Basic namespace Lake diff --git a/src/lake/Lake/Util/Date.lean b/src/lake/Lake/Util/Date.lean index 0b811c1d3e..e0f9055db4 100644 --- a/src/lake/Lake/Util/Date.lean +++ b/src/lake/Lake/Util/Date.lean @@ -9,6 +9,8 @@ prelude public import Init.Data.Ord.Basic import Lake.Util.String import Init.Data.String.Search +import Init.Data.Iterators.Consumers.Collect +import Init.Data.ToString.Macro /-! # Date diff --git a/src/lake/Lake/Util/Exit.lean b/src/lake/Lake/Util/Exit.lean index 50ad67db21..c0f8ee493d 100644 --- a/src/lake/Lake/Util/Exit.lean +++ b/src/lake/Lake/Util/Exit.lean @@ -6,8 +6,8 @@ Authors: Mac Malone module prelude -public import Init.Prelude -import Init.Data.UInt.Basic +public import Init.Notation +import Init.Data.UInt.BasicAux namespace Lake diff --git a/src/lake/Lake/Util/Family.lean b/src/lake/Lake/Util/Family.lean index 79828dfd6f..ffbb7ab6eb 100644 --- a/src/lake/Lake/Util/Family.lean +++ b/src/lake/Lake/Util/Family.lean @@ -6,9 +6,9 @@ Authors: Mac Malone module prelude -public import Init.Prelude public meta import Init.Data.ToString.Name import Init.Data.ToString +public import Init.Notation /-! # Open Type Families in Lean diff --git a/src/lake/Lake/Util/FilePath.lean b/src/lake/Lake/Util/FilePath.lean index 814dd7c3f1..f5267c0d13 100644 --- a/src/lake/Lake/Util/FilePath.lean +++ b/src/lake/Lake/Util/FilePath.lean @@ -9,6 +9,7 @@ prelude public import Lean.Data.Json import Init.Data.String.TakeDrop import Init.Data.String.Modify +import Init.System.Platform open System Lean diff --git a/src/lake/Lake/Util/Lock.lean b/src/lake/Lake/Util/Lock.lean index 3add8744d0..78f109574f 100644 --- a/src/lake/Lake/Util/Lock.lean +++ b/src/lake/Lake/Util/Lock.lean @@ -7,6 +7,7 @@ module prelude public import Init.System.IO +import Init.Data.ToString.Macro /-! # Lock File Utilities diff --git a/src/lake/Lake/Util/Name.lean b/src/lake/Lake/Util/Name.lean index ac76a00fb3..c2c70cb49e 100644 --- a/src/lake/Lake/Util/Name.lean +++ b/src/lake/Lake/Util/Name.lean @@ -8,7 +8,6 @@ module prelude public import Lean.Data.Json public import Lake.Util.RBArray -import Init.Data.Ord.String import Init.Data.Ord.UInt import all Init.Prelude import all Lean.Data.Name diff --git a/src/lake/Lake/Util/NativeLib.lean b/src/lake/Lake/Util/NativeLib.lean index 0582848a11..5ed2cdaafe 100644 --- a/src/lake/Lake/Util/NativeLib.lean +++ b/src/lake/Lake/Util/NativeLib.lean @@ -7,6 +7,8 @@ module prelude public import Init.System.IO +import Init.Data.ToString.Macro +import Init.System.Platform open System namespace Lake diff --git a/src/lake/Lake/Util/OpaqueType.lean b/src/lake/Lake/Util/OpaqueType.lean index bd0a60a801..abedc746e5 100644 --- a/src/lake/Lake/Util/OpaqueType.lean +++ b/src/lake/Lake/Util/OpaqueType.lean @@ -6,8 +6,9 @@ Authors: Mac Malone module prelude -public import Init.Prelude public meta import Lake.Util.Binder +public import Init.Notation +import Lake.Util.Binder /-! This module provides utilities for defining simple opaque types diff --git a/src/lake/Lake/Util/Task.lean b/src/lake/Lake/Util/Task.lean index c66d595b41..0fcbefa7f0 100644 --- a/src/lake/Lake/Util/Task.lean +++ b/src/lake/Lake/Util/Task.lean @@ -7,6 +7,7 @@ module prelude public import Init.Control.Option +public import Init.Control.Except namespace Lake diff --git a/src/lake/Lake/Util/Url.lean b/src/lake/Lake/Util/Url.lean index b5990071c3..4d83ef2b6c 100644 --- a/src/lake/Lake/Util/Url.lean +++ b/src/lake/Lake/Util/Url.lean @@ -11,6 +11,7 @@ import Lake.Util.JsonObject import Lake.Util.Proc import Init.Data.String.TakeDrop import Init.Data.String.Search +import Init.TacticsExtra -- shake: keep (out-of-line macro_rules def, fix) open Lean diff --git a/src/lake/Lake/Util/Version.lean b/src/lake/Lake/Util/Version.lean index 4e1e52a18d..ff44901c29 100644 --- a/src/lake/Lake/Util/Version.lean +++ b/src/lake/Lake/Util/Version.lean @@ -8,10 +8,10 @@ module prelude public import Lean.Data.Json public import Lake.Util.Date -import Init.Data.String.Slice import Init.Data.String.TakeDrop import Lean.Data.Trie import Init.Data.String.Search +import Init.Omega /-! # Version diff --git a/src/lake/LakeMain.lean b/src/lake/LakeMain.lean index d3ec286797..285e6759f3 100644 --- a/src/lake/LakeMain.lean +++ b/src/lake/LakeMain.lean @@ -7,7 +7,7 @@ module prelude public import Init.System.IO -import Lake.DSL -- registers builtins +import Lake.DSL -- shake: keep (registers builtins) import Lake.CLI.Main public def main (args : List String) : IO UInt32 := do diff --git a/tests/lean/run/extraModUses.lean b/tests/lean/run/extraModUses.lean index b97edbdef2..3111610f10 100644 --- a/tests/lean/run/extraModUses.lean +++ b/tests/lean/run/extraModUses.lean @@ -1,7 +1,5 @@ module -prelude -public import Init.Prelude import all Lean.ExtraModUses public meta import Lean.Elab.Tactic.Basic