canon- Arithmetic for Psychedelically Large Numbers

Copyright(c) 2018-2019 Frederick Schneider
MaintainerFrederick Schneider <>
Safe HaskellNone



This module defines numerous functions associated with massive numbers. This is an excellent resource:



moserTriangle :: Canon -> Canon Source #

Moser Triangle (see Wikipedia link above)

moserSquare :: Canon -> Canon Source #

Moser Square (see Wikipedia link above)

moserPentagon :: Canon Source #

Moser Pentagon (see Wikipedia link above)

mega :: Canon Source #

Mega: "2 in a circle" (see Wikipedia link above)

megiston :: Canon Source #

Megiston: "10 in a circle" (see Wikipedia link above)

moser :: Canon Source #

Moser number; "2 in a mega-gon" (see Wikipedia link above)

knuth :: Canon -> Canon -> Canon -> Canon Source #

Knuth's Up Arrow Notation, analagous to hyperoperations

conwayChain :: [Canon] -> Canon Source #

Conway Chained-Arrow Notation: This function will try to reduce generalized conway chain notation down to humble hyperoperations (or better).

conwayGuy :: Canon -> Canon Source #

Conway-Guy function is a conwayChain of n copies of n.

genGrahamFunc :: Canon -> Integer -> Canon Source #

Generalized Graham Function

grahamFunc :: Integer -> Canon Source #

Calls the generalized Graham function with value 3

ackermann3 :: Canon -> Canon -> Canon -> Canon Source #

The original 3 parameter Ackermann function