2022
DOI: 10.4204/eptcs.363.5
|View full text |Cite
|
Sign up to set email alerts
|

Teaching Functional Programmers Logic and Metatheory

Abstract: We present a novel approach for teaching logic and the metatheory of logic to students who have some experience with functional programming. We define concepts in logic as a series of functional programs in the language of the proof assistant Isabelle/HOL. This allows us to make notions which are often unclear in textbooks precise, to experiment with definitions by executing them, and to prove metatheoretical theorems in full detail. We have surveyed student perceptions of our teaching approach to determine it… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
3

Citation Types

0
3
0

Year Published

2023
2023
2023
2023

Publication Types

Select...
1

Relationship

1
0

Authors

Journals

citations
Cited by 1 publication
(3 citation statements)
references
References 15 publications
0
3
0
Order By: Relevance
“…The second and fifth author have previously conducted a study of student experiences using Isabelle, but our methods suffered from a lack of data on actual student behavior and interactions when using the proof assistant [18]. Knobelsdorf et al limited themselves to manually observing student behavior and categorizing the types of questions asked by students [21].…”
Section: Using Proof Assistants In Educationmentioning
confidence: 99%
See 2 more Smart Citations
“…The second and fifth author have previously conducted a study of student experiences using Isabelle, but our methods suffered from a lack of data on actual student behavior and interactions when using the proof assistant [18]. Knobelsdorf et al limited themselves to manually observing student behavior and categorizing the types of questions asked by students [21].…”
Section: Using Proof Assistants In Educationmentioning
confidence: 99%
“…• Proof assistants are useful for teaching mathematics [2,4,10,11,17] • Proof assistants are useful for teaching functional programming [4,5,17,18,21,26] • Proof assistants are useful for teaching logic [2,4,5,8,15,17,18,21,26,34,36,41] • Proof assistants are useful for teaching abstract thinking [4,11,34,36] • Proof assistants make the rules of formal reasoning clear [2,4,11] • Proof assistants help students learn how to structure proofs [4,5,8,10,11,17,19,21,31] • Students are helped by instant feedback on their proofs [2, 4, 8, 10-12, 15, 21, 26] • Proof competence gained using a proof assistant transfers to pen-and-paper [2,12,26,34] • Proof assistants help students fix their proof errors as early as possible [4,11] • Proof assistants make it easier for stude...…”
Section: Claimed Benefits and Drawbacks Of Using Proof Assistants In ...mentioning
confidence: 99%
See 1 more Smart Citation