Make it practical

A generic linear-time algorithm for solving maximum-weightsum problems

Isao Sasano, Zhenjiang Hu, Masato Takeichi, Mizuhito Ogawa

Research output: Chapter in Book/Report/Conference proceedingConference contribution

26 Citations (Scopus)

Abstract

In this paper we propose a new method for deriving a practical linear-time algorithm from the specification of a maximum-weightsum problem: From the elements of a data structure x, find a subset which satisfies a certain property p and whose weightsum is maximum. Previously proposed methods for automatically generating linear-time algorithms are theoretically appealing, but the algorithms generated are hardly useful in practice due to a huge constant factor for space and time. The key points of our approach are to express the property p by a recursive boolean function over the structure x rather than a usual logical predicate and to apply program transformation techniques to reduce the constant factor. We present an optimization theorem, give a calculational strategy for applying the theorem, and demonstrate the effectiveness of our approach through several nontrivial examples which would be difficult to deal with when using the methods previously available.

Original languageEnglish
Title of host publicationProceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP
Place of PublicationNew York, NY, United States
PublisherACM
Pages137-149
Number of pages13
Publication statusPublished - 2000
Externally publishedYes
Event5th ACM SIGPLAN International Conference on Functional Programming (ICFP'00) - Montreal, Que, Can
Duration: 2000 Sep 182000 Sep 21

Other

Other5th ACM SIGPLAN International Conference on Functional Programming (ICFP'00)
CityMontreal, Que, Can
Period00/9/1800/9/21

Fingerprint

Recursive functions
Boolean functions
Data structures
Specifications

ASJC Scopus subject areas

  • Computer Science(all)

Cite this

Sasano, I., Hu, Z., Takeichi, M., & Ogawa, M. (2000). Make it practical: A generic linear-time algorithm for solving maximum-weightsum problems. In Proceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP (pp. 137-149). New York, NY, United States: ACM.

Make it practical : A generic linear-time algorithm for solving maximum-weightsum problems. / Sasano, Isao; Hu, Zhenjiang; Takeichi, Masato; Ogawa, Mizuhito.

Proceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP. New York, NY, United States : ACM, 2000. p. 137-149.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Sasano, I, Hu, Z, Takeichi, M & Ogawa, M 2000, Make it practical: A generic linear-time algorithm for solving maximum-weightsum problems. in Proceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP. ACM, New York, NY, United States, pp. 137-149, 5th ACM SIGPLAN International Conference on Functional Programming (ICFP'00), Montreal, Que, Can, 00/9/18.
Sasano I, Hu Z, Takeichi M, Ogawa M. Make it practical: A generic linear-time algorithm for solving maximum-weightsum problems. In Proceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP. New York, NY, United States: ACM. 2000. p. 137-149
Sasano, Isao ; Hu, Zhenjiang ; Takeichi, Masato ; Ogawa, Mizuhito. / Make it practical : A generic linear-time algorithm for solving maximum-weightsum problems. Proceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP. New York, NY, United States : ACM, 2000. pp. 137-149
@inproceedings{535eb1d149f641c58118b69b6628c4ba,
title = "Make it practical: A generic linear-time algorithm for solving maximum-weightsum problems",
abstract = "In this paper we propose a new method for deriving a practical linear-time algorithm from the specification of a maximum-weightsum problem: From the elements of a data structure x, find a subset which satisfies a certain property p and whose weightsum is maximum. Previously proposed methods for automatically generating linear-time algorithms are theoretically appealing, but the algorithms generated are hardly useful in practice due to a huge constant factor for space and time. The key points of our approach are to express the property p by a recursive boolean function over the structure x rather than a usual logical predicate and to apply program transformation techniques to reduce the constant factor. We present an optimization theorem, give a calculational strategy for applying the theorem, and demonstrate the effectiveness of our approach through several nontrivial examples which would be difficult to deal with when using the methods previously available.",
author = "Isao Sasano and Zhenjiang Hu and Masato Takeichi and Mizuhito Ogawa",
year = "2000",
language = "English",
pages = "137--149",
booktitle = "Proceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP",
publisher = "ACM",

}

TY - GEN

T1 - Make it practical

T2 - A generic linear-time algorithm for solving maximum-weightsum problems

AU - Sasano, Isao

AU - Hu, Zhenjiang

AU - Takeichi, Masato

AU - Ogawa, Mizuhito

PY - 2000

Y1 - 2000

N2 - In this paper we propose a new method for deriving a practical linear-time algorithm from the specification of a maximum-weightsum problem: From the elements of a data structure x, find a subset which satisfies a certain property p and whose weightsum is maximum. Previously proposed methods for automatically generating linear-time algorithms are theoretically appealing, but the algorithms generated are hardly useful in practice due to a huge constant factor for space and time. The key points of our approach are to express the property p by a recursive boolean function over the structure x rather than a usual logical predicate and to apply program transformation techniques to reduce the constant factor. We present an optimization theorem, give a calculational strategy for applying the theorem, and demonstrate the effectiveness of our approach through several nontrivial examples which would be difficult to deal with when using the methods previously available.

AB - In this paper we propose a new method for deriving a practical linear-time algorithm from the specification of a maximum-weightsum problem: From the elements of a data structure x, find a subset which satisfies a certain property p and whose weightsum is maximum. Previously proposed methods for automatically generating linear-time algorithms are theoretically appealing, but the algorithms generated are hardly useful in practice due to a huge constant factor for space and time. The key points of our approach are to express the property p by a recursive boolean function over the structure x rather than a usual logical predicate and to apply program transformation techniques to reduce the constant factor. We present an optimization theorem, give a calculational strategy for applying the theorem, and demonstrate the effectiveness of our approach through several nontrivial examples which would be difficult to deal with when using the methods previously available.

UR - http://www.scopus.com/inward/record.url?scp=0034545063&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=0034545063&partnerID=8YFLogxK

M3 - Conference contribution

SP - 137

EP - 149

BT - Proceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP

PB - ACM

CY - New York, NY, United States

ER -