fact: Fixpoint insert_bin (n:nat)(t:bin){struct t} : bin := match t with | leaf m => match nat_le_bool n m with | true => node (leaf n)(leaf m) | false => node (leaf m)(leaf n) end | node (leaf m) t' => match nat_le_bool n m with | true => node (leaf n) t | false => node (leaf m)(insert_bin n t') end | t => node (leaf n) t end.
imports: ZArith List Arith Lia Zwf Relations Inverse_Image Transitive_Closure Zdiv