Propagator networks for degenerate computation
Arun Isaac (University College London), Pjotr Prins (University of Tennessee Health Science Center)
Computer programs are very susceptible to breakage. Setting up automated testing to protect against breakage introduced by modifying code is considered best practice. Even so, bugs slip through the nets and programmers often become wary of editing code that is known to work well. “If it ain’t broke, don’t fix it” is the idiom. As a result, older software tends to set like concrete and not evolve much.
The susceptibility of software to breakage is due to the implicit assumption in programming culture of scarce computational resources. Code with degenerate parts—say, two different algorithms to compute the same function—is considered wasteful. Degeneracy is not a new idea, and safety critical applications such as in the aerospace industry routinely use degeneracy. But, the complexity of plumbing together degenerate parts has dissuaded more widespread use in general software.
In this talk, we will show how propagator networks can serve as a robust and expressive architecture to implement degenerate computation. We will explain how they permit easy evolution of software, enable collection of operational feedback from software, and enable easy mixing of programming languages. Finally, we will present concrete examples using GeneNetwork, a bioinformatics data analysis web service, as a use case.
Sat 9 SepDisplayed time zone: Pacific Time (US & Canada) change
11:00 - 12:30
|Modeling Graph-Based Morphology of the Synaptic Spine Head
Matthew Hur University of California, Irvine
|Why code in Python+C if you can code in Lisp+Zig?
Pjotr Prins University of Tennessee Health Science CenterFile Attached
|Propagator networks for degenerate computation
Arun Isaac University College London (UCL)File Attached
|Functional Pearl: Signature Memoization for Drug Repurposing
DeclMedMedia Attached File Attached