Integrating ADTs in KeY and their application to history-based reasoning about collection