Finding and Fixing Bugs in Liquid Haskell

  title={Finding and Fixing Bugs in Liquid Haskell},
  author={A. Tondwalkar},
  • A. Tondwalkar
  • Published 2016
  • Dependent types provide strong guarantees but can be hard to program, admitting mistakes in the implementation as well as the specification. We present algorithms for resolving verification failures by both finding bugs in implementations and also completing annotations in the refinement type framework. We present a fault localization algorithm for finding likely bug locations when verification failure stems from a bug in the implementation. We use the type checker as an oracle to search for a… CONTINUE READING
    2 Citations

    Figures and Tables from this paper


    Cause clue clauses: error localization using maximum satisfiability
    • 205
    • PDF
    Liquid types
    • 299
    • PDF
    Toward general diagnosis of static errors
    • 41
    • PDF
    Finding minimum type error sources
    • 29
    • PDF
    From symptom to cause: localizing errors in counterexample traces
    • 316
    • PDF
    Seminal: searching for ML type-error messages
    • 33
    • PDF
    Explaining Type Inference
    • 90
    Finding the source of type errors
    • M. Wand
    • Computer Science
    • POPL '86
    • 1986
    • 135
    Refinement types for ML
    • 411
    • PDF