Parallel Prefix Polymorphism Permits Parallelization, Presentation & Proof

Polymorphism in programming languages enables code reuse. Here, we show that polymorphism has broad applicability far beyond computations for technical computing: parallelism in distributed computing, presentation of visualizations of runtime data flow, and proofs for formal verification of correctn...

Full description

Bibliographic Details
Main Authors: Chen, Jiahao (Contributor), Edelman, Alan (Contributor)
Other Authors: Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory (Contributor), Massachusetts Institute of Technology. Department of Mathematics (Contributor)
Format: Article
Language:English
Published: Institute of Electrical and Electronics Engineers (IEEE), 2017-06-01T20:21:12Z.
Subjects:
Online Access:Get fulltext
Description
Summary:Polymorphism in programming languages enables code reuse. Here, we show that polymorphism has broad applicability far beyond computations for technical computing: parallelism in distributed computing, presentation of visualizations of runtime data flow, and proofs for formal verification of correctness. The ability to reuse a single codebase for all these purposes provides new ways to understand and verify parallel programs.
Intel Science and Technology Center for Big Data
Massachusetts Institute of Technology. Deshpande Center (Innovation Grant)
United States. Defense Advanced Research Projects Agency. XDATA Program
National Science Foundation (U.S.) (Grant DMS- 1312831)