theorem
Std.Slice.Internal.iter_eq_toIteratorIter
{α β : Type v}
{γ : Type u}
[ToIterator (Slice γ) Id α β]
{s : Slice γ}
:
theorem
Std.Slice.Internal.size_eq_length_iter
{γ : Type u}
{α β : Type v}
[ToIterator (Slice γ) Id α β]
[Iterator α Id β]
[Iterators.Finite α Id]
[IteratorLoop α Id Id]
[LawfulIteratorLoop α Id Id]
{s : Slice γ}
[SliceSize γ]
[LawfulSliceSize γ]
:
theorem
Std.Slice.Internal.fold_iter
{γ : Type u}
{α β : Type v}
{α✝ : Type u_1}
{f : α✝ → β → α✝}
{init : α✝}
[ToIterator (Slice γ) Id α β]
[Iterator α Id β]
[IteratorLoop α Id Id]
[Iterators.Finite α Id]
{s : Slice γ}
:
theorem
Std.Slice.Internal.foldM_iter
{γ : Type u}
{α β : Type v}
{δ : Type w}
{init : δ}
{m : Type w → Type w'}
[Monad m]
[ToIterator (Slice γ) Id α β]
[Iterator α Id β]
[IteratorLoop α Id m]
[Iterators.Finite α Id]
{s : Slice γ}
{f : δ → β → m δ}
: