Adding recursive types to the subtyping rules