``` locality alice type t type s = t type t = s def main(x : t) @ alice : Unit = let y : t = x in () ``` The above code loops the type checker. We need to do a dependency analysis to ensure the absence of cycles.