HackerPapers

arXiv:2205.11695cs.LO

Using ACL2 To Teach Students About Software Testing

Ruben Gamboa, Alicia Thoney

HN submission. Found in a submission link or body. Submitters do not count as commenters in the main ranking; a submission is not an endorsement.

Abstract

We report on our experience using ACL2 in the classroom to teach students about software testing. The course COSC2300 at the University of Wyoming is a mostly traditional Discrete Mathematics course, but with a clear focus on computer science applications. For instance, the section on logic and proofs is motivated by the desire to write proofs about computer software. We emphasize that the importance of software correctness falls along a spectrum with casual programs on one end and mission-critical ones on the other. Corresponding to this spectrum is a variety of tools, ranging from unit tests, randomized testing of properties, and even formal proofs. In this paper, we describe one of the major activities, in which students use the ACL2 Sedan's counter-example generation facility to investigate properties of various existing checksum algorithms used in error detection. Students are challenged to state the relevant properties correctly, so that the counter-example generation tool is used effectively in all cases, and ACL2 can find formal proofs automatically in some of those.

arXiv comments
In Proceedings ACL2 2022, arXiv:2205.11103
Journal reference
EPTCS 359, 2022, pp. 19-32
DOI
doi:10.4204/EPTCS.359.4
Subjects
cs.LOLogic in Computer Science cs.DMDiscrete Mathematics

On Hacker News

No comments linking this paper were found in the collected sources. Found in 1 HN submission from May 2022 to May 2022. Open submission discussions.

Comments linking this paper, per year.

Discussed in comments0 threads

No comments linking this paper were found in the collected sources. Open submission discussions.

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.