List.take_append_drop_sym: law of bend-mathlib@0.8.1.0
Import: import bend-mathlib@0.8.1.0/list.bend as List
Lines 2227-2233 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=2227&end_line=2233
import Base
# Taking n elements and appending the rest after dropping n gives the list back, reversed to rewrite toward the simple side.
law take_append_drop_sym:
for -a: Quant
for -A: Kind(a)
for xs: List
for n: Nat
{xs == List.append(a, A, List.take(a, A, xs, n), List.drop(a, A, xs, n)) : List}
Uses (7):
https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.sym
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.take
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=take_append_drop