Original sentence: As the leonardo numbers L(n) grow more slowly than 2n, for any array there will always be an L(n) that is greater than half the size of the array.Because if there is anything left - even a single element - after using two consecutive lenoardo numbers L(x+1) and L(x), We could have combined them to make a larger chunk of size L(x+2).Each heap maintains the heap property that a root node is always >= the root nodes of its child heaps (and therefore >= all nodes in its child heaps), and the string of heaps as a whole maintains the property that the root node of each heap is >= the rood node of the heap to the left.Importantly - an array that is already sorted needs no rearrangement of to be made into a valid series of heaps.The consequence of this is that the largest node in any of the heaps will always be the rightmost node.This is simple: the smallest L(0) is 1
Edited sentence: Each heap maintains the heap property that a root node is always >= the root nodes of its child heaps (and therefore >= all nodes in its child heaps), and the string of heaps as a whole maintains the string property that the root node of each heap is >= the root node of the heap to the left.Proof: The leonardo numbers L(n) grow more slowly than 2n, and so for any array there will always be an L(n) that is greater than half the size of the array.Proof: if there is anything left - even a single element - after using two consecutive lenoardo numbers L(x+1) and L(x), we could have combined them to make a larger chunk of size L(x+2).Proof: trivially - the smallest L(0) is 1.Since we didn't, there can be nothing left after two heaps of size L(x+1) and L(x).The consequence of this is that the rightmost node in the string will always be >= all of the other nodes, and importantly - an array that is already sorted needs no rearrangement of to be made into a valid series of heaps.The exception is the array of size 2, but can be divided into two heaps of size L(1) and L(0), which are both 1 by definition