English
Related papers

Related papers: A Bridge Anchored on Both Sides: Formal Deduction …

200 papers

Primitive recursion is a mature, well-understood topic in the theory and practice of programming. Yet its dual, primitive corecursion, is underappreciated and still seen as exotic. We aim to put them both on equal footing by giving a…

Programming Languages · Computer Science 2021-03-16 Paul Downen , Zena M. Ariola

The traditional view of evidence in mathematics is that evidence is just proof and proof is just derivation. There are good reasons for thinking that this view should be rejected: it misrepresents both historical and current mathematical…

History and Overview · Mathematics 2019-09-11 Andrew Aberdein

We extract verified algorithms for exact real number computation from constructive proofs. To this end we use a coinductive representation of reals as streams of binary signed digits. The main objective of this paper is the formalisation of…

Logic · Mathematics 2023-06-22 Franziskus Wiesnet , Nils Köpp

What kind of problem-solving instruction can help students apply what they have learned to solve the new and unfamiliar problems they will encounter in the future? We propose that mathematical sensemaking, the practice of seeking coherence…

Physics Education · Physics 2020-08-05 Eric Kuo , Michael M. Hull , Andrew Elby , Ayush Gupta

Contribution: This study examined student effort and performance in an introductory programming course with respect to student-held implicit theories and self-efficacy. Background: Implicit theories and self-efficacy shed a light into…

Computers and Society · Computer Science 2018-09-03 F. Boray Tek , Kristin S. Benli , Ezgi Deveci

This paper investigates how high school students approach computing through an introductory computer science course situated in the Logic Programming (LP) paradigm. This study shows how novice students operate within the LP paradigm while…

Computers and Society · Computer Science 2017-06-29 Timothy Yuen , Maritz Reyes , Yuanlin Zhang

Introductory programming courses often rely on small code-writing exercises that have clearly specified problem statements. This limits opportunities for students to practice how to clarify ambiguous requirements -- a critical skill in…

Human-Computer Interaction · Computer Science 2025-04-17 Paul Denny , Viraj Kumar , Stephen MacNeil , James Prather , Juho Leinonen

The design of any technical Computer Science course must involve its context within the institution's CS program, but also incorporate any new material that is relevant and appropriately accessible to students. In many institutions, theory…

Computers and Society · Computer Science 2023-11-15 Ryan E. Dougherty

These are the notes for a 5-lecture-course given at ESSLLI 2006 in Malaga, Spain. The URL of the school is http://esslli2006.lcc.uma.es/ . This version slightly differs from the one which has been distributed at the school because typos…

Logic in Computer Science · Computer Science 2007-05-23 Lutz Strassburger

In this paper we describe our experience in developing curriculum courses aimed at graduate students in emerging computational fields, including biology and medical science. We focus primarily on computational data analysis and statistical…

Computers and Society · Computer Science 2019-01-18 Marcelo Ponce , Erik Spence , Ramses van Zon , Daniel Gruner

We introduce a generalized logic programming paradigm where programs, consisting of facts and rules with the usual syntax, can be enriched by co-facts, which syntactically resemble facts but have a special meaning. As in coinductive logic…

Programming Languages · Computer Science 2017-09-26 Davide Ancona , Francesco Dagnino , Elena Zucca

This study examined the impact of Code.org's block-based coding curriculum on primary school students' computational thinking, motivation, attitudes, and academic performance. Twenty students participated, and a range of tools was used: the…

Human-Computer Interaction · Computer Science 2024-12-20 Wan Chong Choi , Iek Chong Choi

A logic program is an executable specification. For example, merge sort in pure Prolog is a logical formula, yet shows creditable performance on long linked lists. But such executable specifications are a compromise: the logic is distorted…

Programming Languages · Computer Science 2015-09-29 M. H. van Emden

We commonly think of mathematics as bringing precision to application domains, but its relationship with computer science is more complex. This experience report on the use of Racket and Haskell to teach a required first university CS…

Programming Languages · Computer Science 2013-01-23 Prabhakar Ragde

Proof search has been used to specify a wide range of computation systems. In order to build a framework for reasoning about such specifications, we make use of a sequent calculus involving induction and co-induction. These proof principles…

Logic in Computer Science · Computer Science 2009-09-30 Alwen Tiu , Alberto Momigliano

This invited paper is a passionate pitch for the significance of logic in scientific education. Logic helps focus on the essential core to identify the foundations of ideas and provides corresponding longevity with the resulting approach to…

Logic in Computer Science · Computer Science 2024-09-16 André Platzer

An introductory programming course (CS1) is an integral part of any undergraduate curriculum. Due to large number and diverse programming background of students, providing timely and personalised feedback to individual students is a…

Computers and Society · Computer Science 2017-02-03 Rajdeep Das , Umair Z. Ahmed , Amey Karkare , Sumit Gulwani

Many students in introductory programming courses fare poorly in the code writing tasks of the final summative assessment. Such tasks are designed to assess whether novices have developed the analytical skills to translate from the given…

Software Engineering · Computer Science 2024-04-04 Shruthi Ravikumar , Margaret Hamilton , Charles Thevathayan , Maria Spichkova , Kashif Ali , Gayan Wijesinghe

Clausal Language (CL) is a declarative programming and verifying system used in our teaching of computer science. CL is an implementation of, what we call, $\mathit{PR}{+}I\Sigma_1$ paradigm (primitive recursive functions with…

Logic in Computer Science · Computer Science 2019-10-03 Ján Komara , Paul J. Voda

We propose a bridge between functional and object-oriented programming in the first-year curriculum. Traditionally, curricula that begin with functional programming transition to a professional, usually object-oriented, language in the…

Programming Languages · Computer Science 2013-12-11 Sam Tobin-Hochstadt , David Van Horn