{"title":"建立程序设计与证明写作之间的联系","authors":"Steve Earth","doi":"10.1145/3478432.3499244","DOIUrl":null,"url":null,"abstract":"This talk introduces an ongoing study which began Summer 2021. We emulate proof writing in novice programmers by having them explain their solution to logic puzzles in the first week of an intro course, as this contains many of the skills used in proof writing without requiring any prerequisite knowledge of mathematical structures. An isomorphic question is asked at the conclusion and checked for improvement. We correlate with their performance in the cs class. To ensure that the improvement is related to the cs course material, other factors (prior math courses, GPA et al) are controlled. Computer science majors typically cover material in logic and proof, either as part of programming course, or as a separate computer class. Conventional wisdom would hold that there are a variety of overlapping skill sets between the subject of logic/proof and writing efficient error-free code, and so instructors rely on this intuition to justify introducing (and in fact frequently requiring) this content to introductory programmers. Our study checks for transfer of skills between computer science and proof writing, as no approach to these logic problems is ever directly a part of the content matter in the computer class. Early results of isomorphic questioning from the start and end of the summer quarter indicate a highly statistically significant correlation, even controlling for other factors such as mathematical background and academic strength.","PeriodicalId":113773,"journal":{"name":"Proceedings of the 53rd ACM Technical Symposium on Computer Science Education V. 2","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-03-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Establishing a Connection between Programming and Proof Writing\",\"authors\":\"Steve Earth\",\"doi\":\"10.1145/3478432.3499244\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"This talk introduces an ongoing study which began Summer 2021. We emulate proof writing in novice programmers by having them explain their solution to logic puzzles in the first week of an intro course, as this contains many of the skills used in proof writing without requiring any prerequisite knowledge of mathematical structures. An isomorphic question is asked at the conclusion and checked for improvement. We correlate with their performance in the cs class. To ensure that the improvement is related to the cs course material, other factors (prior math courses, GPA et al) are controlled. Computer science majors typically cover material in logic and proof, either as part of programming course, or as a separate computer class. Conventional wisdom would hold that there are a variety of overlapping skill sets between the subject of logic/proof and writing efficient error-free code, and so instructors rely on this intuition to justify introducing (and in fact frequently requiring) this content to introductory programmers. Our study checks for transfer of skills between computer science and proof writing, as no approach to these logic problems is ever directly a part of the content matter in the computer class. Early results of isomorphic questioning from the start and end of the summer quarter indicate a highly statistically significant correlation, even controlling for other factors such as mathematical background and academic strength.\",\"PeriodicalId\":113773,\"journal\":{\"name\":\"Proceedings of the 53rd ACM Technical Symposium on Computer Science Education V. 2\",\"volume\":\"1 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2022-03-03\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the 53rd ACM Technical Symposium on Computer Science Education V. 2\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/3478432.3499244\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 53rd ACM Technical Symposium on Computer Science Education V. 2","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3478432.3499244","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Establishing a Connection between Programming and Proof Writing
This talk introduces an ongoing study which began Summer 2021. We emulate proof writing in novice programmers by having them explain their solution to logic puzzles in the first week of an intro course, as this contains many of the skills used in proof writing without requiring any prerequisite knowledge of mathematical structures. An isomorphic question is asked at the conclusion and checked for improvement. We correlate with their performance in the cs class. To ensure that the improvement is related to the cs course material, other factors (prior math courses, GPA et al) are controlled. Computer science majors typically cover material in logic and proof, either as part of programming course, or as a separate computer class. Conventional wisdom would hold that there are a variety of overlapping skill sets between the subject of logic/proof and writing efficient error-free code, and so instructors rely on this intuition to justify introducing (and in fact frequently requiring) this content to introductory programmers. Our study checks for transfer of skills between computer science and proof writing, as no approach to these logic problems is ever directly a part of the content matter in the computer class. Early results of isomorphic questioning from the start and end of the summer quarter indicate a highly statistically significant correlation, even controlling for other factors such as mathematical background and academic strength.