Changed preservation predicate to use subtyping.