• α( 〈 items, limit 〉 ) = 〈 mk_set( items ), limit 〉 where
    mk_set( ε ) = ∅
    mk_set( e ·s ) = mk_set(s) \uplus {e}


  • ρ( push ) = put, ρ( pop ) = get

  • ξ(s.settop(i)) = s.pop(); s.push(i)

slide: Behavioral subtypes -- correspondence