def internal_apply_app
import bend-mathlib@0.8.1.0/perm.bend as Permimport Base
import bendlib-kernel-list@1.0.0.0/list.bend as K
13def internal_apply_app(-A: Data, +s1: List<&2, Nat>, +s2: List<&2, Nat>, +xs: List<&2, A>) -> {K.apply(A, List.append(&2, Nat, s1, s2), xs) == K.apply(A, s2, K.apply(A, s1, xs)) : List<&2, A>}:
14 match s1:
15 case Nil{}:
16 {==}
17 case +i <> rest:
18 internal_apply_app(A, rest, s2, K.swap_at(A, i, xs))