TY - GEN
T1 - Friends with benefits
T2 - 26th European Symposium on Programming, ESOP 2017 held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2017
AU - Blanchette, Jasmin Christian
AU - Bouzy, Aymeric
AU - Lochbihler, Andreas
AU - Popescu, Andrei
AU - Traytel, Dmitriy
PY - 2017
Y1 - 2017
N2 - We introduce AmiCo, a tool that extends a proof assistant, Isabelle/HOL, with flexible function definitions well beyond primitive corecursion. All definitions are certified by the assistant’s inference kernel to guard against inconsistencies. A central notion is that of friends: functions that preserve the productivity of their arguments and that are allowed in corecursive call contexts. As new friends are registered, corecursion benefits by becoming more expressive. We describe this process and its implementation, from the user’s specification to the synthesis of a higher-order definition to the registration of a friend. We show some substantial case studies where our approach makes a difference.
AB - We introduce AmiCo, a tool that extends a proof assistant, Isabelle/HOL, with flexible function definitions well beyond primitive corecursion. All definitions are certified by the assistant’s inference kernel to guard against inconsistencies. A central notion is that of friends: functions that preserve the productivity of their arguments and that are allowed in corecursive call contexts. As new friends are registered, corecursion benefits by becoming more expressive. We describe this process and its implementation, from the user’s specification to the synthesis of a higher-order definition to the registration of a friend. We show some substantial case studies where our approach makes a difference.
UR - http://www.scopus.com/inward/record.url?scp=85018662884&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85018662884&partnerID=8YFLogxK
U2 - 10.1007/978-3-662-54434-1_5
DO - 10.1007/978-3-662-54434-1_5
M3 - Conference contribution
AN - SCOPUS:85018662884
SN - 9783662544334
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 111
EP - 140
BT - Programming Languages and Systems
A2 - Yang, Hongseok
PB - Springer/Verlag
Y2 - 22 April 2017 through 29 April 2017
ER -