removeMinTree (rt:rts) = do
  (rt', rts') <- removeMinTree rts
  if root rt < root rt' then return (rt, rts) else return (rt', rt:rts')
removeMinTree (rt:rts) = do
  (rt', rts') <- removeMinTree rts
  if root rt < root rt' then return (rt, rts) else return (rt', rt:rts')
removeMinTree (rt:rts) = do
  (rt', rts') <- removeMinTree rts
  if root rt < root rt' then return (rt, rts) else return (rt', rt:rts')