Dissertation/Thesis Abstract

Functional programming with logical frameworks
by Poswolsky, Adam Brett, Ph.D., Yale University, 2008, 534; 3342732
Abstract (Summary)

Logical frameworks are languages used to represent information. In this dissertation we present the Delphin programming language, which is a functional programming language with a logical framework supporting both higher-order abstract syntax and dependent types. Higher-order abstract syntax, or HOAS, refers to the technique of representing variables of an object language using variables of a meta-language, which leads to more concise and elegant encodings than first, order alternatives. Dependent types allow one to represent complex data (such as derivations in various logics) and enforce more properties of programs than possible using only simple types.

Delphin is not only a useful programming language but also a useful system for formalizing proofs as total functions express proofs that the input entails the output. Just as representations using HOAS free the programmer from concerns of handling explicit contexts and substitutions, our system permits computation and reasoning over such encodings without making these constructs explicit, leading to concise and elegant programs. Delphin is a two-level system distinguishing functions used for representation from functions expressing computation. The ability to perform computation over higher-order data is driven by a construct allowing the dynamic introduction of scoped constants, which we call parameters.

We motivate our system with examples of translating derivations between logics and converting between higher-order and first-order representations of data. The Delphin website can be reached at http://www.delphin.logosphere.org.

Indexing (document details)
Advisor: Schuermann, Carsten
Commitee:
School: Yale University
School Location: United States -- Connecticut
Source: DAI-B 70/01, Dissertation Abstracts International
Source Type: DISSERTATION
Subjects: Computer science
Keywords: Delphin, Functional programming, Higher-order abstract syntax
Publication Number: 3342732
ISBN: 9780549978046
Copyright © 2019 ProQuest LLC. All rights reserved. Terms and Conditions Privacy Policy Cookie Policy
ProQuest