List.drop_append_of_le_length: law of bend-mathlib@0.8.1.0
Import: import bend-mathlib@0.8.1.0/list.bend as List
Lines 1163-1171 of bend-mathlib@0.8.1.0/list.bend: https://jend.leeeet.dev/read.txt?path=bend-mathlib@0.8.1.0/list.bend&start_line=1163&end_line=1171
import Base
import bend-mathlib@0.8.1.0/nat.bend as MNat
# Dropping at most the length of the first part of an append drops only from the first part.
law drop_append_of_le_length:
for -a: Quant
for -A: Kind(a)
for xs: List
for ys: List
for n: Nat
for h: MNat.le(n, List.length(a, A, xs))
{List.drop(a, A, List.append(a, A, xs, ys), n) == List.append(a, A, List.drop(a, A, xs, n), ys) : List}
Uses (9):
https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Empty.absurd
https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List
https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List.append
https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List.drop
https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List.length
https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat
https://jend.leeeet.dev/definition.txt?path=bend-mathlib@0.8.1.0/list.bend&name=drop_zero
https://jend.leeeet.dev/definition.txt?path=bend-mathlib@0.8.1.0/nat.bend&name=internal_false_ne_true
https://jend.leeeet.dev/definition.txt?path=bend-mathlib@0.8.1.0/nat.bend&name=le