A New Synthesis Tool for Agda

Publicerad

Typ

Examensarbete för masterexamen

Program

Modellbyggare

Tidskriftstitel

ISSN

Volymtitel

Utgivare

Sammanfattning

Agda is a dependently typed functional programming language and proof assistant based on constructive type theory. Agda programmers spend most of their time working with unfinished programs where uncompleted parts are marked by holes. These holes can stand for anything from the core, complex parts of the program to trivial details. To allow programmers to focus on the complex parts of the program, Agda includes a synthesis tool called Agsy that can automatically fill in simple holes. Alas, the development of Agsy has not kept up with the evolution of Agda. Hence, Agsy fails to fill some trivial holes. This report describes a replacement for Agsy, named Mimer. To explain the methods used by Mimer, it also presents synthesis algorithms for two simple languages with meta-variables. The first is a simply typed A-calculus with products and sums. The second is a dependently typed A-calculus.

Beskrivning

Ämne/nyckelord

Citation

Arkitekt (konstruktör)

Geografisk plats

Byggnad (typ)

Byggår

Modelltyp

Skala

Teknik / material

Index

item.page.endorsement

item.page.review

item.page.supplemented

item.page.referenced