## about Programs General Terms

### BibTeX

@MISC{Voigtländer_aboutprograms,

author = {Janis Voigtländer and Technische Universität Dresden},

title = {about Programs General Terms},

year = {}

}

### OpenURL

### Abstract

This pearl develops a statement about parallel prefix computation in the spirit of Knuth’s 0-1-Principle for oblivious sorting algorithms. It turns out that 0-1 is not quite enough here. The perfect hammer for the nails we are going to drive in is relational parametricity. Categories and Subject Descriptors D.1.1 [Programming Techniques]:

### Citations

717 |
Isabelle/HOL — A Proof Assistant for Higher-Order Logic, volume 2283 of LNCS
- Nipkow, Paulson, et al.
- 2002
(Show Context)
Citation Context ...dire consequences? Yes we can, thanks to Böhme (2007b), who has reproduced our whole line of reasoning with an interactive proof assistant. That is, there is now a complete proof script for Isabelle (=-=Nipkow et al. 2002-=-) leading from Lemma 1 to Theorem 1. Acknowledgments I thank Mary Sheeran for sharing her draft paper on systematic search for new solutions to the parallel prefix computation task (Sheeran 2007). I a... |

694 | The Art of Computer Programming, Volume 3: Sorting and Searching (2nd Edition - Knuth - 1998 |

363 |
Types, abstraction and parametric polymorphism
- Reynolds
- 1983
(Show Context)
Citation Context ...anl1 (⊕) xs give equal results. 4.2 A Free Theorem The key to connecting the behavior of candidate at different types, as required for both propositions we want to prove, is relational parametricity (=-=Reynolds 1983-=-), in the form of free theorems (Wadler 1989). It allows us to derive the following lemma just from the polymorphic type of candidate. LEMMA 1. For every choice of types τ1, τ2 and functions f :: τ1 →... |

272 | Parallel prefix computation
- Ladner, Fischer
- 1980
(Show Context)
Citation Context ...ts x1, x1 ⊕ x2, . . . , x1 ⊕ x2 ⊕ · · · ⊕ xn. It has numerous applications in the hardware and algorithmics fields (Blelloch 1993). There is a wealth of solutions (Sklansky 1960; Brent and Kung 1980; =-=Ladner and Fischer 1980-=-), employing the associativity of ⊕ in different ways to realize different trade-offs between certain characteristics of the resulting “circuits”, and more keep coming up (Lin and Hsiao 2004; Sheeran ... |

167 |
A Parallel Algorithm for The Efficient Solution of a General Class of Recurrence Equations
- Kogge, Stone
- 1973
(Show Context)
Citation Context ...nsider the situation for operations ⊕ that satisfy additional algebraic properties beyond associativity. For example, more circuit optimization is possible in practice if ⊕ is idempotent in addition (=-=Stone and Kogge 1973-=-; Lynch and Swartzlander 1991; Knowles 2001), and having a Knuth-like principle for corresponding solution candidates would be interesting as well. For associative, idempotent ⊕ the counterexample can... |

95 | Prefix Sums and Their Applications
- Blelloch
- 1990
(Show Context)
Citation Context ...sk to compute, given inputs x1, . . . , xn and an associative operation ⊕, the outputs x1, x1 ⊕ x2, . . . , x1 ⊕ x2 ⊕ · · · ⊕ xn. It has numerous applications in the hardware and algorithmics fields (=-=Blelloch 1993-=-). There is a wealth of solutions (Sklansky 1960; Brent and Kung 1980; Ladner and Fischer 1980), employing the associativity of ⊕ in different ways to realize different trade-offs between certain char... |

38 | A family of adders
- Knowles
- 2001
(Show Context)
Citation Context ...additional algebraic properties beyond associativity. For example, more circuit optimization is possible in practice if ⊕ is idempotent in addition (Stone and Kogge 1973; Lynch and Swartzlander 1991; =-=Knowles 2001-=-), and having a Knuth-like principle for corresponding solution candidates would be interesting as well. For associative, idempotent ⊕ the counterexample candidate in Section 2 is actually equivalent ... |

38 |
Conditional-sum addition logic
- Sklansky
- 1960
(Show Context)
Citation Context ...n associative operation ⊕, the outputs x1, x1 ⊕ x2, . . . , x1 ⊕ x2 ⊕ · · · ⊕ xn. It has numerous applications in the hardware and algorithmics fields (Blelloch 1993). There is a wealth of solutions (=-=Sklansky 1960-=-; Brent and Kung 1980; Ladner and Fischer 1980), employing the associativity of ⊕ in different ways to realize different trade-offs between certain characteristics of the resulting “circuits”, and mor... |

25 | Fast and loose reasoning is morally correct
- Danielsson, Hughes, et al.
- 2006
(Show Context)
Citation Context ...s not necessarily true. More generally, we have completely ignored the presence of undefined values, i.e., of ⊥, in Haskell. In that sense, our reasoning has been fast and loose, but morally correct (=-=Danielsson et al. 2006-=-). This was done on purpose to expose our main ideas without too much added noise during calculation. Giving a more pedantic account of basically the same material is no doubt possible. It would build... |

21 | Proof methods for corecursive programs - Gibbons, Hutton - 2005 |

21 | Hardware design and functional programming: a perfect match - Sheeran - 2005 |

7 | An algebra of scans
- Hinze
- 2004
(Show Context)
Citation Context ...t for correctness of such new, and increasingly complex, methods. One approach to address this concern is the derivation, using well-understood combinators, of new designs from basic building blocks (=-=Hinze 2004-=-). Another is explicit proof or at least systematic (possibly exhaustive) testing of new solution candidates. Of course, studies of the latter kind must be sufficiently generic, given that in the prob... |

7 | A new approach to constructing optimal parallel prefix circuits with small depth - Lin, Hsiao - 2004 |

6 | Free Theorems for Sublanguages of Haskell - Böhme - 2007 |

6 | Finding regularity: describing and analysing circuits that are almost regular
- Sheeran
- 2003
(Show Context)
Citation Context ...ils on parallel prefix computation is entirely due to Sheeran. In her work on hardware design using functional languages, she has employed the 0-1-Principle for verifying sorting and median networks (=-=Sheeran 2003-=-). She also employs parametric polymorphism in various other ways via so-called non-standard interpretations that help to analyze circuits with respect to different criteria, and even to draw circuit ... |

5 |
The Redundant Cell Adder
- Lynch, Swartzlander
- 1991
(Show Context)
Citation Context ...or operations ⊕ that satisfy additional algebraic properties beyond associativity. For example, more circuit optimization is possible in practice if ⊕ is idempotent in addition (Stone and Kogge 1973; =-=Lynch and Swartzlander 1991-=-; Knowles 2001), and having a Knuth-like principle for corresponding solution candidates would be interesting as well. For associative, idempotent ⊕ the counterexample candidate in Section 2 is actual... |

4 | Formalising bitonic sort in type theory - Bove, Coquand |

3 |
Searching for prefix networks to fit in a context using a lazy functional programming language. Talk at Hardware Design and Functional Languages
- Sheeran
- 2007
(Show Context)
Citation Context ...her 1980), employing the associativity of ⊕ in different ways to realize different trade-offs between certain characteristics of the resulting “circuits”, and more keep coming up (Lin and Hsiao 2004; =-=Sheeran 2007-=-). An obvious concern is that for correctness of such new, and increasingly complex, methods. One approach to address this concern is the derivation, using well-understood combinators, of new designs ... |

2 | ado about two. Formal proof development - Much |

2 | Verifying Haskell programs by combining testing, model checking and interactive theorem proving - Workshop, Proceedings - 1999 |