Abstract: 
Among the various mathematical tools introduced in his outstanding work on
Communicating Sequential Processes, Hoare has defined "interleaves" as the
predicate satisfied by any three lists such that the first list may be
split into sublists alternately extracted from the other two ones, whatever
is the criterion for extracting an item from either one list or the other
in each step.
This paper enriches Hoare's definition by identifying such criterion with
the truth value of a predicate taking as inputs the head and the tail of
the first list. This enhanced "interleaves" predicate turns out to permit
the proof of equalities between lists without the need of an induction.
Some rules that allow to infer "interleaves" statements without induction,
particularly applying to the addition or removal of a prefix to the input
lists, are also proven. Finally, a stronger version of the predicate, named
"Interleaves", is shown to fulfil further rules applying to the addition or
removal of a suffix to the input lists.

BibTeX: 
@article{List_InterleavingAFP,
author = {Pasquale Noce},
title = {Reasoning about Lists via List Interleaving},
journal = {Archive of Formal Proofs},
month = jun,
year = 2015,
note = {\url{http://isaafp.org/entries/List_Interleaving.shtml},
Formal proof development},
ISSN = {2150914x},
}
