BinaryTree (E, T):[Table of Contents] [Index]trait% One of the many interesting tree structuresintroduces[__]: E -> T [__, __]: T, T -> T content: T -> E first, second: T -> T isLeaf: T -> BoolassertsTgeneratedby[__], [__, __] Tpartitionedbycontent, first, second, isLeafforalle: E, t1, t2: T content([e]) == e; first([t1, t2]) == t1; second([t1, t2]) == t2; isLeaf([e]); ~isLeaf([t1, t2])impliesconvertsisLeaf