[\lambda x:list. list] match nil:list with [ nil \Rightarrow nil | (cons x y) \Rightarrow (cons x y) ] ### (* METASENV after disambiguation *) ### (* TERM after disambiguation *) <[x:list]list>Cases nil of nil => nil cons => [x:A][y:list](cons x y) end ### (* TYPE_OF the disambiguated term *) ([x:list]list nil) ### (* REDUCED disambiguated term *) nil