Sign In

Communications of the ACM

Latest Research



From Communications of the ACM

Technical Perspective: Designing Algorithms and the Fairness Criteria They Should Satisfy

"Which Is the Fairest (Rent Division) of Them All?" focuses on the problem of rent division, and stands out in the variety of techniques applied to arrive at a...

Which Is the Fairest (Rent Division) of Them All?
From Communications of the ACM

Which Is the Fairest (Rent Division) of Them All?

What is a fair way to assign rooms to several housemates, and divide the rent between them? We develop a general algorithmic framework that enables the computation...

From Communications of the ACM

Technical Perspective: Building Bug-Free Compilers

What to do about buggy compilers? The authors of "Practical Verification of Peephole Optimizations with Alive" give us a compelling and practical answer.

Practical Verification of Peephole Optimizations with Alive
From Communications of the ACM

Practical Verification of Peephole Optimizations with Alive

We created Alive, a domain-specific language for writing correct peephole optimizations and for automatically either proving them correct or else generating counterexamples...

From Communications of the ACM

Technical Perspective: Moving Spectrum

The incentive auction scenario provides the backdrop for the breathtaking research contribution presented by Newman et al. in "Deep Optimization for Spectrum Repacking...

Deep Optimization For Spectrum Repacking
From Communications of the ACM

Deep Optimization For Spectrum Repacking

This paper describes the process by which we built the SAT-based Feasibility Checker, a crucial element of the 2016-17 U.S. FCC "incentive auction" design.

From Communications of the ACM

Technical Perspective: A Simple, Elegant Approach to Non-Numeric Parallelization

"Automatically Accelerating Non-Numerical Programs by Architecture-Compiler Co-Design," by Simone Campanoni, et al., proposes a modest hardware extension to support...

Automatically Accelerating Non-Numerical Programs By Architecture-Compiler Co-Design
From Communications of the ACM

Automatically Accelerating Non-Numerical Programs By Architecture-Compiler Co-Design

HELIX-RC is a compiler/microprocessor co-design that opens loops to parallelization by decoupling communication from thread execution in conventional multicore...

From Communications of the ACM

Technical Perspective: Exploring a Kingdom By Geodesic Measures

"The Heat Method for Distance Computation," by Crane, Weischedel, and Wardetzky, shows that the gradient of the probability density function of a random walk is...

The Heat Method For Distance Computation
From Communications of the ACM

The Heat Method For Distance Computation

We introduce the heat method for solving the single- or multiple-source shortest path problem on both flat and curved domains.

From Communications of the ACM

Technical Perspective: Solving Imperfect Information Games

"Heads-Up Limit Hold'em Poker Is Solved," by Michael Bowling, et al., takes the counterfactual regret minimization method for approximating a Nash equilibrium to...

Heads-Up Limit Hold'em Poker Is Solved
From Communications of the ACM

Heads-Up Limit Hold'em Poker Is Solved

This paper is an extended version of our original 2015 Science article, with additional results showing Cepheus' in-game performance against computer and human...

From Communications of the ACM

Technical Perspective: Shedding New Light on an Old Language Debate

"A Large-Scale Study of Programming Languages and Code Quality in GitHub," by Baishakhi Ray, et al., studies whether programming language choice and code quality...

A Large-Scale Study of Programming Languages and Code Quality in Github
From Communications of the ACM

A Large-Scale Study of Programming Languages and Code Quality in Github

What is the effect of programming languages on software quality? In this study, we gather a very large data set from GitHub in an attempt to shed some empirical...

From Communications of the ACM

Technical Perspective: Unexpected Connections

The inherent scalability of an interface is the focus of "The Scalable Commutativity Rule" by Austin T. Clements, et al.

The Scalable Commutativity Rule
From Communications of the ACM

The Scalable Commutativity Rule: Designing Scalable Software For Multicore Processors

This paper introduces an interface-driven approach to building scalable software.

From Communications of the ACM

Technical Perspective: Ironfleet Simplifies Proving Safety and Liveness Properties

"IronFleet: Proving Safety and Liveness of Practical Distributed Systems," by Chris Hawblitzel, et al., describes mechanically checked proofs for two non-trivial...

Ironfleet
From Communications of the ACM

Ironfleet: Proving Safety and Liveness of Practical Distributed Systems

We demonstrate the methodology on a complex implementation of a Paxos-based replicated state machine library and a lease-based sharded key-value store. With our...

From Communications of the ACM

Technical Perspective: Building a Better Hash Function

In "Fast and Powerful Hashing Using Tabulation," Mikkel Thorup describes a variation of simple but surprisingly effective and powerful hash functions based on using...

Fast and Powerful Hashing Using Tabulation
From Communications of the ACM

Fast and Powerful Hashing Using Tabulation

We survey recent results on how simple hashing schemes based on tabulation provide unexpectedly strong guarantees.
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account