P5-math-sequence

Jul 20, 2023

Perl extension dealing with mathematic sequences

MathSequence defines a class for simple mathematic sequences with a recursive definition such as x_n+1 = 1 / x_n + 1. Creation of a MathSequence object is described below in the paragraph about the constructor.

MathSequence uses MathSymbolic to parse and modify the recursive sequence definitions. That means you specify the sequence as a string which is parsed by MathSymbolic. Alternatively, you can pass the constructor a MathSymbolic tree directly.

Because MathSequence uses MathSymbolic for its implementation, all results will be MathSymbolic objects which may contain other variables than the sequence variable itself.

Each MathSequence object is an iterator to iterate over the elements of the sequence starting at the first element which was specified by the starting element, the second argument to the new constructor. It offers facilities to cache all calculated elements and access any element directly, though unless the element has been cached in a previous calculation, this is just a shortcut for repeated use of the iterator.



Checkout these related ports:
  • Zn_poly - C library for polynomial arithmetic
  • Zimpl - Language to translate the LP models into .lp or .mps
  • Zegrapher - Software for plotting mathematical objects
  • Zarray - Dynamically typed N-D expression system based on xtensor
  • Z3 - Z3 Theorem Prover
  • Yices - SMT solver
  • Yacas - Yet Another Computer Algebra System
  • Xtensor - Multi-dimensional arrays with broadcasting and lazy computing
  • Xtensor-python - Python bindings for xtensor
  • Xtensor-io - Xtensor plugin to read/write images, audio files, numpy npz and HDF5
  • Xtensor-blas - BLAS extension to xtensor
  • Xspread - Spreadsheet program for X and terminals
  • Xppaut - Graphical tool for solving differential equations, etc
  • Xplot - X11 plotting package
  • Xlife++ - XLiFE++ eXtended Library of Finite Elements in C++