English
Related papers

Related papers: Programming Puzzles

200 papers

In modern software development, developers frequently need to understand code behavior at a glance -- whether reviewing pull requests, debugging issues, or navigating unfamiliar codebases. This ability to reason about dynamic program…

Software Engineering · Computer Science 2026-02-17 Yunkun Wang , Xuanhe Zhang , Junxiao Han , Chen Zhi , Shuiguang Deng

As developers increasingly rely on LLM-generated code summaries for documentation, testing, and review, it is important to study whether these summaries accurately reflect what the program actually does. LLMs often produce confident…

Software Engineering · Computer Science 2026-02-23 Lara Khatib , Micheal Pu , Bogdan Vasilescu , Meiyappan Nagappan

In this lecture I will talk about three mathematical puzzles involving mathematics and computation that have preoccupied me over the years. The first puzzle is to understand the amazing success of the simplex algorithm for linear…

Combinatorics · Mathematics 2018-01-09 Gil Kalai

Program synthesis of general-purpose source code from natural language specifications is challenging due to the need to reason about high-level patterns in the target program and low-level implementation details at the same time. In this…

Machine Learning · Computer Science 2019-11-06 Richard Shin , Miltiadis Allamanis , Marc Brockschmidt , Oleksandr Polozov

Tool use, such as web search, has become a standard capability even in freely available large language models (LLMs). However, existing benchmarks evaluate temporal reasoning mainly in static, non-tool-using settings, which poorly reflect…

Computation and Language · Computer Science 2026-03-24 Zhengxiang Wang , Zeyu Dong

Refactoring is a common practice in software development, aimed at improving the internal code structure in order to make it easier to understand and modify. Consequently, it is often assumed that refactoring makes the code less prone to…

Software Engineering · Computer Science 2025-05-14 Isabella Ferreira , Lawrence Arkoh , Anderson Uchôa , Ana Carla Bibiano , Alessandro Garcia , Wesley K. G. Assunção

The context of this work is specification, detection and ultimately removal of detectable harmful patterns in source code that are associated with defects in design and implementation of software. In particular, we investigate five code…

Software Engineering · Computer Science 2017-04-03 Nicole Vavrová , Vadim Zaytsev

Bridging logical and algorithmic reasoning with modern machine learning techniques is a fundamental challenge with potentially transformative impact. On the algorithmic side, many NP-hard problems can be expressed as integer programs, in…

Machine Learning · Computer Science 2024-12-16 Anselm Paulus , Michal Rolínek , Vít Musil , Brandon Amos , Georg Martius

Unit tests are widely used to check source code quality, but they can be too coarse-grained or ill-suited for testing individual program statements. We introduce inline tests to make it easier to check for faults in statements. We motivate…

Software Engineering · Computer Science 2022-09-15 Yu Liu , Pengyu Nie , Owolabi Legunsen , Milos Gligoric

Program synthesis from incomplete specifications (e.g. input-output examples) has gained popularity and found real-world applications, primarily due to its ease-of-use. Since this technology is often used in an interactive setting,…

Programming Languages · Computer Science 2017-03-13 Vu Le , Daniel Perelman , Oleksandr Polozov , Mohammad Raza , Abhishek Udupa , Sumit Gulwani

Learning to program can be challenging, and providing high-quality and timely support at scale is hard. Generative AI and its products, like ChatGPT, can create a solution for most intro-level programming problems. However, students might…

Computers and Society · Computer Science 2024-05-31 Xinying Hou , Zihan Wu , Xu Wang , Barbara J. Ericson

Programs that respond to asynchronous events are challenging to write; they are difficult to reason about and tricky to test and debug. Because these programs can have a huge space of possible input timings and interleaving, the programmer…

Programming Languages · Computer Science 2019-09-26 Julie L Newcomb , Rastislav Bodik

We propose a new exact approach for solving integer linear programming (ILP) problems which we will call projective splitting algorithms (PSAs). Unlike classical methods for solving ILP problems, PSAs conduct the search for the optimal…

Optimization and Control · Mathematics 2014-04-16 Federico Rodes , Isabel Mendez-Diaz , Paula Zabala

An interesting challenge for the cryptography community is to design authentication protocols that are so simple that a human can execute them without relying on a fully trusted computer. We propose several candidate authentication…

Cryptography and Security · Computer Science 2016-09-13 Jeremiah Blocki , Manuel Blum , Anupam Datta , Santosh Vempala

Multimodal program synthesis, which leverages different types of user input to synthesize a desired program, is an attractive way to scale program synthesis to challenging settings; however, it requires integrating noisy signals from the…

Computation and Language · Computer Science 2021-09-16 Xi Ye , Qiaochu Chen , Isil Dillig , Greg Durrett

Much is promised in relation to AI-supported software development. However, there has been limited evaluation effort in the research domain aimed at validating the true utility of such techniques, especially when compared to human coding…

Software Engineering · Computer Science 2025-01-29 Sherlock A. Licorish , Ansh Bajpai , Chetan Arora , Fanyu Wang , Kla Tantithamthavorn

Measuring plagiarism in programming assignments is an essential task to the educational procedure. This paper discusses the methods of plagiarism and its detection in introductory programming course assignments written in C++. A small…

Computation and Language · Computer Science 2022-05-31 Muhammad Humayoun , Muhammad Adnan Hashmi , Ali Hanzala Khan

High-level synthesis, source-to-source compilers, and various Design Space Exploration techniques for pragma insertion have significantly improved the Quality of Results of generated designs. These tools offer benefits such as reduced…

Software Engineering · Computer Science 2025-03-04 Stéphane Pouget , Louis-Noël Pouchet , Jason Cong

Much algorithmic research in NLP aims to efficiently manipulate rich formal structures. An algorithm designer typically seeks to provide guarantees about their proposed algorithm -- for example, that its running time or space complexity is…

Programming Languages · Computer Science 2025-12-30 Tim Vieira , Ryan Cotterell , Jason Eisner

A longstanding objective in classical planning is to synthesize policies that generalize across multiple problems from the same domain. In this work, we study generalized policy search-based methods with a focus on the score function used…

Artificial Intelligence · Computer Science 2022-04-25 Ryan Yang , Tom Silver , Aidan Curtis , Tomas Lozano-Perez , Leslie Pack Kaelbling