Functional programmers often reason about programs as if they were written in a total language, expecting the results to carry over to non-total (partial) languages. We justify such reasoning. Two languages are defined, one total and one partial, with identical syntax. The semantics of the partial language includes partial and infinite values, and all types are lifted, including the function spaces. A partial equivalence relation (PER) is then defined, the domain of which is the total subset of the partial language. For types not containing function spaces the PER relates equal values, and functions are related if they map related values to related values. It is proved that if two closed terms have the same semantics in the total language...
AbstractFour different programming logics are compared by example. Three are versions of Martin-Löf ...
AbstractWe investigate various equivalence relations between expressions in a first-order functional...
The definition for the notion of a "function" is not cast in stone, but depends upon what we adopt a...
Functional programmers often reason about programs as if they were written in a total language, expe...
This thesis consists of two parts. Both concern reasoning about non-strict functional programming la...
This thesis addresses the problem of avoiding errors in functional programs. The thesis has three pa...
We examine the problem of finding fully abstract translations between programming languages, i.e., t...
We examine the problem of finding fully abstract translations between programming languages, i.e., t...
Abstract A typed program logic LMF for recursive specification and veri-fication is presented. It co...
Abstract —Those programming languages that contain self-interpreters have the added power of reflect...
Programmers don't just have to write programs, they are have to reason about them. Programming langu...
PART I (Partial-valued Languages): In Chapter I we consider modes of sentence composition and ask wh...
The driving idea of functional programming is to make programming more closely related to mathematic...
The significance of functional programming is revealed as that the feasible approach to language ext...
Logic for reasoning about programs must proceed from the programming language semantics. It is our t...
AbstractFour different programming logics are compared by example. Three are versions of Martin-Löf ...
AbstractWe investigate various equivalence relations between expressions in a first-order functional...
The definition for the notion of a "function" is not cast in stone, but depends upon what we adopt a...
Functional programmers often reason about programs as if they were written in a total language, expe...
This thesis consists of two parts. Both concern reasoning about non-strict functional programming la...
This thesis addresses the problem of avoiding errors in functional programs. The thesis has three pa...
We examine the problem of finding fully abstract translations between programming languages, i.e., t...
We examine the problem of finding fully abstract translations between programming languages, i.e., t...
Abstract A typed program logic LMF for recursive specification and veri-fication is presented. It co...
Abstract —Those programming languages that contain self-interpreters have the added power of reflect...
Programmers don't just have to write programs, they are have to reason about them. Programming langu...
PART I (Partial-valued Languages): In Chapter I we consider modes of sentence composition and ask wh...
The driving idea of functional programming is to make programming more closely related to mathematic...
The significance of functional programming is revealed as that the feasible approach to language ext...
Logic for reasoning about programs must proceed from the programming language semantics. It is our t...
AbstractFour different programming logics are compared by example. Three are versions of Martin-Löf ...
AbstractWe investigate various equivalence relations between expressions in a first-order functional...
The definition for the notion of a "function" is not cast in stone, but depends upon what we adopt a...