factory-0.3.0.0: Rational arithmetic in an irrational world.

Factory.Math.Pi

Contents

Description

AUTHOR
Dr. Alistair Ward
DESCRIPTION
Defines the classes of Pi-algorithm which have been implemented.

Synopsis

Type-classes

class Algorithmic algorithm where Source #

• Defines the methods expected of a Pi-algorithm.
• Most of the implementations naturally return a Rational, but the spigot-algorithms naturally produce a [Int]; though representing Pi as a big integer with the decimal point removed is clearly incorrect.
• Since representing Pi as either a Rational or promoted to an Integer, is inconvenient, an alternative decimal String-representation is provided.

Minimal complete definition

openR

Methods

openR :: algorithm -> DecimalDigits -> Rational Source #

openI :: algorithm -> DecimalDigits -> Integer Source #

openS :: algorithm -> DecimalDigits -> String Source #

Instances

 Source # Methods Source # Methods Algorithmic squareRootAlgorithm => Algorithmic (Algorithm squareRootAlgorithm) Source # MethodsopenR :: Algorithm squareRootAlgorithm -> DecimalDigits -> Rational Source #openI :: Algorithm squareRootAlgorithm -> DecimalDigits -> Integer Source #openS :: Algorithm squareRootAlgorithm -> DecimalDigits -> String Source # (Algorithmic squareRootAlgorithm, Algorithmic factorialAlgorithm) => Algorithmic (Algorithm squareRootAlgorithm factorialAlgorithm) Source # MethodsopenR :: Algorithm squareRootAlgorithm factorialAlgorithm -> DecimalDigits -> Rational Source #openI :: Algorithm squareRootAlgorithm factorialAlgorithm -> DecimalDigits -> Integer Source #openS :: Algorithm squareRootAlgorithm factorialAlgorithm -> DecimalDigits -> String Source # (Algorithmic squareRootAlgorithm, Algorithmic factorialAlgorithm) => Algorithmic (Algorithm squareRootAlgorithm factorialAlgorithm) Source # MethodsopenR :: Algorithm squareRootAlgorithm factorialAlgorithm -> DecimalDigits -> Rational Source #openI :: Algorithm squareRootAlgorithm factorialAlgorithm -> DecimalDigits -> Integer Source #openS :: Algorithm squareRootAlgorithm factorialAlgorithm -> DecimalDigits -> String Source # (Algorithmic agm, Algorithmic bbp, Algorithmic borwein, Algorithmic ramanujan, Algorithmic spigot) => Algorithmic (Category agm bbp borwein ramanujan spigot) Source # MethodsopenR :: Category agm bbp borwein ramanujan spigot -> DecimalDigits -> Rational Source #openI :: Category agm bbp borwein ramanujan spigot -> DecimalDigits -> Integer Source #openS :: Category agm bbp borwein ramanujan spigot -> DecimalDigits -> String Source #

Types

Data-types

data Category agm bbp borwein ramanujan spigot Source #

Categorises the various algorithms.

Constructors

 AGM agm Algorithms based on the Arithmetic-geometric Mean. BBP bbp Borwein borwein Ramanujan ramanujan Spigot spigot Algorithms from which the digits of Pi slowly drip, one by one.

Instances