theorem
ListSlice.toList_eq
{α : Type u_1}
{xs : ListSlice α}
:
Std.Slice.toList xs = match Std.Slice.Internal.ListSliceData.stop α with
| some stop => List.take stop Std.Slice.Internal.ListSliceData.list
| none => Std.Slice.Internal.ListSliceData.list
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
theorem
List.toList_mkSlice_rci_eq_toList_mkSlice_rco
{α : Type u_1}
{xs : List α}
{lo : Nat}
:
Std.Slice.toList (Std.Rci.Sliceable.mkSlice xs lo...*) = Std.Slice.toList (Std.Rco.Sliceable.mkSlice xs lo...xs.length)
theorem
List.toArray_mkSlice_rci_eq_toArray_mkSlice_rco
{α : Type u_1}
{xs : List α}
{lo : Nat}
:
Std.Slice.toArray (Std.Rci.Sliceable.mkSlice xs lo...*) = Std.Slice.toArray (Std.Rco.Sliceable.mkSlice xs lo...xs.length)
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
theorem
List.toArray_mkSlice_roc
{α : Type u_1}
{xs : List α}
{lo hi : Nat}
:
Std.Slice.toArray (Std.Roc.Sliceable.mkSlice xs lo<...=hi) = (drop (lo + 1) (take (hi + 1) xs)).toArray
@[simp]
@[simp]
theorem
List.toList_mkSlice_roi_eq_toList_mkSlice_roo
{α : Type u_1}
{xs : List α}
{lo : Nat}
:
Std.Slice.toList (Std.Roi.Sliceable.mkSlice xs lo<...*) = Std.Slice.toList (Std.Roo.Sliceable.mkSlice xs lo<...xs.length)
theorem
List.toArray_mkSlice_roi_eq_toArray_mkSlice_roo
{α : Type u_1}
{xs : List α}
{lo : Nat}
:
Std.Slice.toArray (Std.Roi.Sliceable.mkSlice xs lo<...*) = Std.Slice.toArray (Std.Roo.Sliceable.mkSlice xs lo<...xs.length)
theorem
List.toList_mkSlice_roi_eq_toList_mkSlice_rco
{α : Type u_1}
{xs : List α}
{lo : Nat}
:
Std.Slice.toList (Std.Roi.Sliceable.mkSlice xs lo<...*) = Std.Slice.toList (Std.Rco.Sliceable.mkSlice xs (lo + 1)...xs.length)
theorem
List.toArray_mkSlice_roi_eq_toArray_mkSlice_rco
{α : Type u_1}
{xs : List α}
{lo : Nat}
:
Std.Slice.toArray (Std.Roi.Sliceable.mkSlice xs lo<...*) = Std.Slice.toArray (Std.Rco.Sliceable.mkSlice xs (lo + 1)...xs.length)
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
theorem
List.toList_mkSlice_rii_eq_toList_mkSlice_rco
{α : Type u_1}
{xs : List α}
:
Std.Slice.toList (Std.Rii.Sliceable.mkSlice xs *...*) = Std.Slice.toList (Std.Rco.Sliceable.mkSlice xs 0...xs.length)
theorem
List.toArray_mkSlice_rii_eq_toArray_mkSlice_rco
{α : Type u_1}
{xs : List α}
:
Std.Slice.toArray (Std.Rii.Sliceable.mkSlice xs *...*) = Std.Slice.toArray (Std.Rco.Sliceable.mkSlice xs 0...xs.length)
@[simp]
@[simp]
@[simp]
@[simp]
theorem
ListSlice.toList_mkSlice_rco
{α : Type u_1}
{xs : ListSlice α}
{lo hi : Nat}
:
Std.Slice.toList (Std.Rco.Sliceable.mkSlice xs lo...hi) = List.drop lo (List.take hi (Std.Slice.toList xs))
@[simp]
@[simp]
@[simp]
theorem
ListSlice.toList_mkSlice_rcc
{α : Type u_1}
{xs : ListSlice α}
{lo hi : Nat}
:
Std.Slice.toList (Std.Rcc.Sliceable.mkSlice xs lo...=hi) = List.drop lo (List.take (hi + 1) (Std.Slice.toList xs))
@[simp]
theorem
ListSlice.toArray_mkSlice_rcc
{α : Type u_1}
{xs : ListSlice α}
{lo hi : Nat}
:
Std.Slice.toArray (Std.Rcc.Sliceable.mkSlice xs lo...=hi) = (Std.Slice.toArray xs).extract lo (hi + 1)
@[simp]
@[simp]
theorem
ListSlice.toList_mkSlice_rci_eq_toList_mkSlice_rco
{α : Type u_1}
{xs : ListSlice α}
{lo : Nat}
:
Std.Slice.toList (Std.Rci.Sliceable.mkSlice xs lo...*) = Std.Slice.toList (Std.Rco.Sliceable.mkSlice xs lo...Std.Slice.size xs)
theorem
ListSlice.toArray_mkSlice_rci_eq_toArray_mkSlice_rco
{α : Type u_1}
{xs : ListSlice α}
{lo : Nat}
:
Std.Slice.toArray (Std.Rci.Sliceable.mkSlice xs lo...*) = Std.Slice.toArray (Std.Rco.Sliceable.mkSlice xs lo...Std.Slice.size xs)
@[simp]
@[simp]
theorem
ListSlice.toList_mkSlice_roo
{α : Type u_1}
{xs : ListSlice α}
{lo hi : Nat}
:
Std.Slice.toList (Std.Roo.Sliceable.mkSlice xs lo<...hi) = List.drop (lo + 1) (List.take hi (Std.Slice.toList xs))
@[simp]
theorem
ListSlice.toArray_mkSlice_roo
{α : Type u_1}
{xs : ListSlice α}
{lo hi : Nat}
:
Std.Slice.toArray (Std.Roo.Sliceable.mkSlice xs lo<...hi) = (Std.Slice.toArray xs).extract (lo + 1) hi
@[simp]
@[simp]
@[simp]
@[simp]
theorem
ListSlice.toList_mkSlice_roc
{α : Type u_1}
{xs : ListSlice α}
{lo hi : Nat}
:
Std.Slice.toList (Std.Roc.Sliceable.mkSlice xs lo<...=hi) = List.drop (lo + 1) (List.take (hi + 1) (Std.Slice.toList xs))
@[simp]
theorem
ListSlice.toArray_mkSlice_roc
{α : Type u_1}
{xs : ListSlice α}
{lo hi : Nat}
:
Std.Slice.toArray (Std.Roc.Sliceable.mkSlice xs lo<...=hi) = (Std.Slice.toArray xs).extract (lo + 1) (hi + 1)
@[simp]
theorem
ListSlice.toList_mkSlice_roi_eq_toList_mkSlice_roo
{α : Type u_1}
{xs : ListSlice α}
{lo : Nat}
:
Std.Slice.toList (Std.Roi.Sliceable.mkSlice xs lo<...*) = Std.Slice.toList (Std.Roo.Sliceable.mkSlice xs lo<...Std.Slice.size xs)
theorem
ListSlice.toArray_mkSlice_roi_eq_toArray_mkSlice_roo
{α : Type u_1}
{xs : ListSlice α}
{lo : Nat}
:
Std.Slice.toArray (Std.Roi.Sliceable.mkSlice xs lo<...*) = Std.Slice.toArray (Std.Roo.Sliceable.mkSlice xs lo<...Std.Slice.size xs)
theorem
ListSlice.toList_mkSlice_roi_eq_toList_mkSlice_rco
{α : Type u_1}
{xs : ListSlice α}
{lo : Nat}
:
Std.Slice.toList (Std.Roi.Sliceable.mkSlice xs lo<...*) = Std.Slice.toList (Std.Rco.Sliceable.mkSlice xs (lo + 1)...Std.Slice.size xs)
theorem
ListSlice.toArray_mkSlice_roi_eq_toArray_mkSlice_rco
{α : Type u_1}
{xs : ListSlice α}
{lo : Nat}
:
Std.Slice.toArray (Std.Roi.Sliceable.mkSlice xs lo<...*) = Std.Slice.toArray (Std.Rco.Sliceable.mkSlice xs (lo + 1)...Std.Slice.size xs)
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
theorem
ListSlice.toArray_mkSlice_ric
{α : Type u_1}
{xs : ListSlice α}
{hi : Nat}
:
Std.Slice.toArray (Std.Ric.Sliceable.mkSlice xs *...=hi) = (Std.Slice.toArray xs).extract 0 (hi + 1)
@[simp]