Sized types are a modular and theoretically well-understood tool for checking termination of recursive and productivity of corecursive definitions. The essential idea is to track ...
Understanding large software systems is difficult. Traditionally, automated tools are used to assist program understanding. However, the representations constructed by these tool...
We present Haskell libraries that statically ensure the safe use of resources such as file handles. We statically prevent accessing an already closed handle or forgetting to clos...
Abstract. We introduce a uniform framework for reasoning about infinitestate systems with unbounded control structures and unbounded data domains. Our framework is based on constr...
Ahmed Bouajjani, Peter Habermehl, Yan Jurski, Miha...
Abstract. A logic-based language is often adopted in systems for pervasive computing, because it provides a convenient way to define rules that change the behavior of the systems d...