2000 character limit reached
Balancing lists: a proof pearl (1401.7886v2)
Published 30 Jan 2014 in cs.DS and cs.LO
Abstract: Starting with an algorithm to turn lists into full trees which uses non-obvious invariants and partial functions, we progressively encode the invariants in the types of the data, removing most of the burden of a correctness proof. The invariants are encoded using non-uniform inductive types which parallel numerical representations in a style advertised by Okasaki, and a small amount of dependent types.
Collections
Sign up for free to add this paper to one or more collections.