English
Related papers

Related papers: Teaching Programming and Design-by-Contract

200 papers

Choreographies are global descriptions of interactions among concurrent components, most notably used in the settings of verification and synthesis of correct-by-construction software. They require a top-down approach: programmers first…

Programming Languages · Computer Science 2022-05-09 Luis Cruz-Filipe , Kim S. Larsen , Fabrizio Montesi , Larisa Safina

Artificial intelligence has recently experienced remarkable advances, fueled by large models, vast datasets, accelerated hardware, and, last but not least, the transformative power of differentiable programming. This new programming…

Machine Learning · Computer Science 2025-06-25 Mathieu Blondel , Vincent Roulet

We consider the problem of teaching via demonstrations in sequential decision-making settings. In particular, we study how to design a personalized curriculum over demonstrations to speed up the learner's convergence. We provide a unified…

Machine Learning · Computer Science 2021-12-17 Gaurav Yengera , Rati Devidze , Parameswaran Kamalaruban , Adish Singla

The goal of inductive program synthesis is for a machine to automatically generate a program from user-supplied examples. A key underlying assumption is that humans can provide sufficient examples to teach a concept to a machine. To…

Human-Computer Interaction · Computer Science 2025-02-18 Céline Hocquette , Johannes Langer , Andrew Cropper , Ute Schmid

Stepwise refinement and Design-by-Contract are two formal approaches for modelling systems. These approaches are widely used in the development of systems. Both approaches have (dis-)advantages. This thesis aims to answer, is it possible to…

Software Engineering · Computer Science 2016-02-08 Victor Rivera

Large language models (LLMs) and prompt engineering hold significant potential for advancing computer programming education through personalized instruction. This paper explores this potential by investigating three critical research…

Artificial Intelligence · Computer Science 2024-07-09 Tianyu Wang , Nianjun Zhou , Zhixiong Chen

A large amount of recent research has the far-reaching goal of finding training methods for deep neural networks that can serve as alternatives to backpropagation (BP). A prominent example is predictive coding (PC), which is a…

Machine Learning · Computer Science 2022-11-08 Luca Pinchetti , Tommaso Salvatori , Yordan Yordanov , Beren Millidge , Yuhang Song , Thomas Lukasiewicz

This volume contains the post-proceedings of PLACES 2014, the seventh Workshop on Programming Language Approaches to Concurrency and Communication-cEntric Software, which was held in Grenoble, France, on April 12th 2014, and co-located with…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-06-13 Alastair F. Donaldson , Vasco T. Vasconcelos

A learning algorithm based on primary school teaching and learning is presented. The methodology is to continuously evaluate a student and to give them training on the examples for which they repeatedly fail, until, they can correctly…

Artificial Intelligence · Computer Science 2010-12-14 Ninan Sajeeth Philip

Currently, there is a lack of practical, real-world projects on Computer Science (CS) courses at Maynooth University. Generally CS undergraduate modules are composed of 24 hours of lectures and 24 hours of labs where students learn…

Computers and Society · Computer Science 2016-09-27 Susan Bergin , Aidan Mooney

This article addresses the logistics of implementing projects in an undergraduate mathematics class and is intended both for new instructors and for instructors who have had negative experiences implementing projects in the past. Project…

History and Overview · Mathematics 2017-01-06 R. Corban Harwood

This paper examines some methods and ideas underlying the author's successful probabilistic learning systems(PLS), which have proven uniquely effective and efficient in generalization learning or induction. While the emerging principles are…

Artificial Intelligence · Computer Science 2013-04-15 Larry Rendell

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

Training with backpropagation (BP) in standard deep learning consists of two main steps: a forward pass that maps a data point to its prediction, and a backward pass that propagates the error of this prediction back through the network.…

Machine Learning · Computer Science 2022-10-13 Tommaso Salvatori , Luca Pinchetti , Beren Millidge , Yuhang Song , Tianyi Bao , Rafal Bogacz , Thomas Lukasiewicz

We asked students to explain the structure and execution of their small programs after they had submitted them to a programming exercise. These questions about learner's code (QLCs) were delivered at three occasions in an online and open…

Computers and Society · Computer Science 2021-07-06 Teemu Lehtinen , Aleksi Lukkarinen , Lassi Haaranen

Programming ability is one of the most important abilities for the undergraduates majoring in computer science. Taking Yunnan University as an example, the necessity and importance of improving the ability of programming is analyzed in this…

Computers and Society · Computer Science 2025-02-05 Guowu Yuan , Shicai Liu

Key to structured prediction is exploiting the problem structure to simplify the learning process. A major challenge arises when data exhibit a local structure (e.g., are made by "parts") that can be leveraged to better approximate the…

Machine Learning · Statistics 2019-06-03 Carlo Ciliberto , Francis Bach , Alessandro Rudi

This paper shares some experience in advanced mathematical education. We show how a high school student can be naturally and gradually introduced to basic steps of scientific research: developing intuition by finding and correcting mistakes…

History and Overview · Mathematics 2026-03-11 A. Zaslavskiy , A. Skopenkov

Efficient instruction tuning aims to enhance the ultimate performance of large language models (LLMs) trained on a given instruction dataset. Curriculum learning as a typical data organization strategy has shown preliminary effectiveness in…

Computation and Language · Computer Science 2025-11-04 Yangning Li , Tingwei Lu , Yinghui Li , Yankai Chen , Wei-Chieh Huang , Wenhao Jiang , Hui Wang , Hai-Tao Zheng , Philip S. Yu

Partial correctness of imperative or functional programming divides in logic programming into two notions. Correctness means that all answers of the program are compatible with the specification. Completeness means that the program produces…

Logic in Computer Science · Computer Science 2025-08-26 Włodzimierz Drabent