-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Calculation of YH sequence system
--
-- Please see the README on GitHub at
-- https://github.com/Hexirp/yhseq#readme
@package yhseq
@version 0.3.0.0
module Numeric.YHSeq.V0110.Type
type Seq = [Integer]
type Index = Integer
type Diff = Integer
type ParentIndex = Index
type ParentList = [ParentIndex]
type Depth = Integer
type DPNTuple = (Diff, ParentList, Depth)
type DPN = [DPNTuple]
type Class = Integer
length :: [a] -> Integer
lengthSeq :: Seq -> Integer
lengthDPN :: DPN -> Integer
index :: [a] -> Integer -> a
index1 :: [a] -> Integer -> a
idx :: [a] -> Integer -> a
indexSeq :: Seq -> Index -> Integer
indexDPN :: DPN -> Index -> DPNTuple
indexD :: DPN -> Index -> Diff
indexP :: DPN -> Index -> ParentList
indexN :: DPN -> Index -> Depth
indexPList :: ParentList -> Index -> ParentIndex
slice :: Integer -> Integer -> [a] -> [a]
slice1 :: Integer -> Integer -> [a] -> [a]
sliceSeq :: Integer -> Integer -> Seq -> Seq
sliceDPN :: Integer -> Integer -> DPN -> DPN
dropLast :: [a] -> [a]
module Numeric.YHSeq.V0110.Expansion
badRoot :: DPN -> Index
goodPart :: DPN -> DPN
badPart :: DPN -> DPN
cuttedPart :: DPN -> DPN
pnt :: DPN -> Index -> Depth -> ParentIndex
anc :: DPN -> Index -> Depth -> [ParentIndex]
badRootL :: DPN -> Index
delta :: DPN -> Integer
amt :: DPN -> Index -> Integer
bas :: DPN -> Index -> ParentList
rising :: DPN -> Integer -> Index -> ParentIndex -> ParentIndex
ris :: DPN -> Integer -> Index -> ParentList -> ParentList
newD :: DPN -> Integer -> Index -> Diff
newP :: DPN -> Integer -> Index -> ParentList
newN :: DPN -> Integer -> Index -> Depth
copiedBadPart :: DPN -> Integer -> DPN
expand :: DPN -> Class -> Integer -> DPN
module Numeric.YHSeq.V0110.Decompression
reD :: DPN -> Index -> Depth -> Diff
reP :: DPN -> Index -> Depth -> Diff
decompress :: DPN -> Seq
module Numeric.YHSeq.V0110.Compression
mtD :: Seq -> Index -> Depth -> Diff
mtP :: Seq -> Index -> Depth -> ParentIndex
searchParent :: Seq -> Index -> ParentIndex
searchParentAnc :: Seq -> Index -> Depth -> ParentIndex
anc :: Seq -> Index -> Depth -> [ParentIndex]
nonEmptyDepth :: Seq -> Depth
cl :: Seq -> Class
compressionDepth :: Seq -> Depth
btm :: Seq -> Index -> Depth
cN :: Seq -> Index -> Depth
cU :: Seq -> Index -> Depth
cM :: Seq -> Index -> Depth
cD :: Seq -> Index -> Diff
cP :: Seq -> Index -> ParentList
seqClass :: Seq -> Class
compress :: Seq -> DPN
module Numeric.YHSeq.V0110
data Cofinal
IsZero :: Cofinal
IsSucc :: Cofinal
IsLimit :: Cofinal
isZero :: Seq -> Bool
isSucc :: Seq -> Bool
isLimit :: Seq -> Bool
scof :: Seq -> Cofinal
fseq :: Seq -> Integer -> Seq
pseq :: Seq -> Seq
-- | It's a very very large function.
yhseq :: Seq -> Integer -> Integer
module Numeric.YHSeq.V0111.Type
type Seq = [Integer]
type Index = Integer
type Diff = Integer
type ParentIndex = Index
type ParentList = [ParentIndex]
type Depth = Integer
type DPNTuple = (Diff, ParentList, Depth)
type DPN = [DPNTuple]
type Class = Integer
length :: [a] -> Integer
lengthSeq :: Seq -> Integer
lengthDPN :: DPN -> Integer
index :: [a] -> Integer -> a
index1 :: [a] -> Integer -> a
idx :: [a] -> Integer -> a
indexSeq :: Seq -> Index -> Integer
indexDPN :: DPN -> Index -> DPNTuple
indexD :: DPN -> Index -> Diff
indexP :: DPN -> Index -> ParentList
indexN :: DPN -> Index -> Depth
indexPList :: ParentList -> Index -> ParentIndex
slice :: Integer -> Integer -> [a] -> [a]
slice1 :: Integer -> Integer -> [a] -> [a]
sliceDPN :: Integer -> Integer -> DPN -> DPN
dropLast :: [a] -> [a]
module Numeric.YHSeq.V0111.Expansion
badRoot :: DPN -> Index
goodPart :: DPN -> DPN
badPart :: DPN -> DPN
cuttedPart :: DPN -> DPN
pnt :: DPN -> Index -> Depth -> ParentIndex
anc :: DPN -> Index -> Depth -> [ParentIndex]
badRootL :: DPN -> Index
delta :: DPN -> Integer
amt :: DPN -> Index -> Bool
bas :: DPN -> Index -> ParentList
rising :: DPN -> Integer -> Index -> ParentIndex -> ParentIndex
ris :: DPN -> Integer -> Index -> ParentList -> ParentList
newD :: DPN -> Integer -> Index -> Diff
newP :: DPN -> Integer -> Index -> ParentList
newN :: DPN -> Integer -> Index -> Depth
copiedBadPart :: DPN -> Integer -> DPN
expand :: DPN -> Class -> Integer -> DPN
module Numeric.YHSeq.V0111.Decompression
reD :: DPN -> Index -> Depth -> Diff
reP :: DPN -> Index -> Depth -> Diff
decompress :: DPN -> Seq
module Numeric.YHSeq.V0111.Compression
mtD :: Seq -> Index -> Depth -> Diff
mtP :: Seq -> Index -> Depth -> ParentIndex
isAnc :: Seq -> Index -> Depth -> ParentIndex -> Bool
anc :: Seq -> Index -> Depth -> [ParentIndex]
nonEmptyDepth :: Seq -> Depth
cl :: Seq -> Class
compressionDepth :: Seq -> Depth
cM :: Seq -> Index -> Depth
cU :: Seq -> Index -> Depth
btm :: Seq -> Index -> Depth
cD :: Seq -> Index -> Diff
cP :: Seq -> Index -> ParentList
cN :: Seq -> Index -> Depth
seqClass :: Seq -> Class
compress :: Seq -> DPN
module Numeric.YHSeq.V0111
data Cofinal
IsZero :: Cofinal
IsSucc :: Cofinal
IsLimit :: Cofinal
isZero :: Seq -> Bool
isSucc :: Seq -> Bool
isLimit :: Seq -> Bool
scof :: Seq -> Cofinal
fseq :: Seq -> Integer -> Seq
pseq :: Seq -> Seq
-- | It's a very very large function.
yhseq :: Seq -> Integer -> Integer
module Numeric.YHSeq.V0200.Type
type Seq = [Integer]
type Index = Integer
type Diff = Integer
type ParentIndex = Index
type ParentList = [ParentIndex]
type Depth = Integer
type DPNTuple = (Diff, ParentList, Depth)
type DPN = [DPNTuple]
type Class = Integer
length :: [a] -> Integer
lengthSeq :: Seq -> Integer
lengthDPN :: DPN -> Integer
index :: [a] -> Integer -> a
index1 :: [a] -> Integer -> a
idx :: [a] -> Integer -> a
indexSeq :: Seq -> Index -> Integer
indexDPN :: DPN -> Index -> DPNTuple
indexD :: DPN -> Index -> Diff
indexP :: DPN -> Index -> ParentList
indexN :: DPN -> Index -> Depth
indexPList :: ParentList -> Index -> ParentIndex
slice :: Integer -> Integer -> [a] -> [a]
slice1 :: Integer -> Integer -> [a] -> [a]
sliceDPN :: Integer -> Integer -> DPN -> DPN
dropLast :: [a] -> [a]
module Numeric.YHSeq.V0200.Expansion
badRoot :: DPN -> Index
goodPart :: DPN -> DPN
badPart :: DPN -> DPN
cuttedPart :: DPN -> DPN
pnt :: DPN -> Index -> Depth -> ParentIndex
anc :: DPN -> Index -> Depth -> [ParentIndex]
badRootL :: DPN -> Index
delta :: DPN -> Integer
amt :: DPN -> Index -> Depth -> Bool
bas :: DPN -> Index -> ParentList
rising :: DPN -> Integer -> Index -> ParentIndex -> Depth -> ParentIndex
rise :: DPN -> Integer -> Index -> ParentList -> Depth -> (ParentList, Depth)
ris :: DPN -> Integer -> Index -> ParentList -> Depth -> ParentList
newD :: DPN -> Integer -> Index -> Diff
newP :: DPN -> Integer -> Index -> ParentList
newN :: DPN -> Integer -> Index -> Depth
copiedBadPart :: DPN -> Integer -> DPN
expand :: DPN -> Class -> Integer -> DPN
module Numeric.YHSeq.V0200.Decompression
reD :: DPN -> Index -> Depth -> Diff
reP :: DPN -> Index -> Depth -> Diff
decompress :: DPN -> Seq
module Numeric.YHSeq.V0200.Compression
mtD :: Seq -> Index -> Depth -> Diff
mtP :: Seq -> Index -> Depth -> ParentIndex
isAnc :: Seq -> Index -> Depth -> ParentIndex -> Bool
anc :: Seq -> Index -> Depth -> [ParentIndex]
nonEmptyDepth :: Seq -> Depth
cl :: Seq -> Class
compressionDepth :: Seq -> Depth
cM :: Seq -> Index -> Depth
cU :: Seq -> Index -> Depth
btm :: Seq -> Index -> Depth
cD :: Seq -> Index -> Diff
cP :: Seq -> Index -> ParentList
cN :: Seq -> Index -> Depth
seqClass :: Seq -> Class
compress :: Seq -> DPN
module Numeric.YHSeq.V0200
data Cofinal
IsZero :: Cofinal
IsSucc :: Cofinal
IsLimit :: Cofinal
isZero :: Seq -> Bool
isSucc :: Seq -> Bool
isLimit :: Seq -> Bool
scof :: Seq -> Cofinal
fseq :: Seq -> Integer -> Seq
pseq :: Seq -> Seq
-- | It's a very very large function.
yhseq :: Seq -> Integer -> Integer
-- | YH数列システム 2.0.1 の定義。
--
-- ここでは Data.IntSet と Data.Vector を活用している。
--
-- 英語では YH sequence system 2.0.1 と呼ぶことにする。短く呼ぶときは YHSS 2.0.1 と呼ぶことにする。
module Numeric.YHSeq.V0201
-- | 1 から n までの配列に関数を適用する。
--
-- 0 が与えられた場合は空の配列を返す。
genVec :: (Ord i, Integral i) => i -> (i -> a) -> Vector a
-- | 数列、または列。
newtype Sequence
Sequence :: Vector Int -> Sequence
[unSequence] :: Sequence -> Vector Int
-- | Sequence のための添字演算。
ixSeq :: Sequence -> Int -> Int
-- | リストから数列を作る。
makeSeqFromList :: [Int] -> Sequence
-- | 階差。
--
-- 数列の階差を取った列を階差列と呼ぶことにする。たとえば (1,2,4,8,16,...) の階差列は (0,1,2,4,8,...) だ。
newtype Difference
Difference :: Int -> Difference
[unDifference] :: Difference -> Int
-- | 添字。
--
-- 添字といっても Sequence の添字ではなく親を参照したりするときに使う添字だ。 ixSeq
-- を見てもらえば分かるように、 Sequence の添字は普通の Int だ。
newtype Index
Index :: Int -> Index
[unIndex] :: Index -> Int
-- | 添字の集合。
--
-- 添字の集合と言っても、たぶん先祖の集合を表すのにしか使わないと思う。
newtype IndexSet
IndexSet :: IntSet -> IndexSet
[unIndexSet] :: IndexSet -> IntSet
-- | 深さ。
--
-- YHSS 2.0.1 では、深さは 0 にならない。
newtype Depth
Depth :: Int -> Depth
[unDepth] :: Depth -> Int
-- | 山。
--
-- 条件として dMt と pMt と aMt の長さはそれぞれ sMt に等しい。
data Mountain
Mountain :: Int -> Vector (Vector Difference) -> Vector (Vector Index) -> Vector (Vector IndexSet) -> Mountain
-- | 山のサイズ。
[sMt] :: Mountain -> Int
-- | 階差。
[dMt] :: Mountain -> Vector (Vector Difference)
-- | 親の添字。
[pMt] :: Mountain -> Vector (Vector Index)
-- | 先祖の集合。
[aMt] :: Mountain -> Vector (Vector IndexSet)
-- | 山から階差を添字で取得する。
ixMtToDiff :: Mountain -> Index -> Depth -> Difference
-- | 山から親の添字を添字で取得する。
ixMtToPaet :: Mountain -> Index -> Depth -> Index
-- | 山から先祖の集合を添字で取得する。
ixMtToAnce :: Mountain -> Index -> Depth -> IndexSet
-- | メモを参照しながら数列から山の階差の部分を計算する。
calcDiffOnMtFromSeqWiM :: Mountain -> Sequence -> Index -> Depth -> Difference
-- | メモを参照しながら数列から山の親の添字の部分を計算する。
calcPaetOnMtFromSeqWiM :: Mountain -> Index -> Depth -> Index
-- | メモを参照しながら数列から山の先祖の集合の部分を計算する。
calcAnceOnMtFromSeqWiM :: Mountain -> Index -> Depth -> IndexSet
-- | 一つ浅い深さで先祖であるか。
--
-- 名前は at shallow の略である。
isAnceAtSh :: Mountain -> Index -> Depth -> Index -> Bool
-- | 数列から山を計算する。
calcMtFromSeq :: Sequence -> Mountain
-- | クラス。
newtype Class
Class :: Int -> Class
[unClass] :: Class -> Int
-- | 共終タイプ。
--
-- 順序数に対して定義される数学的な共終数ではない。
data CofType
IsZero :: CofType
IsSucc :: CofType
IsLim :: Class -> CofType
-- | 階差が存在する最も大きい深さを、それぞれの添字について計算する。
--
-- ここで 0 の深さが現れているが、深さ 1 での階差が 0 でない限り、最終的な計算結果の深さは 0 にならない。
calcBottom :: Mountain -> Index -> Depth
-- | 共終タイプを計算する。
calcCofType :: Mountain -> CofType
-- | DPN 形式。
--
-- 条件として dDPN と pDPN と nDPN の長さはそれぞれ sDPN に等しい。
data DPN
DPN :: Int -> Vector Difference -> Vector (Vector Index) -> Vector Depth -> DPN
[sDPN] :: DPN -> Int
[dDPN] :: DPN -> Vector Difference
[pDPN] :: DPN -> Vector (Vector Index)
[nDPN] :: DPN -> Vector Depth
-- | DPN 形式から階差を添字で取得する。
ixDpnToDiff :: DPN -> Index -> Difference
-- | DPN 形式から親の添字の列を添字で取得する。
ixDpnToPaet :: DPN -> Index -> Vector Index
-- | DPN 形式から深さを添字で取得する。
ixDpnToNpth :: DPN -> Index -> Depth
-- | 展開に関わる最も大きい深さを計算する。
calcLimitDepth :: Mountain -> Depth
-- | 展開に関わる最も大きい深さを、それぞれの添字について計算する。
calcMaxDepth :: Mountain -> Index -> Depth
-- | DPN 形式での階差の部分を計算する。
calcDiffOnDpn :: Mountain -> Index -> Difference
-- | DPN 形式での親の添字の部分を計算する。
calcPaetOnDpn :: Mountain -> Index -> Vector Index
-- | DPN 形式での深さの部分を計算する。
calcNpthOnDpn :: Mountain -> Index -> Depth
-- | DPN 形式を計算する。
calcDpn :: Mountain -> DPN
-- | 悪部根を計算する。
calcBadRoot :: Mountain -> Index
-- | 展開する際の階差の部分を計算する。
calcDiffAtExp :: Mountain -> Index -> Difference
-- | 展開する際の親の添字の部分を計算する。
calcPaetAtExp :: Mountain -> Index -> Vector Index
-- | 展開する際の深さの部分を計算する。
calcNpthAtExp :: Mountain -> Index -> Depth
-- | 共終タイプが IsLim 1 である場合において山を展開する。
expandMtAtLim1 :: Mountain -> Int -> DPN
-- | メモを参照しながら DPN 形式から山の階差の部分を計算する。
calcDiffOnMtFromDpnWiM :: Mountain -> DPN -> Index -> Depth -> Difference
-- | メモを参照しながら DPN 形式から山の親の添字の部分を計算する。
calcPaetOnMtFromDpnWiM :: DPN -> Index -> Depth -> Index
-- | メモを参照しながら DPN 形式から山の先祖の集合の部分を計算する。
calcAnceOnMtFromDpnWiM :: Mountain -> Index -> Depth -> IndexSet
-- | DPN 形式から山を計算する。
calcMtFromDpn :: DPN -> Mountain
-- | 山から数列を計算する。
calcSeqFromMt :: Mountain -> Sequence
-- | 共終タイプが IsLim 1 である場合において数列を展開する。
expandSeqAtLim1 :: Sequence -> Int -> Sequence
-- | expandSeq および expandList におけるエラーを表現する型。
data ExpandingError
-- | 基本列において範囲から外れている時。
OutOfIndexOnFunSeq :: ExpandingError
-- | クラスが範囲から外れている時。
OutOfClass :: ExpandingError
-- | 数列を展開する。
expandSeq :: Sequence -> Int -> Either ExpandingError Sequence
-- | 数列からリストを作る。
makeListFromSeq :: Sequence -> [Int]
-- | リストを展開する。
expandList :: [Int] -> Int -> Either ExpandingError [Int]
instance GHC.Read.Read Numeric.YHSeq.V0201.ExpandingError
instance GHC.Show.Show Numeric.YHSeq.V0201.ExpandingError
instance GHC.Enum.Enum Numeric.YHSeq.V0201.ExpandingError
instance GHC.Enum.Bounded Numeric.YHSeq.V0201.ExpandingError
instance GHC.Classes.Ord Numeric.YHSeq.V0201.ExpandingError
instance GHC.Classes.Eq Numeric.YHSeq.V0201.ExpandingError
instance GHC.Read.Read Numeric.YHSeq.V0201.DPN
instance GHC.Show.Show Numeric.YHSeq.V0201.DPN
instance GHC.Classes.Ord Numeric.YHSeq.V0201.DPN
instance GHC.Classes.Eq Numeric.YHSeq.V0201.DPN
instance GHC.Read.Read Numeric.YHSeq.V0201.CofType
instance GHC.Show.Show Numeric.YHSeq.V0201.CofType
instance GHC.Classes.Ord Numeric.YHSeq.V0201.CofType
instance GHC.Classes.Eq Numeric.YHSeq.V0201.CofType
instance GHC.Base.Monoid Numeric.YHSeq.V0201.Class
instance GHC.Base.Semigroup Numeric.YHSeq.V0201.Class
instance GHC.Real.Integral Numeric.YHSeq.V0201.Class
instance GHC.Real.Real Numeric.YHSeq.V0201.Class
instance GHC.Num.Num Numeric.YHSeq.V0201.Class
instance GHC.Read.Read Numeric.YHSeq.V0201.Class
instance GHC.Show.Show Numeric.YHSeq.V0201.Class
instance GHC.Enum.Enum Numeric.YHSeq.V0201.Class
instance GHC.Enum.Bounded Numeric.YHSeq.V0201.Class
instance GHC.Classes.Ord Numeric.YHSeq.V0201.Class
instance GHC.Classes.Eq Numeric.YHSeq.V0201.Class
instance GHC.Read.Read Numeric.YHSeq.V0201.Mountain
instance GHC.Show.Show Numeric.YHSeq.V0201.Mountain
instance GHC.Classes.Ord Numeric.YHSeq.V0201.Mountain
instance GHC.Classes.Eq Numeric.YHSeq.V0201.Mountain
instance GHC.Base.Monoid Numeric.YHSeq.V0201.Depth
instance GHC.Base.Semigroup Numeric.YHSeq.V0201.Depth
instance GHC.Real.Integral Numeric.YHSeq.V0201.Depth
instance GHC.Real.Real Numeric.YHSeq.V0201.Depth
instance GHC.Num.Num Numeric.YHSeq.V0201.Depth
instance GHC.Read.Read Numeric.YHSeq.V0201.Depth
instance GHC.Show.Show Numeric.YHSeq.V0201.Depth
instance GHC.Enum.Enum Numeric.YHSeq.V0201.Depth
instance GHC.Enum.Bounded Numeric.YHSeq.V0201.Depth
instance GHC.Classes.Ord Numeric.YHSeq.V0201.Depth
instance GHC.Classes.Eq Numeric.YHSeq.V0201.Depth
instance GHC.Base.Monoid Numeric.YHSeq.V0201.IndexSet
instance GHC.Base.Semigroup Numeric.YHSeq.V0201.IndexSet
instance GHC.Read.Read Numeric.YHSeq.V0201.IndexSet
instance GHC.Show.Show Numeric.YHSeq.V0201.IndexSet
instance GHC.Classes.Ord Numeric.YHSeq.V0201.IndexSet
instance GHC.Classes.Eq Numeric.YHSeq.V0201.IndexSet
instance GHC.Base.Monoid Numeric.YHSeq.V0201.Index
instance GHC.Base.Semigroup Numeric.YHSeq.V0201.Index
instance GHC.Real.Integral Numeric.YHSeq.V0201.Index
instance GHC.Real.Real Numeric.YHSeq.V0201.Index
instance GHC.Num.Num Numeric.YHSeq.V0201.Index
instance GHC.Read.Read Numeric.YHSeq.V0201.Index
instance GHC.Show.Show Numeric.YHSeq.V0201.Index
instance GHC.Enum.Enum Numeric.YHSeq.V0201.Index
instance GHC.Enum.Bounded Numeric.YHSeq.V0201.Index
instance GHC.Classes.Ord Numeric.YHSeq.V0201.Index
instance GHC.Classes.Eq Numeric.YHSeq.V0201.Index
instance GHC.Base.Monoid Numeric.YHSeq.V0201.Difference
instance GHC.Base.Semigroup Numeric.YHSeq.V0201.Difference
instance GHC.Real.Integral Numeric.YHSeq.V0201.Difference
instance GHC.Real.Real Numeric.YHSeq.V0201.Difference
instance GHC.Num.Num Numeric.YHSeq.V0201.Difference
instance GHC.Read.Read Numeric.YHSeq.V0201.Difference
instance GHC.Show.Show Numeric.YHSeq.V0201.Difference
instance GHC.Enum.Enum Numeric.YHSeq.V0201.Difference
instance GHC.Enum.Bounded Numeric.YHSeq.V0201.Difference
instance GHC.Classes.Ord Numeric.YHSeq.V0201.Difference
instance GHC.Classes.Eq Numeric.YHSeq.V0201.Difference
instance GHC.Base.Monoid Numeric.YHSeq.V0201.Sequence
instance GHC.Base.Semigroup Numeric.YHSeq.V0201.Sequence
instance GHC.Read.Read Numeric.YHSeq.V0201.Sequence
instance GHC.Show.Show Numeric.YHSeq.V0201.Sequence
instance GHC.Classes.Ord Numeric.YHSeq.V0201.Sequence
instance GHC.Classes.Eq Numeric.YHSeq.V0201.Sequence
instance GHC.Enum.Bounded Numeric.YHSeq.V0201.CofType
module Numeric.YHSeq.V0210.Type
type Seq = [Integer]
type Index = Integer
type Diff = Integer
type ParentIndex = Index
type ParentList = [ParentIndex]
type Depth = Integer
type DPNTuple = (Diff, ParentList, Depth)
type DPN = [DPNTuple]
type Class = Integer
length :: [a] -> Integer
lengthSeq :: Seq -> Integer
lengthDPN :: DPN -> Integer
index :: [a] -> Integer -> a
index1 :: [a] -> Integer -> a
idx :: [a] -> Integer -> a
indexSeq :: Seq -> Index -> Integer
indexDPN :: DPN -> Index -> DPNTuple
indexD :: DPN -> Index -> Diff
indexP :: DPN -> Index -> ParentList
indexN :: DPN -> Index -> Depth
indexPList :: ParentList -> Index -> ParentIndex
slice :: Integer -> Integer -> [a] -> [a]
slice1 :: Integer -> Integer -> [a] -> [a]
sliceDPN :: Integer -> Integer -> DPN -> DPN
dropLast :: [a] -> [a]
module Numeric.YHSeq.V0210.Expansion
badRoot :: DPN -> Index
goodPart :: DPN -> DPN
badPart :: DPN -> DPN
cuttedPart :: DPN -> DPN
pnt :: DPN -> Index -> Depth -> ParentIndex
anc :: DPN -> Index -> Depth -> [ParentIndex]
badRootL :: DPN -> Index
delta :: DPN -> Integer
amt :: DPN -> Index -> Bool
bas :: DPN -> Index -> ParentList
rising :: DPN -> Integer -> Index -> ParentIndex -> ParentIndex
ris :: DPN -> Integer -> Index -> ParentList -> ParentList
newD :: DPN -> Integer -> Index -> Diff
newP :: DPN -> Integer -> Index -> ParentList
newN :: DPN -> Integer -> Index -> Depth
copiedBadPart :: DPN -> Integer -> DPN
expand :: DPN -> Class -> Integer -> DPN
module Numeric.YHSeq.V0210.Decompression
reD :: DPN -> Index -> Depth -> Diff
reP :: DPN -> Index -> Depth -> Diff
decompress :: DPN -> Seq
module Numeric.YHSeq.V0210.Compression
mtD :: Seq -> Index -> Depth -> Diff
mtP :: Seq -> Index -> Depth -> ParentIndex
isAnc :: Seq -> Index -> Depth -> ParentIndex -> Bool
anc :: Seq -> Index -> Depth -> [ParentIndex]
nonEmptyDepth :: Seq -> Depth
cl :: Seq -> Class
compressionDepth :: Seq -> Depth
cM :: Seq -> Index -> Depth
cU :: Seq -> Index -> Depth
btm :: Seq -> Index -> Depth
cD :: Seq -> Index -> Diff
cP :: Seq -> Index -> ParentList
cN :: Seq -> Index -> Depth
seqClass :: Seq -> Class
compress :: Seq -> DPN
module Numeric.YHSeq.V0210
data Cofinal
IsZero :: Cofinal
IsSucc :: Cofinal
IsLimit :: Cofinal
isZero :: Seq -> Bool
isSucc :: Seq -> Bool
isLimit :: Seq -> Bool
scof :: Seq -> Cofinal
fseq :: Seq -> Integer -> Seq
pseq :: Seq -> Seq
-- | It's a very very large function.
yhseq :: Seq -> Integer -> Integer