We investigate how, in a natural deduction setting, we can specify concisely a wide variety of tasks that manipulate programs as data objects. This study will provide us with a better understanding of various kinds of manipulations of programs and also an operational understanding of numerous features and properties of a rich functional programming language. We present a technique, inspired by structural operational semantics and natural semantics, for specifying properties of, or operations on, programs. Specifications of this sort are presented as sets of inference rules and are encoded as clauses in a higher-order, intuitionistic meta-logic. Program properties are then proved by constructing proofs in this meta-logic. We argue the follow...
We consider the problem of automatically verifying programs that manipulate a dynamic heap, maintain...
Systems built for automated program construction aim at the formalization of the programming process...
Often, calculi for manipulating and reasoning about programs can be recast as calculi for synthesizi...
In this dissertation we study a higher-order intuitionistic logic used as a specification language f...
Various meta-languages for the manipulation and specification of programs and programming languages ...
Various meta-languages for the manipulation and specification of programs and programming languages ...
It is often claimed that functional programming languages, and in particular pure functional langua...
We propose a new approach to computer-assisted verification of lazy functional programs where funct...
Processing programs as data is one of the successes of functional and logic programming. Higher-orde...
International audienceThe earliest and most popular use of logic in computer science views computati...
Software is ubiquitous in nearly all aspects of human life, including safety-critical activities. It...
Operational semantics provide a simple, high-level and elegant means of specifying interpreters for ...
Meta-programming extends logic programming with the possibility of having a program to create or ana...
University of Minnesota Ph.D. dissertation.December 2016. Major: Computer Science. Advisor: Gopalan...
Nowadays, in many critical situations (such as on-board software), it is manda-tory to certify progr...
We consider the problem of automatically verifying programs that manipulate a dynamic heap, maintain...
Systems built for automated program construction aim at the formalization of the programming process...
Often, calculi for manipulating and reasoning about programs can be recast as calculi for synthesizi...
In this dissertation we study a higher-order intuitionistic logic used as a specification language f...
Various meta-languages for the manipulation and specification of programs and programming languages ...
Various meta-languages for the manipulation and specification of programs and programming languages ...
It is often claimed that functional programming languages, and in particular pure functional langua...
We propose a new approach to computer-assisted verification of lazy functional programs where funct...
Processing programs as data is one of the successes of functional and logic programming. Higher-orde...
International audienceThe earliest and most popular use of logic in computer science views computati...
Software is ubiquitous in nearly all aspects of human life, including safety-critical activities. It...
Operational semantics provide a simple, high-level and elegant means of specifying interpreters for ...
Meta-programming extends logic programming with the possibility of having a program to create or ana...
University of Minnesota Ph.D. dissertation.December 2016. Major: Computer Science. Advisor: Gopalan...
Nowadays, in many critical situations (such as on-board software), it is manda-tory to certify progr...
We consider the problem of automatically verifying programs that manipulate a dynamic heap, maintain...
Systems built for automated program construction aim at the formalization of the programming process...
Often, calculi for manipulating and reasoning about programs can be recast as calculi for synthesizi...