Axiomatic Semantics for ADTs