A framework for defining logics
Journal of the ACM (JACM)
Tabled higher-order logic programming
Tabled higher-order logic programming
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
ACM Transactions on Computational Logic (TOCL)
Combining Generic Judgments with Recursive Definitions
LICS '08 Proceedings of the 2008 23rd Annual IEEE Symposium on Logic in Computer Science
Practical programming with higher-order encodings and dependent types
ESOP'08/ETAPS'08 Proceedings of the Theory and practice of software, 17th European conference on Programming languages and systems
The ∇-calculus. functional programming with higher-order encodings
TLCA'05 Proceedings of the 7th international conference on Typed Lambda Calculi and Applications
Programming inductive proofs: a new approach based on contextual types
Verification, induction termination analysis
Programming inductive proofs: a new approach based on contextual types
Verification, induction termination analysis
Programming with binders and indexed data-types
POPL '12 Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Beluga: programming with dependent types, contextual data, and contexts
FLOPS'10 Proceedings of the 10th international conference on Functional and Logic Programming
Beluga: a framework for programming and reasoning with deductive systems (system description)
IJCAR'10 Proceedings of the 5th international conference on Automated Reasoning
Reasoning with higher-order abstract syntax and contexts: a comparison
ITP'10 Proceedings of the First international conference on Interactive Theorem Proving
Compiling contextual objects: bringing higher-order abstract syntax to programmers
PLPV '13 Proceedings of the 7th workshop on Programming languages meets program verification
Copatterns: programming infinite structures by observations
POPL '13 Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Hi-index | 0.00 |
We discuss coverage checking for data that is dependently typed and is defined using higher-order abstract syntax. Unlike previous work on coverage checking for closed data, we consider open data which may depend on some context. Our work may therefore provide insight into coverage checking in Twelf, and serve as a basis for coverage checking in functional languages such as Delphin and Beluga. More generally, our work is a foundation for proofs by case analysis in systems that reason about higher-order abstract syntax.