Effectively Propositional Higher-Order Functional Programming Journal Article uri icon

Overview

abstract

  • ; Decidable automation is a key feature of program verification tools, which makes them easier for non-expert developers to use and understand. Unfortunately, decidable fragments of logic are very restrictive, and not ideal for the expression of idiomatic programs. The decidable; Extended EPR; fragment, combined with an encoding technique called; relational abstraction; , has seen wide use for its ability to handle both quantifiers and uninterpreted functions. However, the complexity of the relational abstraction encoding, combined with its inherent incompleteness, still poses a significant obstacle to non-experts.; ; In this paper, we show that Extended EPR and relational abstraction can be deployed to achieve decidable, quantified verification within a familiar, principled domain: a higher-order, purely-functional programming language. We observe that, by defining the semantics of our language in terms of partial functions, we obtain a well-behaved, three-valued logic that matches the behavior of the relational abstraction encoding while hiding its complexity. We demonstrate that our prototype implementation can ergonomically replicate EPR-based program verification benchmarks and verify recursive programs on inductive datatypes.

publication date

  • April 10, 2026

Date in CU Experts

  • April 16, 2026 5:07 AM

Full Author List

  • Lewchenko NV; Kim K; Chang B-YE; Kaki G

author count

  • 4

Other Profiles

Electronic International Standard Serial Number (EISSN)

  • 2475-1421

Additional Document Info

start page

  • 1627

end page

  • 1653

volume

  • 10

issue

  • OOPSLA1