UNPKG

ultra-mega-enumerator

Version:

Ultra Mega Enumerator is a lightweight library designed to enumerate various combinatorial objects.

100 lines (99 loc) 3.06 kB
export declare enum Operation { Add = "Add", Subtract = "Subtract", Multiply = "Multiply", Divide = "Divide", X = "X", Y = "Y", Power = "Power", Log = "Log", Min = "Min", Max = "Max", Modulo = "Modulo", Bounce = "Bounce", Distance = "Distance", And = "And", Nand = "Nand", Or = "Or", Nor = "Nor", Implication = "Implication", ReverseImplication = "ReverseImplication", Xor = "Xor", Xnor = "Xnor", ShiftBits = "ShiftBits", ProjectBits = "ProjectBits", LCM = "LCM", GCD = "GCD", Equal = "Equal", NotEqual = "NotEqual", LessThan = "LessThan", LessThanOrEqual = "LessThanOrEqual", GreaterThan = "GreaterThan", GreaterThanOrEqual = "GreaterThanOrEqual", Binomial = "Binomial", ExpandBits = "ExpandBits", ExpandBitsFill = "ExpandBitsFill", CantorIntervalBinaryNumber = "CantorIntervalBinaryNumber", PermuteBits = "PermuteBits", HardThreshold = "HardThreshold", RandInt = "RandInt", IterateBetween = "IterateBetween", Bits = "Bits", Trits = "Trits", TritAnd = "TritAnd", TritNand = "TritNand", TritOr = "TritOr", TritNor = "TritNor", TritCons = "TritCons", TritNcons = "TritNcons", TritAny = "TritAny", TritNany = "TritNany", TritMul = "TritMul", TritNmul = "TritNmul", TritSum = "TritSum", TritNsum = "TritNsum" } export declare enum Combiner { Product = "Product", SwappedProduct = "SwappedProduct", Divisive = "Divisive", Convolution = "Convolution", Triangular = "Triangular", SwappedTriangular = "SwappedTriangular", Recycle = "Recycle", Apply = "Apply", MixedRadix = "Mixed Radix" } export declare class Sequence { private items; constructor(...items: number[]); toString(): string; add(item: number): void; size(): number; get(index: number): number | undefined; set(index: number, value: number): void; concat(n: number[]): number[]; toArray(): number[]; signs(): Sequence; isNatural(): boolean; difference(): Sequence; cyclicalDifference(): Sequence; antidifference(k: number): Sequence; cyclicalAntidifference(k: number): Sequence; getSymmetries(): number[]; static parse(s: string): Sequence; getMean(): number; sum(): number; getMin(): number; getMax(): number; rotate(n: number): Sequence; static fromArray(arr: number[]): Sequence; frequencyMap(): Map<number, number>; static genRnd(length: number, amp: number, sum: number, maxAmp: number, exclude0: boolean): Sequence; private static calculateIntervalVector; static calcIntervalVector(input: boolean[]): Sequence; static calcIntervalVectorBitSet(input: boolean[], n: number): Sequence; static calcIntervalVectorDistinct(sequence: Sequence): Map<number, Sequence>; static calcIntervalVectorInts(input: number[]): Map<number, Sequence>; static combine(combiner: Combiner, operation: Operation, x: Sequence, y: Sequence): Sequence; }