chore: shake core (#12276)

This commit is contained in:
Sebastian Ullrich 2026-02-05 10:10:32 +01:00 committed by GitHub
parent 96ef09186f
commit b4d4e371d2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
999 changed files with 2224 additions and 1021 deletions

View file

@ -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

View file

@ -7,7 +7,8 @@ Authors: Joachim Breitner
module
prelude
public import Init.Tactics
public import Init.Prelude
import Init.Tactics
public section

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -7,6 +7,7 @@ module
prelude
public import Init.Data.ToString.Basic
public import Init.Control.State
public section
universe u v

View file

@ -7,6 +7,7 @@ module
prelude
public import Init.Control.Lawful.Basic
import Init.SimpLemmas
public section

View file

@ -8,7 +8,6 @@ The identity Monad.
module
prelude
public import Init.Core
public import Init.Control.MonadAttach
public section

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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]

View file

@ -6,7 +6,7 @@ Authors: Quang Dao
module
prelude
public import Init.Control.Basic
public import Init.Notation
public section

View file

@ -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

View file

@ -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

View file

@ -6,7 +6,7 @@ Authors: Paul Reichert
module
prelude
public import Init.Control.Basic
public import Init.Core
set_option linter.all true

View file

@ -7,7 +7,7 @@ module
prelude
public import Init.Data.Option.Basic
public import Init.Control.Except
public import Init.Control.MonadAttach
public section

View file

@ -7,6 +7,7 @@ module
prelude
public import Init.Control.Lawful.Basic
public import Init.Ext
public section

View file

@ -9,6 +9,7 @@ module
prelude
public import Init.System.ST
public import Init.Control.Reader
public section

View file

@ -9,6 +9,7 @@ module
prelude
public import Init.SizeOf
public import Init.Tactics
public section
set_option linter.missingDocs true -- keep it documented

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -8,6 +8,7 @@ module
prelude
public import Init.Data.Vector.Basic
public import Init.Data.Ord.Basic
import Init.Omega
public section

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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⟩
/--

View file

@ -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

View file

@ -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)

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -7,6 +7,7 @@ module
prelude
public import Init.Data.UInt.BasicAux
import Init.Data.Nat.Div.Basic
@[expose] public section

View file

@ -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

View file

@ -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

View file

@ -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`

View file

@ -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

View file

@ -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`. -/

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -7,6 +7,7 @@ module
prelude
public import Init.Data.Int.Basic
import Init.Data.Nat.Div.Basic
public section

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

View file

@ -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

Some files were not shown because too many files have changed in this diff Show more