Another iteration on \A synthesis of several sorting algorithms (original) (raw)
In \A synthesis of several sorting algorithms", Darlington showed how to use program transformation techniques to develop versions of six well-known sorting algorithms. We provide more evidence for the naturalness of the resulting taxonomy of algorithms by showing how it follows almost immediately from a consideration of the types of the objects involved. By exploiting the natural operations of iteration and coiteration over recursively dened data types, we may automatically derive the structure of each algorithm.
Free related PDFsRelated papers
Free PDF
Foundations of Computer Science
2000
This course has two aims. The first is to teach programming. The second is to present some fundamental principles of computer science, especially algorithm design. Most students will have some programming experience already, but there are few people whose programming cannot be improved through greater knowledge of basic principles. Please bear this point in mind if you have extensive experience and find parts of the course rather slow.
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Preliminary Proceedings of the ACM SIGPLAN Haskell Workshop (HW'2001)
2001
Using Haskell as a digital circuit description language, we transform a ripple carryadder that requires O (n) time to add two n-bit words into an e# cient carry lookaheadadder that requires O (log n) time. The gain in speed relies on the use of parallelscan to calculate the propagation of carry bits e# ciently. The main di# culty is thatthis scan cannot be parallelised directly since it is applied to a non-associative function.
Free PDF
Automatic Amortised Resource Analysis for Hume
2009
Abstract This chapter gives an overview of the amortised analysis approach that we have used for Hume. We introduce an analogy with carbon emissions, describe amortised analysis in general terms, outline how we will develop an automatic analysis and introduce the Hume programming language that will be used as the basis for undertaking our analysis.
Free PDF
Numerical representations as higher order nested datatypes
1998
Abstract Number systems serve admirably as templates for container types: a container object of size n is modelled after the representation of the number n and operations on container objects are modelled after their number-theoretic counterparts. Binomial queues are probably the rst data structure that was designed with this analogy in mind. In this paper we show how to express these so-called numerical representations as higher-order nested datatypes.
Free PDF
2008
We argue that abstract datatypes—with public interfaces hiding private implementations—represent a form of codata rather than ordinary data, and hence that proof methods for corecursive programs are the appropriate techniques to use for reasoning with them. In particular, we show that the universal properties of unfold operators are perfectly suited for the task. We illustrate with solutions to two problems the solution to a problem in the recent literature.
Free PDF
Loading Preview
Sorry, preview is currently unavailable. You can download the paper by clicking the button above.
Free related PDFsRelated papers
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Free PDF
Related topics
- About
- Press
- Blog
- Papers
- Topics
- We're Hiring!
- Help Center
- Find new research papers in:
- Physics
- Chemistry
- Biology
- Health Sciences
- Ecology
- Earth Sciences
- Cognitive Science
- Mathematics
- Computer Science
- Terms
- Privacy
- Copyright
- Academia ©2024