Show simple item record

dc.contributor.advisorAlexander, Perry
dc.contributor.authorAustin, Evan Christopher
dc.date.accessioned2016-01-01T22:24:48Z
dc.date.available2016-01-01T22:24:48Z
dc.date.issued2015-05-31
dc.date.submitted2015
dc.identifier.otherhttp://dissertations.umi.com/ku:14096
dc.identifier.urihttp://hdl.handle.net/1808/19419
dc.description.abstractProperty-directed verification of functional programs tends to take one of two paths. First, is the traditional testing approach, where properties are expressed in the original programming language and checked with a collection of test data. Alternatively, for those desiring a more rigorous approach, properties can be written and checked with a formal tool; typically, an external proof system. This dissertation details a hybrid approach that captures the best of both worlds: the formality of a proof system paired with the native integration of an embedded, domain specific language (EDSL) for testing. At the heart of this hybridization is the titular concept -- a theorem prover as a library. The verification capabilities of this prover, HaskHOL, are introduced to a Haskell development environment as a GHC compiler plugin. Operating at the compiler level provides for a comparatively simpler integration and allows verification to co-exist with the numerous other passes that stand between source code and program.
dc.format.extent171 pages
dc.language.isoen
dc.publisherUniversity of Kansas
dc.rightsCopyright held by the author.
dc.subjectComputer science
dc.subjectFormal Methods
dc.subjectFunctional Programming
dc.subjectHaskell
dc.subjectHaskHOL
dc.subjectHigher-Order Logic
dc.subjectTheorem Proving
dc.titleTheorem Provers as Libraries -- An Approach to Formally Verifying Functional Programs
dc.typeDissertation
dc.contributor.cmtememberGill, Andy
dc.contributor.cmtememberKulkarni, Prasad
dc.contributor.cmtememberAgah, Arvin
dc.contributor.cmtememberVan Vleck, Erik
dc.thesis.degreeDisciplineElectrical Engineering & Computer Science
dc.thesis.degreeLevelPh.D.
dc.rights.accessrightsopenAccess


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record