unsafe inductive t | mk : (t → t) → t unsafe def loop' : t → t | (t.mk f) := f (t.mk f) unsafe def loop : t := loop' (t.mk loop')