wenkokke/AutoInAgda

Proof automation – for Agda, in Agda.

Agda

46

207 commits

updated Sep 7, 2020

See the code

README

Auto In Agda

Abstract

As proofs in type theory become increasingly complex, there is a growing need to provide better proof automation. This paper shows how to implement a Prolog-style resolution procedure in the dependently typed programming language Agda. Connecting this resolution procedure to Agda's reflection mechanism provides a first-class proof search tactic for first-order Agda terms. Furthermore, the same mechanism may be used in tandem with Agda's instance arguments to implement type classes in the style of Haskell. As a result, writing proof automation tactics need not be different from writing any other program.

Technical Details

This repository contains the sources for the Auto In Agda. The paper sub-directory contains the literate Agda files that make up the paper. The code sub-directory contains the Agda source code.

Some notes:

agda
no-longer-maintained
paper
proof-assistant
proof-automation

Contributors

wenkokke

204 commits

JoeyEremondi

2 commits

ysangkok

1 commits

Languages

Agda

96.6%

Ruby

3.4%

wenkokke/AutoInAgda

Proof automation – for Agda, in Agda.

Agda

46

207 commits

updated Sep 7, 2020

See the code

README

Auto In Agda

Abstract

As proofs in type theory become increasingly complex, there is a growing need to provide better proof automation. This paper shows how to implement a Prolog-style resolution procedure in the dependently typed programming language Agda. Connecting this resolution procedure to Agda's reflection mechanism provides a first-class proof search tactic for first-order Agda terms. Furthermore, the same mechanism may be used in tandem with Agda's instance arguments to implement type classes in the style of Haskell. As a result, writing proof automation tactics need not be different from writing any other program.

Technical Details

This repository contains the sources for the Auto In Agda. The paper sub-directory contains the literate Agda files that make up the paper. The code sub-directory contains the Agda source code.

Some notes:

agda
no-longer-maintained
paper
proof-assistant
proof-automation

Contributors

wenkokke

204 commits

JoeyEremondi

2 commits

ysangkok

1 commits

Languages

Agda

96.6%

Ruby

3.4%