John Keith

First Name:John
Last Name:Keith
Last Change:2020-06-06
Number of Files:32 (30th most prolific)
Number of Downloads:2,523 (2,075th most downloaded)

Bell Numbers   (details) 49/50 ENG   3KB/1KB
A program that returns a list of the Bell numbers (OEIS A000110) and one that returns row 0 through n of the Bell triangle (OEIS A011971), both of which require GoferLists, along with a separate program that returns the nth Bell number.
By John Keith and Gerald Hillier. 2020/04/12

Binomial Transform, Difference Table   (details) 49/50 48 ENG   3KB/1KB
Difference tables and the binomial transform are powerful methods for analyzing integer sequences and their underlying logic. See also Conway and Guy, "The Book of Numbers", chapter 3. Difference tables can be easily created using the \GDLIST (Delta-LIST) command on many HP calculators. This directory contains a program to return a difference table as a list of lists, the inverse binomial transform of a list, and the binomial transform of a list. Also has a program to do OEIS A000292.
By John Keith. 2019/05/27

Boustrophedon Transform   (details) 49/50 ENG   2KB/1KB
Implements the boustrophedon transform for a list of integers, OEIS A000111 and the triangle associated with the transformed sequence, OEIS A008280. Requires GoferLists.
By John Keith. 2019/03/25

Catalan Transforms, Hankel Transform   (details) 49/50 ENG   3KB/1KB
Some useful transforms for integer sequences, with the Catalan transform, inverse Catalan transform, ballot transform, inverse ballot transform, and Hankel transform.
By John Keith. 2019/12/29

Chebyshev U Polynomials   (details) 49/50 ENG   2KB/1KB
Returns the value of the nth Chebyshev U polynomial at x. Note that the built-in function TCHEBYCHEFF returns the nth Chebyshev T polynomial. Chebyshev T polynomials are also known as Chebyshev polynomials of the first kind, and the U polynomials as Chebyshev polynomials of the second kind.
By John Keith. 2020/06/06

ConvOffs Transform   (details) 49/50 48 ENG   3KB/1KB
Generalizations of the method used to create Pascal's triangle and similar number triangles, containing two programs. The first program takes a list of integers and returns the transformed list, which will be one term longer than the input list. The next program implements the ConvOffsStoT transform. It calls the program above. This program is basically the same but returns a list of lists which are transforms of sublists of the input list. Given a list of length n, the program will return lists of length 1 through n+1.
By John Keith. 2020/04/11

Delannoy Numbers   (details) 49/50 48 ENG   3KB/1KB
Delannoy numbers have many applications in combinatorics and number theory. Fortunately they are fast and easy to compute. These programs return a rectangular array of Delannoy numbers, the Delannoy triangle (also known as the tribonacci triangle), and the central Delannoy numbers. The first one requires GoferLists and only runs on the 49/50; the latter two also run on the 48.
By John Keith. 2019/06/17

Digits Sum   (details) 49/50 ENG   4KB/1KB
Calculates the sum of the digits of an integer. Includes two User RPL versions and one System RPL version.
By Juan, John Keith, and Gerald Hillier. 2020/06/06

Eta Quotients   (details) 49/50 ENG   2KB/1KB
Computes sequences known as "multiplicative eta quotients"
By John Keith. 2019/09/11

Euler Transform   (details) 49/50 ENG   2KB/1KB
Contains programs for computing the Euler transform and its inverse for sequences of integers. Both require the ListExt library.
By John Keith. 2019/08/29

EXP, LOG and Multinomial Transforms   (details) 49/50 ENG   3KB/1KB
Computes the EXP (exponential), LOG (logarithmic), MNL (multinomial) and IML (inverse multinomial) transforms of number sequences. Definitions and examples can be found at A274804, A274805, A274760 and A274844. Requires GoferLists and ListExt.
By John Keith. 2019/12/29

Farey Sequence   (details) 49/50 ENG   2KB/1KB
Creates the Farey sequence of order n, returning a list of two lists, the numerators and denominators of the sequence. These are row n of A006842 and A006843 respectively. Requires ListExt.
By John Keith. 2020/05/03

Fast Pascal's Triangle   (details) 49/50 ENG   3KB/1KB
Quickly generates any row of Pascal's Triangle. Also includes a program to calculate rows of the Narayana triangle, too. Requires ListExt.
By John Keith. 2020/04/12

Invert Transform   (details) 49/50 48 ENG   2KB/1KB
Two routines, for the invert transform and its inverse. Does OEIS A158943 and OEIS A155728.
By John Keith. 2019/04/22

Laguerre Polynomials   (details) 49/50 ENG   3KB/1KB
Returns the value of the nth Laguerre polynomial L_n(x) at x. To use the program, n (which must be an integer) should be on level 2, and x should be on level 1. If x is an integer, the result will be an integer or a rational number. Includes a regular version and a shorter/faster version that is dependent upon ListExt and GoferLists.
By John Keith. 2020/04/11

Moebius Transforms   (details) 49/50 ENG   3KB/1KB
Three Moebius transform related programs. They are most useful for integer sequences related to the divisor function, the Moebius Mu function, and the Euler Phi function. Requires ListExt.
By John Keith. 2019/02/19

Narayana Transform   (details) 49/50 ENG   2KB/1KB
Computes the Narayana transform of a list of integers. The Narayana transform is a variation of the binomial transform.
By John Keith. 2020/04/11

Necklace Programs   (details) 49/50 ENG   3KB/2KB
A group of programs that compute functions related to necklaces and bracelets (number theory, not jewelry!). The following sequences are covered: A000011, A000013, A000016, A000029, A000031, A000046, A000048, A001037, A059053, A059076, A179781, A308706. Requires GoferLists and Möbius Function.
By John Keith. 2019/07/20

Normal Distribution Functions   (details) 49/50 ENG   3KB/1KB
Simple programs for working with normal distributions, for calculating the lower-tail normal CDF, the normal PDF Z(x), normally distributed random numbers, and an array of normally distributed complex numbers.
By John Keith. 2018/12/21

Numeric List Commands   (details) 49/50 48 ENG   4KB/1KB
Implementations of some commands from the Wolfram Language, including a command to generate a list of integers based on the linear recurrence of the integer sequence, and two commands to perform convolution of lists, one of which takes a list and a kernel, and the other which takes two lists, plus a command for deconvolution, plus commands for the convolution inverse and convolution square root. Requires ListExt for the first two programs; only the last two run on the 48 as well.
By John Keith. 2019/08/29

OEIS A035327   (details) 49/50 ENG   2KB/1KB
For integer input N > -1 this returns the Nth element in the sequence OEIS A035327. Includes two approaches at the problem, one of which requires ListExt.
By Gerald Hillier and John Keith. 2019/12/31

OEIS A111138   (details) 49/50 38 Prime ENG   5KB/1KB
Returns the Nth element of the series OEIS A111138.
By Gerald Hillier and John Keith. 2019/07/20

Outer Product and Kronecker Product   (details) 49/50 ENG   2KB/1KB
Two programs, one which computes the outer product of two vectors or the Kronecker product of two matrices, and the other which computes the "generalized outer product" of two vectors.
By John Keith. 2019/02/23

Partition Numbers   (details) 49/50 ENG   3KB/1KB
Given an integer n on the stack, these two programs return a list of the partition numbers (A000041) from 0 through n. The first program is small, and the second one is fast. Also has a third program that returns the partition number triangle (A008284) as a list of lists. It is large (214 bytes) but fast, as it takes advantage of many patterns that occur in the triangle.
By John Keith. 2019/08/29

Ramanujan Tau Function   (details) 49/50 ENG   4KB/1KB
Set of three User RPL programs to compute the Ramanujan tau function (A000594) for positive integers. Requires Sum of Divisors to an Integer Power and ListExt. Also includes a standalone program written in System RPL.
By John Keith and Gerald Hillier. 2018/12/21

Removing Objects From Lists Quickly   (details) 49/50 ENG   2KB/1KB
Shows how to remove objects from lists or remove duplicates from lists quickly, with the help of GoferLists, ListExt, and LSort.
By John Keith. 2019/02/27

Self-convolutive Sequences   (details) 49/50 ENG   3KB/1KB
Generates a vast number of integer sequences, many relating to graph theory, combinatorics and theoretical physics. For a list of named sequences, see the CROSSREFS section of A172455.
By John Keith. 2020/04/11

Shoelace Algorithm   (details) 49/50 ENG   5KB/1KB
A program that uses the shoelace method for calculating the area of a polygon (3 different versions, including one that runs on both the 48 and 49) and another version that also calculates the area and centroid (barycenter) of a polygon (for the 49 only). Also calculates the perimeter of a polygon.
By John Keith and Thomas Klemm and others. 2019/08/29

Stirling and Stirling-Bernoulli Transforms   (details) 49/50 48 ENG   3KB/1KB
Routines to do the Stirling transform (S2), the inverse Stirling transform (S1), the Stirling-Bernoulli transform, and the inverse Stirling-Bernoulli transform.
By John Keith. 2019/04/02

Triangular Matrix Utilities   (details) 49/50 ENG   3KB/1KB
Utility programs to convert between matrices and number triangles. The number triangles are in the form of lists of lists.
By John Keith. 2020/06/06

Weigh   (details) 49/50 ENG   2KB/1KB
Computes the WEIGH transform of a sequence of integers. Some information here. Must be run in exact mode. Requires ListExt.
By John Keith. 2020/01/22

Zigzag Numbers   (details) 49/50 ENG   2KB/1KB
Set of two programs for zigzag numbers. One returns a list of the zigzag numbers (A000111) from 0 though n. The even-indexed terms (starting with 0) of the list are the unsigned Euler numbers, also known as secant numbers (AA000364). The odd-indexed terms (starting with 1) are the tangent numbers, AA000182. The other returns rows 0 through n of AA008281, the triangle from which the zigzag numbers are derived. Requires GoferLists.
By John Keith. 2018/10/14

Part of the HP Calculator Archive,
Copyright 1997-2020 Eric Rechlin.