Implementing Data Parallel Rational Multiple-Residue Arithmetic in Eden

  • Oleg Lobachev
  • Rita Loogen
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6244)


Residue systems present a well-known way to reduce computation cost for symbolic computation. However most residue systems are implemented for integers or polynomials. This work combines two known results in a novel manner. Firstly, it lifts an integral residue system to fractions. Secondly, it generalises a single-residue system to a multiple-residue one. Combined, a rational multi-residue system emerges. Due to the independent manner of single “parts” of the system, this work enables progress in parallel computing. We present a complete implementation of the arithmetic in the parallel extension e.g.. The parallelisation utilises algorithmic skeletons. A non-trivial example computation is also supplied.


residue system rational reconstruction EEA CRT homomorphism parallelisation functional programming parallel functional software implementation report 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Berthold, J., Loogen, R.: Visualizing Parallel Functional Program Executions: Case Studies with the Eden Trace Viewer. In: ParCo 2007. IOS Press, Amsterdam (2007)Google Scholar
  2. 2.
    Borosh, I., Fraenkel, A.S.: Exact solutions of linear equations with rational coefficients by congruence techniques. Math. Comp. 20(93), 107–112 (1966)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Dieterle, M., Horstmeyer, T., Loogen, R.: Skeleton composition using remote data. In: Carro, M., Peña, R. (eds.) PADL 2010. LNCS, vol. 5937, pp. 73–87. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  4. 4.
    Gregory, R.T.: Error-free computation with rational numbers. BIT Numerical Mathematics 21(2), 194–202 (1981)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Gregory, R.T., Krishnamurthy, E.V.: Methods and Applications of Error–Free Computation. Springer, Heidelberg (1984)CrossRefzbMATHGoogle Scholar
  6. 6.
    Kornerup, P., Gregory, R.T.: Mapping integers and Hensel codes onto Farey fractions. BIT Numerical Mathematics 23(1), 9–20 (1983)MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    Lobachev, O.: Multimodulare Arithmetik, Justus-Liebig-Universität Gießen. Diplomarbeit (March 2007) (in German),
  8. 8.
    Loogen, R., Ortega-Mallén, Y., Peña, R., Priebe, S., Rubio, F.: Parallelism Abstractions in Eden. In: Rabhi, F.A., Gorlatch, S. (eds.) Patterns and Skeletons for Parallel and Distributed Computing. Springer, Heidelberg (2003)Google Scholar
  9. 9.
    Loogen, R., Ortega-Mallén, Y., Peña-Marí, R.: Parallel Functional Programming in Eden. Journal of Functional Programming 15(3), 431–475 (2005)CrossRefzbMATHGoogle Scholar
  10. 10.
    Peyton Jones, S. (ed.): Haskell 98 Language and Libraries: The Revised Report. Cambridge University Press, Cambridge (December 2003)zbMATHGoogle Scholar
  11. 11.
    Rao, T.M., Gregory, R.T.: Conversion of Hensel codes to rational numbers. Comp. Math. 10(2), 185–189 (1984)MathSciNetzbMATHGoogle Scholar
  12. 12.
    Svoboda, A., Valach, M.: Rational system of residue classes. In: Stroje na Zpraccorani Informaci, Sbornik, Nakl, CSZV, Prague, pp. 9–37 (1957)Google Scholar
  13. 13.
    von zur Gathen, J., Gerhard, J.: Modern Computer Algebra, 2nd edn. Cambridge University Press, Cambridge (2003)zbMATHGoogle Scholar
  14. 14.
    Wang, P.S.: A p-adic algorithm for univariate partial fractions. In: Proc. ACM Symposium on Symbolic and Algebraic Computation, pp. 212–217. ACM, New York (1981)Google Scholar
  15. 15.
    Wang, P.S., Guy, M.J.T., Davenport, J.H.: p-adic reconstruction of rational numbers. ACM SIGSAM Bulletin 16(2), 3 (1982)CrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Oleg Lobachev
    • 1
  • Rita Loogen
    • 1
  1. 1.Fachbereich Mathematik und Informatik Hans–Meerwein–StraßePhilipps–Universität MarburgMarburgGermany

Personalised recommendations