acm-header
Sign In

Communications of the ACM

Latest Research



From Communications of the ACM

Technical Perspective: Combining Logic and Probability

In "Probabilistic Theorem Proving," Gogate and Domingos suggest how PTP could be turned in a fast approximate algorithm by sampling from the set of children of...

Probabilistic Theorem Proving
From Communications of the ACM

Probabilistic Theorem Proving

Many representation schemes combining first-order logic and probability have been proposed in recent years. We propose the first method that has the full power...

From Communications of the ACM

Technical Perspective: A Breakthrough in Software Obfuscation

In "Hiding Secrets in Software," Garg et al. construct a "one-way compiler" of the type envisioned by Diffie and Hellman.

Hiding Secrets in Software
From Communications of the ACM

Hiding Secrets in Software: A Cryptographic Approach to Program Obfuscation

Can we hide secrets in software? Can we make programs unintelligible while preserving their functionality? Why would we even want to do this? In this article, we...

From Communications of the ACM

Technical Perspective: The State (and Security) of the Bitcoin Economy

"A Fistful of Bitcoins" examines, in the context of Bitcoin, what we could learn by studying the patterns encoded in a complete record of every single financial...

From Communications of the ACM

Technical Perspective: Fairness and the Coin Flip

"Secure Multiparty Computations on Bitcoin" introduces an exciting new idea for how to provide fairness: leverage Bitcoin’s existing infrastructure for distributed...

Secure Multiparty Computations on Bitcoin
From Communications of the ACM

Secure Multiparty Computations on Bitcoin

In this work, we propose to use Bitcoin to design fully decentralized protocols that are secure even if no trusted third party is available.

From Communications of the ACM

Technical Perspective: Stacking Up Undefined Behaviors

In "A Differential Approach to Undefined Behavior Detection," Wang et al. hypothesize that any time a compiler is able to delete code by using reasoning based on...

A Differential Approach to Undefined Behavior Detection
From Communications of the ACM

A Differential Approach to Undefined Behavior Detection

This paper studies undefined behavior arising in systems programming languages such as C/C++. We introduce a new static checker called STACK that precisely identifies...

From Communications of the ACM

Technical Perspective: Program Synthesis Using Stochastic Techniques

The authors of "Stochastic Program Optimization" have developed a stochastic search technique and applied it to program optimization.

Stochastic Program Optimization
From Communications of the ACM

Stochastic Program Optimization

By encoding constraints of transformation correctness as terms in a cost function, and using a Markov Chain Monte Carlo sampler to explore the space of all possible...

From Communications of the ACM

Technical Perspective: Catching Lies (and Mistakes) in Offloaded Computation

The system described in "Pinocchio: Nearly Practical Verifiable Computation" refines an important theoretical advance by Gennaro et al. Together, these two works represent...

Pinocchio
From Communications of the ACM

Pinocchio: Nearly Practical Verifiable Computation

We introduce Pinocchio, a built system for efficiently verifying general computations while relying only on cryptographic assumptions.

From Communications of the ACM

Technical Perspective: High-Performance Virtualization: Are We Done?

"Bare-Metal Performance for Virtual Machines with Exitless Interrupts" shows how to enable a virtual machine to attain "bare metal" performance from high-speed...

Bare-Metal Performance For Virtual Machines with Exitless Interrupts
From Communications of the ACM

Bare-Metal Performance For Virtual Machines with Exitless Interrupts

We present ExitLess Interrupts (ELI), a software-only approach for handling interrupts within guest virtual machines directly and securely.

From Communications of the ACM

Technical Perspective: Treating Networks Like Programs

"Software Dataplane Verification" takes existing static checking of networks to a new level by checking the real code in the forwarding path of a Click router using...

Software Dataplane Verification
From Communications of the ACM

Software Dataplane Verification

We present the result of working iteratively on two tasks: designing a domain-specific verification tool for packet-processing software, while trying to identify...

From Communications of the ACM

Technical Perspective: The Simplicity of Cache Efficient Functional Algorithms

In "Cache Efficient Functional Algorithms," Blelloch and Harper suggest we analyze the costs of functional algorithms by assuming objects are allocated sequentially...

Cache Efficient Functional Algorithms
From Communications of the ACM

Cache Efficient Functional Algorithms

We present a cost model for analyzing the memory efficiency of algorithms expressed in a simple functional language.

From Communications of the ACM

Technical Perspective: Programming Multicore Computers

"Can Traditional Programming Bridge the Ninja Performance Gap for Parallel Computing Applications" advocates an appealing division of labor between a developer...
Sign In for Full Access
» Forgot Password? » Create an ACM Web Account