Triangular array
Encyclopedia
In mathematics and computing, a triangular array of numbers, polynomials, or the like, is a doubly indexed sequence in which each row is only as long as the row's own index.
Notable particular examples include these:
Triangular arrays of integers in which each row is symmetric and begins and ends with 1 are sometimes called generalized Pascal triangles; examples include Pascal's triangle, the Narayana numbers, and the triangle of Eulerian numbers.
, triangular arrays are used in several algorithm
s. One example is the CKY
parsing algorithm for context-free grammar
s, an example of dynamic programming
.
Notable particular examples include these:
- Bell numbers (the "Bell triangle", "Aitken's array", or the "Peirce triangle")
- Bell polynomials
- Boustrophedon transformBoustrophedon transformIn mathematics, the boustrophedon transform is a procedure which maps one sequence to another. The transformed sequence is computed by filling a triangular array in boustrophedon manner.-Definition:...
- Eulerian numberEulerian numberIn combinatorics the Eulerian number A, is the number of permutations of the numbers 1 to n in which exactly m elements are greater than the previous element...
- Floyd's triangleFloyd's triangleFloyd's triangle is a right-angled triangular array of natural numbers, used in computer science education. It is named after Robert Floyd. It is defined by filling the rows of the triangle with consecutive numbers, starting with a 1 in the top left corner:1...
- Hosoya's triangleHosoya's triangleFibonacci triangle or the Hosoya's triangle is a triangular arrangement of numbers based on the Fibonacci numbers. Each number is the sum of the two numbers above in either the left diagonal or the right diagonal...
- Lah numberLah numberIn mathematics, Lah numbers, discovered by Ivo Lah in 1955, are coefficients expressing rising factorials in terms of falling factorials.Unsigned Lah numbers have an interesting meaning in combinatorics: they count the number of ways a set of n elements can be partitioned into k nonempty linearly...
- Lozanić's triangleLozanic's triangleLozanić's triangle is a triangular array of binomial coefficients in a manner very similar to that of Pascal's triangle...
- Narayana numberNarayana numberIn combinatorics, the Narayana numbers N, n = 1, 2, 3 ..., 1 ≤ k ≤ n, form a triangular array of natural numbers, called Narayana triangle, that occur in various counting problems. They are named for T.V...
- Pascal's trianglePascal's triangleIn mathematics, Pascal's triangle is a triangular array of the binomial coefficients in a triangle. It is named after the French mathematician, Blaise Pascal...
- Rencontres numbers
- Romberg's methodRomberg's methodIn numerical analysis, Romberg's method is used to estimate the definite integral \int_a^b f \, dx by applying Richardson extrapolation repeatedly on the trapezium rule or the rectangle rule . The estimates generate a triangular array...
- Stirling numbers of the first kindStirling numbers of the first kindIn mathematics, Stirling numbers of the first kind, together with the Stirling numbers of the second kind, are the two types of Stirling numbers. They commonly occur in combinatorics, where they appear in the study of permutations. The Stirling numbers of the first and second kind can be...
- Stirling numbers of the second kind
Triangular arrays of integers in which each row is symmetric and begins and ends with 1 are sometimes called generalized Pascal triangles; examples include Pascal's triangle, the Narayana numbers, and the triangle of Eulerian numbers.
Practical use
Apart from the representation of triangular matricesTriangular matrix
In the mathematical discipline of linear algebra, a triangular matrix is a special kind of square matrix where either all the entries below or all the entries above the main diagonal are zero...
, triangular arrays are used in several algorithm
Algorithm
In mathematics and computer science, an algorithm is an effective method expressed as a finite list of well-defined instructions for calculating a function. Algorithms are used for calculation, data processing, and automated reasoning...
s. One example is the CKY
CYK algorithm
The Cocke–Younger–Kasami algorithm is a parsing algorithm for context-free grammars. It employs bottom-up parsing and dynamic programming....
parsing algorithm for context-free grammar
Context-free grammar
In formal language theory, a context-free grammar is a formal grammar in which every production rule is of the formwhere V is a single nonterminal symbol, and w is a string of terminals and/or nonterminals ....
s, an example of dynamic programming
Dynamic programming
In mathematics and computer science, dynamic programming is a method for solving complex problems by breaking them down into simpler subproblems. It is applicable to problems exhibiting the properties of overlapping subproblems which are only slightly smaller and optimal substructure...
.