Skip to main content

Algebraic Approaches to Problem Generalisation

  • Conference paper
Algebraic Methodology and Software Technology (AMAST 2004)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 3116))

  • 261 Accesses

Abstract

A common technique for solving programming problems is to express the problem in terms of solving a system of so-called “simultaneous” equations (a collection of equations in a number of unknowns that are often mutually recursive). Having done so, a number of techniques can be used for solving the equations, ranging from simple iterative techniques to more sophisticated but more specialised elimination techniques.

A stumbling block for the use of simultaneous equations is that there is often a big leap from a problem’s specification to the construction of the system of simultaneous equations; the justification for the leap almost invariably involves a post hoc verification of the construction. Thus, whereas methods for solving the equations, once constructed, are well-known and understood, the process of constructing the equations is not.

In this talk, we present a general theorem which expresses when the solution to a problem can be expressed as solving a system of simultaneous equations. The theorem exploits the theory of Galois connections and fixed-point calculus, which we briefly introduce. We give several examples of the theorem together with several non-examples (that is, examples where the theorem is not directly applicable). The non-examples serve two functions. They highlight the gap between specification and simultaneous equations – we show in several cases how a small change in the specification leads to a breakdown in the solution by simultaneous equations – and they inform the development of a methodology for the construction of the equations.

Application of the technique in the case of the more challenging problems depends crucially on finding a suitable generalisation of the original problem. For example, the problem of finding the edit distance between a word and a context-free language is solved by computing the edit distance between each segment of the given word and the language generated by each nonterminal in the given grammar.

A focus of the talk is the use of Conway’s factor theory [Con71] in generalising a class of problems we call “bound” problems. Since its publication in 1971, Conway’s work has been largely ignored, but its relevance to program analysis has recently been observed by Oege de Moor and his colleagues [MDLS02,SdML04]. We show how factor theory underpins De Moor’s work as well as the well-known Knuth-Morris-Pratt pattern matching algorithm [KMP77]. We also speculate on how further study of factor theory might have relevance to a broader class of problems.

This talk is based on [Bac04], where further details can be found.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Backhouse, R.: Regular algebra applied to language problems. Submitted for publication in Journal of Logic and Algebraic Programming (2004)

    Google Scholar 

  2. Backhouse, R.: Regular algebra applied to language problems. Submitted for publication in Journal of Logic and Algebraic Programming (2004)

    MATH  Google Scholar 

  3. Knuth, D.E., Morris, J.H., Pratt, V.R.: Fast pattern matching in strings. SIAM Journal of Computing 6, 325–350 (1977)

    Article  MathSciNet  Google Scholar 

  4. de Moor, O., Drape, S., Lacey, D., Sittampalam, G.: Incremental program analysis via language factors (2002), Available from http://web.comlab.ox.ac.uk/work/oege.de.moor/pubs.htm

  5. Backhouse, R.: Regular algebra applied to language problems. Submitted for publication in Journal of Logic and Algebraic Programming (2004)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Backhouse, R. (2004). Algebraic Approaches to Problem Generalisation. In: Rattray, C., Maharaj, S., Shankland, C. (eds) Algebraic Methodology and Software Technology. AMAST 2004. Lecture Notes in Computer Science, vol 3116. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-27815-3_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-27815-3_1

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-22381-8

  • Online ISBN: 978-3-540-27815-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics