Mpir.NET
 All Classes Namespaces Files Functions Variables Typedefs Enumerator Properties
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Properties | List of all members
Mpir.NET.mpz_t Class Reference

Inherits IDisposable, ICloneable, IConvertible, and IComparable.

Public Member Functions

 mpz_t ()
 Initializes a new mpz_t to 0. More...
 
 mpz_t (mpz_t op)
 Initializes a new mpz_t to the same value as op. More...
 
 mpz_t (uint op)
 Initializes a new mpz_t to the unsigned int op. More...
 
 mpz_t (int op)
 Initializes a new mpz_t to the int op. More...
 
 mpz_t (double op)
 Initializes a new mpz_t to the double op. More...
 
 mpz_t (string s, uint _base)
 Initializes a new mpz_t to string s, parsed as an integer in the specified base. More...
 
 mpz_t (string s)
 Initializes a new mpz_t to string s, parsed as an integer in base 10. More...
 
 mpz_t (BigInteger op)
 Initializes a new mpz_t to the BigInteger op. More...
 
 mpz_t (long op)
 Initializes a new mpz_t to the long op. More...
 
 mpz_t (ulong op)
 Initializes a new mpz_t to the unsigned long op. More...
 
 mpz_t (byte[] bytes, int order)
 
void Dispose ()
 
void FromByteArray (byte[] source, int order)
 
void ImportByOffset (byte[] source, int startOffset, int endOffset, int order)
 
byte[] ToByteArray (int order)
 
mpz_t ChangeBit (int bitIndex, int value)
 
mpz_t Abs ()
 Returns a new mpz_t which is the absolute value of this value. More...
 
mpz_t Negate ()
 
mpz_t Complement ()
 
mpz_t Add (mpz_t x)
 
mpz_t Add (int x)
 
mpz_t Add (uint x)
 
mpz_t Subtract (mpz_t x)
 
mpz_t Subtract (int x)
 
mpz_t Subtract (uint x)
 
mpz_t Multiply (mpz_t x)
 
mpz_t Multiply (int x)
 
mpz_t Multiply (uint x)
 
mpz_t Square ()
 
mpz_t Divide (mpz_t x)
 
mpz_t Divide (int x)
 
mpz_t Divide (uint x)
 
mpz_t Divide (mpz_t x, out mpz_t remainder)
 
mpz_t Divide (int x, out mpz_t remainder)
 
mpz_t Divide (int x, out int remainder)
 
mpz_t Divide (uint x, out mpz_t remainder)
 
mpz_t Divide (uint x, out uint remainder)
 
mpz_t Divide (uint x, out int remainder)
 
mpz_t Remainder (mpz_t x)
 
bool IsDivisibleBy (mpz_t x)
 
bool IsDivisibleBy (int x)
 
bool IsDivisibleBy (uint x)
 
mpz_t DivideExactly (mpz_t x)
 Divides exactly. Only works when the division is gauranteed to be exact (there is no remainder). More...
 
mpz_t DivideExactly (int x)
 
mpz_t DivideExactly (uint x)
 
mpz_t DivideMod (mpz_t x, mpz_t mod)
 
mpz_t And (mpz_t x)
 
mpz_t Or (mpz_t x)
 
mpz_t Xor (mpz_t x)
 
mpz_t Mod (mpz_t mod)
 
mpz_t Mod (int mod)
 
mpz_t Mod (uint mod)
 
int ModAsInt32 (int mod)
 
uint ModAsUInt32 (uint mod)
 
mpz_t ShiftLeft (int shiftAmount)
 
mpz_t ShiftRight (int shiftAmount)
 
mpz_t PowerMod (mpz_t exponent, mpz_t mod)
 
mpz_t PowerMod (int exponent, mpz_t mod)
 
mpz_t PowerMod (uint exponent, mpz_t mod)
 
mpz_t Power (int exponent)
 
mpz_t Power (uint exponent)
 
mpz_t InvertMod (mpz_t mod)
 
bool TryInvertMod (mpz_t mod, out mpz_t result)
 
bool InverseModExists (mpz_t mod)
 
mpz_t Sqrt ()
 
mpz_t Sqrt (out mpz_t remainder)
 
mpz_t Sqrt (out bool isExact)
 
mpz_t Root (int n)
 
mpz_t Root (uint n)
 
mpz_t Root (int n, out bool isExact)
 
mpz_t Root (uint n, out bool isExact)
 
mpz_t Root (int n, out mpz_t remainder)
 
mpz_t Root (uint n, out mpz_t remainder)
 
bool IsPerfectSquare ()
 
bool IsPerfectPower ()
 
bool IsProbablyPrimeRabinMiller (uint repetitions)
 
mpz_t NextPrimeGMP ()
 
mpz_t RemoveFactor (mpz_t factor)
 
mpz_t RemoveFactor (mpz_t factor, out int count)
 
int CountOnes ()
 
int HammingDistance (mpz_t x, mpz_t y)
 
int IndexOfZero (int startingIndex)
 
int IndexOfOne (int startingIndex)
 
override int GetHashCode ()
 
bool Equals (mpz_t other)
 
override bool Equals (object obj)
 
bool Equals (int other)
 
bool Equals (uint other)
 
bool Equals (long other)
 
bool Equals (ulong other)
 
bool Equals (double other)
 
bool EqualsMod (mpz_t x, mpz_t mod)
 
bool EqualsMod (int x, int mod)
 
bool EqualsMod (uint x, uint mod)
 
int CompareTo (object obj)
 
int CompareTo (mpz_t other)
 
int CompareTo (int other)
 
int CompareTo (uint other)
 
int CompareTo (long other)
 
int CompareTo (ulong other)
 
int CompareTo (float other)
 
int CompareTo (double other)
 
int CompareAbsTo (object obj)
 
int CompareAbsTo (mpz_t other)
 
int CompareAbsTo (int other)
 
int CompareAbsTo (uint other)
 
int CompareAbsTo (long other)
 
int CompareAbsTo (ulong other)
 
int CompareAbsTo (double other)
 
mpz_t Clone ()
 
BigInteger ToBigInteger ()
 
override string ToString ()
 
string ToString (uint @base)
 

Static Public Member Functions

static mpz_t init2 (ulong n)
 
static mpz_t operator- (mpz_t x)
 
static mpz_t operator~ (mpz_t x)
 
static mpz_t operator+ (mpz_t x, mpz_t y)
 
static mpz_t operator+ (mpz_t x, int y)
 
static mpz_t operator+ (int x, mpz_t y)
 
static mpz_t operator+ (mpz_t x, uint y)
 
static mpz_t operator+ (uint x, mpz_t y)
 
static mpz_t operator- (mpz_t x, mpz_t y)
 
static mpz_t operator- (int x, mpz_t y)
 
static mpz_t operator- (mpz_t x, int y)
 
static mpz_t operator- (uint x, mpz_t y)
 
static mpz_t operator- (mpz_t x, uint y)
 
static mpz_t operator++ (mpz_t x)
 
static mpz_t operator-- (mpz_t x)
 
static mpz_t operator* (mpz_t x, mpz_t y)
 
static mpz_t operator* (int x, mpz_t y)
 
static mpz_t operator* (mpz_t x, int y)
 
static mpz_t operator* (uint x, mpz_t y)
 
static mpz_t operator* (mpz_t x, uint y)
 
static mpz_t operator/ (mpz_t x, mpz_t y)
 
static mpz_t operator/ (mpz_t x, int y)
 
static mpz_t operator/ (mpz_t x, uint y)
 
static mpz_t operator& (mpz_t x, mpz_t y)
 
static mpz_t operator| (mpz_t x, mpz_t y)
 
static mpz_t operator^ (mpz_t x, mpz_t y)
 
static mpz_t operator% (mpz_t x, mpz_t mod)
 
static mpz_t operator% (mpz_t x, int mod)
 
static mpz_t operator% (mpz_t x, uint mod)
 
static bool operator< (mpz_t x, mpz_t y)
 
static bool operator< (int x, mpz_t y)
 
static bool operator< (mpz_t x, int y)
 
static bool operator< (uint x, mpz_t y)
 
static bool operator< (mpz_t x, uint y)
 
static bool operator< (long x, mpz_t y)
 
static bool operator< (mpz_t x, long y)
 
static bool operator< (ulong x, mpz_t y)
 
static bool operator< (mpz_t x, ulong y)
 
static bool operator< (float x, mpz_t y)
 
static bool operator< (mpz_t x, float y)
 
static bool operator< (double x, mpz_t y)
 
static bool operator< (mpz_t x, double y)
 
static bool operator<= (mpz_t x, mpz_t y)
 
static bool operator<= (int x, mpz_t y)
 
static bool operator<= (mpz_t x, int y)
 
static bool operator<= (uint x, mpz_t y)
 
static bool operator<= (mpz_t x, uint y)
 
static bool operator<= (long x, mpz_t y)
 
static bool operator<= (mpz_t x, long y)
 
static bool operator<= (ulong x, mpz_t y)
 
static bool operator<= (mpz_t x, ulong y)
 
static bool operator<= (float x, mpz_t y)
 
static bool operator<= (mpz_t x, float y)
 
static bool operator<= (double x, mpz_t y)
 
static bool operator<= (mpz_t x, double y)
 
static bool operator> (mpz_t x, mpz_t y)
 
static bool operator> (int x, mpz_t y)
 
static bool operator> (mpz_t x, int y)
 
static bool operator> (uint x, mpz_t y)
 
static bool operator> (mpz_t x, uint y)
 
static bool operator> (long x, mpz_t y)
 
static bool operator> (mpz_t x, long y)
 
static bool operator> (ulong x, mpz_t y)
 
static bool operator> (mpz_t x, ulong y)
 
static bool operator> (float x, mpz_t y)
 
static bool operator> (mpz_t x, float y)
 
static bool operator> (double x, mpz_t y)
 
static bool operator> (mpz_t x, double y)
 
static bool operator>= (mpz_t x, mpz_t y)
 
static bool operator>= (int x, mpz_t y)
 
static bool operator>= (mpz_t x, int y)
 
static bool operator>= (uint x, mpz_t y)
 
static bool operator>= (mpz_t x, uint y)
 
static bool operator>= (long x, mpz_t y)
 
static bool operator>= (mpz_t x, long y)
 
static bool operator>= (ulong x, mpz_t y)
 
static bool operator>= (mpz_t x, ulong y)
 
static bool operator>= (float x, mpz_t y)
 
static bool operator>= (mpz_t x, float y)
 
static bool operator>= (double x, mpz_t y)
 
static bool operator>= (mpz_t x, double y)
 
static mpz_t operator<< (mpz_t x, int shiftAmount)
 
static mpz_t operator>> (mpz_t x, int shiftAmount)
 
static mpz_t Power (int x, int exponent)
 
static mpz_t Power (uint x, uint exponent)
 
static mpz_t Gcd (mpz_t x, mpz_t y)
 
static mpz_t Gcd (mpz_t x, int y)
 
static mpz_t Gcd (int x, mpz_t y)
 
static mpz_t Gcd (mpz_t x, uint y)
 
static mpz_t Gcd (uint x, mpz_t y)
 
static mpz_t Gcd (mpz_t x, mpz_t y, out mpz_t a, out mpz_t b)
 
static mpz_t Gcd (mpz_t x, mpz_t y, out mpz_t a)
 
static mpz_t Lcm (mpz_t x, mpz_t y)
 
static mpz_t Lcm (mpz_t x, int y)
 
static mpz_t Lcm (int x, mpz_t y)
 
static mpz_t Lcm (mpz_t x, uint y)
 
static mpz_t Lcm (uint x, mpz_t y)
 
static int LegendreSymbol (mpz_t x, mpz_t primeY)
 
static int JacobiSymbol (mpz_t x, mpz_t y)
 
static int JacobiSymbol (mpz_t x, int y)
 
static int JacobiSymbol (int x, mpz_t y)
 
static int JacobiSymbol (mpz_t x, uint y)
 
static int JacobiSymbol (uint x, mpz_t y)
 
static int KroneckerSymbol (mpz_t x, mpz_t y)
 
static int KroneckerSymbol (mpz_t x, int y)
 
static int KroneckerSymbol (int x, mpz_t y)
 
static int KroneckerSymbol (mpz_t x, uint y)
 
static int KroneckerSymbol (uint x, mpz_t y)
 
static mpz_t Factorial (int x)
 
static mpz_t Factorial (uint x)
 
static mpz_t Binomial (mpz_t n, uint k)
 
static mpz_t Binomial (mpz_t n, int k)
 
static mpz_t Binomial (uint n, uint k)
 
static mpz_t Binomial (int n, int k)
 
static mpz_t Fibonacci (int n)
 
static mpz_t Fibonacci (uint n)
 
static mpz_t Fibonacci (int n, out mpz_t previous)
 
static mpz_t Fibonacci (uint n, out mpz_t previous)
 
static mpz_t Lucas (int n)
 
static mpz_t Lucas (uint n)
 
static mpz_t Lucas (int n, out mpz_t previous)
 
static mpz_t Lucas (uint n, out mpz_t previous)
 
static bool operator== (mpz_t x, mpz_t y)
 
static bool operator== (int x, mpz_t y)
 
static bool operator== (mpz_t x, int y)
 
static bool operator== (uint x, mpz_t y)
 
static bool operator== (mpz_t x, uint y)
 
static bool operator== (long x, mpz_t y)
 
static bool operator== (mpz_t x, long y)
 
static bool operator== (ulong x, mpz_t y)
 
static bool operator== (mpz_t x, ulong y)
 
static bool operator== (float x, mpz_t y)
 
static bool operator== (mpz_t x, float y)
 
static bool operator== (double x, mpz_t y)
 
static bool operator== (mpz_t x, double y)
 
static bool operator!= (mpz_t x, mpz_t y)
 
static bool operator!= (int x, mpz_t y)
 
static bool operator!= (mpz_t x, int y)
 
static bool operator!= (uint x, mpz_t y)
 
static bool operator!= (mpz_t x, uint y)
 
static bool operator!= (long x, mpz_t y)
 
static bool operator!= (mpz_t x, long y)
 
static bool operator!= (ulong x, mpz_t y)
 
static bool operator!= (mpz_t x, ulong y)
 
static bool operator!= (float x, mpz_t y)
 
static bool operator!= (mpz_t x, float y)
 
static bool operator!= (double x, mpz_t y)
 
static bool operator!= (mpz_t x, double y)
 
static int Compare (mpz_t x, object y)
 
static int Compare (object x, mpz_t y)
 
static int Compare (mpz_t x, mpz_t y)
 
static int Compare (mpz_t x, int y)
 
static int Compare (int x, mpz_t y)
 
static int Compare (mpz_t x, uint y)
 
static int Compare (uint x, mpz_t y)
 
static int Compare (mpz_t x, long y)
 
static int Compare (long x, mpz_t y)
 
static int Compare (mpz_t x, ulong y)
 
static int Compare (ulong x, mpz_t y)
 
static int Compare (mpz_t x, double y)
 
static int Compare (double x, mpz_t y)
 
static int CompareAbs (mpz_t x, object y)
 
static int CompareAbs (object x, mpz_t y)
 
static int CompareAbs (mpz_t x, mpz_t y)
 
static int CompareAbs (mpz_t x, int y)
 
static int CompareAbs (int x, mpz_t y)
 
static int CompareAbs (mpz_t x, uint y)
 
static int CompareAbs (uint x, mpz_t y)
 
static int CompareAbs (mpz_t x, long y)
 
static int CompareAbs (long x, mpz_t y)
 
static int CompareAbs (mpz_t x, ulong y)
 
static int CompareAbs (ulong x, mpz_t y)
 
static int CompareAbs (mpz_t x, double y)
 
static int CompareAbs (double x, mpz_t y)
 
static implicit operator mpz_t (byte value)
 
static implicit operator mpz_t (int value)
 
static implicit operator mpz_t (uint value)
 
static implicit operator mpz_t (short value)
 
static implicit operator mpz_t (ushort value)
 
static implicit operator mpz_t (long value)
 
static implicit operator mpz_t (ulong value)
 
static implicit operator mpz_t (float value)
 
static implicit operator mpz_t (double value)
 
static operator mpz_t (string value)
 
static operator byte (mpz_t value)
 
static operator int (mpz_t value)
 
static operator uint (mpz_t value)
 
static operator short (mpz_t value)
 
static operator ushort (mpz_t value)
 
static operator long (mpz_t value)
 
static operator ulong (mpz_t value)
 
static operator float (mpz_t value)
 
static operator double (mpz_t value)
 
static operator string (mpz_t value)
 

Public Attributes

IntPtr val
 

Static Public Attributes

static readonly mpz_t NegativeTen = new mpz_t(-10)
 
static readonly mpz_t NegativeThree = new mpz_t(-3)
 
static readonly mpz_t NegativeTwo = new mpz_t(-2)
 
static readonly mpz_t NegativeOne = new mpz_t(-1)
 
static readonly mpz_t Zero = new mpz_t(0)
 
static readonly mpz_t One = new mpz_t(1)
 
static readonly mpz_t Two = new mpz_t(2)
 
static readonly mpz_t Three = new mpz_t(3)
 
static readonly mpz_t Ten = new mpz_t(10)
 

Protected Member Functions

virtual void Dispose (bool disposing)
 

Properties

int this[int bitIndex] [get]
 
int BitLength [get]
 

Constructor & Destructor Documentation

Mpir.NET.mpz_t.mpz_t ( )

Initializes a new mpz_t to 0.

Mpir.NET.mpz_t.mpz_t ( mpz_t  op)

Initializes a new mpz_t to the same value as op.

Mpir.NET.mpz_t.mpz_t ( uint  op)

Initializes a new mpz_t to the unsigned int op.

Mpir.NET.mpz_t.mpz_t ( int  op)

Initializes a new mpz_t to the int op.

Mpir.NET.mpz_t.mpz_t ( double  op)

Initializes a new mpz_t to the double op.

Mpir.NET.mpz_t.mpz_t ( string  s,
uint  _base 
)

Initializes a new mpz_t to string s, parsed as an integer in the specified base.

Mpir.NET.mpz_t.mpz_t ( string  s)

Initializes a new mpz_t to string s, parsed as an integer in base 10.

Mpir.NET.mpz_t.mpz_t ( BigInteger  op)

Initializes a new mpz_t to the BigInteger op.

Mpir.NET.mpz_t.mpz_t ( long  op)

Initializes a new mpz_t to the long op.

Mpir.NET.mpz_t.mpz_t ( ulong  op)

Initializes a new mpz_t to the unsigned long op.

Mpir.NET.mpz_t.mpz_t ( byte[]  bytes,
int  order 
)

Initializes a new mpz_t to the integer in the byte array bytes. Endianess is specified by order, which is 1 for big endian or -1 for little endian.

Member Function Documentation

mpz_t Mpir.NET.mpz_t.Abs ( )

Returns a new mpz_t which is the absolute value of this value.

mpz_t Mpir.NET.mpz_t.Add ( mpz_t  x)
mpz_t Mpir.NET.mpz_t.Add ( int  x)
mpz_t Mpir.NET.mpz_t.Add ( uint  x)
mpz_t Mpir.NET.mpz_t.And ( mpz_t  x)
static mpz_t Mpir.NET.mpz_t.Binomial ( mpz_t  n,
uint  k 
)
static
static mpz_t Mpir.NET.mpz_t.Binomial ( mpz_t  n,
int  k 
)
static
static mpz_t Mpir.NET.mpz_t.Binomial ( uint  n,
uint  k 
)
static
static mpz_t Mpir.NET.mpz_t.Binomial ( int  n,
int  k 
)
static
mpz_t Mpir.NET.mpz_t.ChangeBit ( int  bitIndex,
int  value 
)
mpz_t Mpir.NET.mpz_t.Clone ( )
static int Mpir.NET.mpz_t.Compare ( mpz_t  x,
object  y 
)
static
static int Mpir.NET.mpz_t.Compare ( object  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.Compare ( mpz_t  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.Compare ( mpz_t  x,
int  y 
)
static
static int Mpir.NET.mpz_t.Compare ( int  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.Compare ( mpz_t  x,
uint  y 
)
static
static int Mpir.NET.mpz_t.Compare ( uint  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.Compare ( mpz_t  x,
long  y 
)
static
static int Mpir.NET.mpz_t.Compare ( long  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.Compare ( mpz_t  x,
ulong  y 
)
static
static int Mpir.NET.mpz_t.Compare ( ulong  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.Compare ( mpz_t  x,
double  y 
)
static
static int Mpir.NET.mpz_t.Compare ( double  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( mpz_t  x,
object  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( object  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( mpz_t  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( mpz_t  x,
int  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( int  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( mpz_t  x,
uint  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( uint  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( mpz_t  x,
long  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( long  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( mpz_t  x,
ulong  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( ulong  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( mpz_t  x,
double  y 
)
static
static int Mpir.NET.mpz_t.CompareAbs ( double  x,
mpz_t  y 
)
static
int Mpir.NET.mpz_t.CompareAbsTo ( object  obj)
int Mpir.NET.mpz_t.CompareAbsTo ( mpz_t  other)
int Mpir.NET.mpz_t.CompareAbsTo ( int  other)
int Mpir.NET.mpz_t.CompareAbsTo ( uint  other)
int Mpir.NET.mpz_t.CompareAbsTo ( long  other)
int Mpir.NET.mpz_t.CompareAbsTo ( ulong  other)
int Mpir.NET.mpz_t.CompareAbsTo ( double  other)
int Mpir.NET.mpz_t.CompareTo ( object  obj)
int Mpir.NET.mpz_t.CompareTo ( mpz_t  other)
int Mpir.NET.mpz_t.CompareTo ( int  other)
int Mpir.NET.mpz_t.CompareTo ( uint  other)
int Mpir.NET.mpz_t.CompareTo ( long  other)
int Mpir.NET.mpz_t.CompareTo ( ulong  other)
int Mpir.NET.mpz_t.CompareTo ( float  other)
int Mpir.NET.mpz_t.CompareTo ( double  other)
mpz_t Mpir.NET.mpz_t.Complement ( )
int Mpir.NET.mpz_t.CountOnes ( )
void Mpir.NET.mpz_t.Dispose ( )
virtual void Mpir.NET.mpz_t.Dispose ( bool  disposing)
protectedvirtual
mpz_t Mpir.NET.mpz_t.Divide ( mpz_t  x)
mpz_t Mpir.NET.mpz_t.Divide ( int  x)
mpz_t Mpir.NET.mpz_t.Divide ( uint  x)
mpz_t Mpir.NET.mpz_t.Divide ( mpz_t  x,
out mpz_t  remainder 
)
mpz_t Mpir.NET.mpz_t.Divide ( int  x,
out mpz_t  remainder 
)
mpz_t Mpir.NET.mpz_t.Divide ( int  x,
out int  remainder 
)
mpz_t Mpir.NET.mpz_t.Divide ( uint  x,
out mpz_t  remainder 
)
mpz_t Mpir.NET.mpz_t.Divide ( uint  x,
out uint  remainder 
)
mpz_t Mpir.NET.mpz_t.Divide ( uint  x,
out int  remainder 
)
mpz_t Mpir.NET.mpz_t.DivideExactly ( mpz_t  x)

Divides exactly. Only works when the division is gauranteed to be exact (there is no remainder).

Parameters
x
Returns
mpz_t Mpir.NET.mpz_t.DivideExactly ( int  x)
mpz_t Mpir.NET.mpz_t.DivideExactly ( uint  x)
mpz_t Mpir.NET.mpz_t.DivideMod ( mpz_t  x,
mpz_t  mod 
)
bool Mpir.NET.mpz_t.Equals ( mpz_t  other)
override bool Mpir.NET.mpz_t.Equals ( object  obj)
bool Mpir.NET.mpz_t.Equals ( int  other)
bool Mpir.NET.mpz_t.Equals ( uint  other)
bool Mpir.NET.mpz_t.Equals ( long  other)
bool Mpir.NET.mpz_t.Equals ( ulong  other)
bool Mpir.NET.mpz_t.Equals ( double  other)
bool Mpir.NET.mpz_t.EqualsMod ( mpz_t  x,
mpz_t  mod 
)
bool Mpir.NET.mpz_t.EqualsMod ( int  x,
int  mod 
)
bool Mpir.NET.mpz_t.EqualsMod ( uint  x,
uint  mod 
)
static mpz_t Mpir.NET.mpz_t.Factorial ( int  x)
static
static mpz_t Mpir.NET.mpz_t.Factorial ( uint  x)
static
static mpz_t Mpir.NET.mpz_t.Fibonacci ( int  n)
static
static mpz_t Mpir.NET.mpz_t.Fibonacci ( uint  n)
static
static mpz_t Mpir.NET.mpz_t.Fibonacci ( int  n,
out mpz_t  previous 
)
static
static mpz_t Mpir.NET.mpz_t.Fibonacci ( uint  n,
out mpz_t  previous 
)
static
void Mpir.NET.mpz_t.FromByteArray ( byte[]  source,
int  order 
)

Import the integer in the byte array bytes. Endianess is specified by order, which is 1 for big endian or -1 for little endian.

static mpz_t Mpir.NET.mpz_t.Gcd ( mpz_t  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.Gcd ( mpz_t  x,
int  y 
)
static
static mpz_t Mpir.NET.mpz_t.Gcd ( int  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.Gcd ( mpz_t  x,
uint  y 
)
static
static mpz_t Mpir.NET.mpz_t.Gcd ( uint  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.Gcd ( mpz_t  x,
mpz_t  y,
out mpz_t  a,
out mpz_t  b 
)
static
static mpz_t Mpir.NET.mpz_t.Gcd ( mpz_t  x,
mpz_t  y,
out mpz_t  a 
)
static
override int Mpir.NET.mpz_t.GetHashCode ( )
int Mpir.NET.mpz_t.HammingDistance ( mpz_t  x,
mpz_t  y 
)
void Mpir.NET.mpz_t.ImportByOffset ( byte[]  source,
int  startOffset,
int  endOffset,
int  order 
)

Import the integer in the byte array bytes, starting at startOffset and ending at endOffset. Endianess is specified by order, which is 1 for big endian or -1 for little endian.

int Mpir.NET.mpz_t.IndexOfOne ( int  startingIndex)
int Mpir.NET.mpz_t.IndexOfZero ( int  startingIndex)
static mpz_t Mpir.NET.mpz_t.init2 ( ulong  n)
static

Initializes a new mpz_t to using MPIR mpz_init2. Only use if you need to avoid reallocations.

bool Mpir.NET.mpz_t.InverseModExists ( mpz_t  mod)
mpz_t Mpir.NET.mpz_t.InvertMod ( mpz_t  mod)
bool Mpir.NET.mpz_t.IsDivisibleBy ( mpz_t  x)
bool Mpir.NET.mpz_t.IsDivisibleBy ( int  x)
bool Mpir.NET.mpz_t.IsDivisibleBy ( uint  x)
bool Mpir.NET.mpz_t.IsPerfectPower ( )
bool Mpir.NET.mpz_t.IsPerfectSquare ( )
bool Mpir.NET.mpz_t.IsProbablyPrimeRabinMiller ( uint  repetitions)
static int Mpir.NET.mpz_t.JacobiSymbol ( mpz_t  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.JacobiSymbol ( mpz_t  x,
int  y 
)
static
static int Mpir.NET.mpz_t.JacobiSymbol ( int  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.JacobiSymbol ( mpz_t  x,
uint  y 
)
static
static int Mpir.NET.mpz_t.JacobiSymbol ( uint  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.KroneckerSymbol ( mpz_t  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.KroneckerSymbol ( mpz_t  x,
int  y 
)
static
static int Mpir.NET.mpz_t.KroneckerSymbol ( int  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.KroneckerSymbol ( mpz_t  x,
uint  y 
)
static
static int Mpir.NET.mpz_t.KroneckerSymbol ( uint  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.Lcm ( mpz_t  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.Lcm ( mpz_t  x,
int  y 
)
static
static mpz_t Mpir.NET.mpz_t.Lcm ( int  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.Lcm ( mpz_t  x,
uint  y 
)
static
static mpz_t Mpir.NET.mpz_t.Lcm ( uint  x,
mpz_t  y 
)
static
static int Mpir.NET.mpz_t.LegendreSymbol ( mpz_t  x,
mpz_t  primeY 
)
static
static mpz_t Mpir.NET.mpz_t.Lucas ( int  n)
static
static mpz_t Mpir.NET.mpz_t.Lucas ( uint  n)
static
static mpz_t Mpir.NET.mpz_t.Lucas ( int  n,
out mpz_t  previous 
)
static
static mpz_t Mpir.NET.mpz_t.Lucas ( uint  n,
out mpz_t  previous 
)
static
mpz_t Mpir.NET.mpz_t.Mod ( mpz_t  mod)
mpz_t Mpir.NET.mpz_t.Mod ( int  mod)
mpz_t Mpir.NET.mpz_t.Mod ( uint  mod)
int Mpir.NET.mpz_t.ModAsInt32 ( int  mod)
uint Mpir.NET.mpz_t.ModAsUInt32 ( uint  mod)
mpz_t Mpir.NET.mpz_t.Multiply ( mpz_t  x)
mpz_t Mpir.NET.mpz_t.Multiply ( int  x)
mpz_t Mpir.NET.mpz_t.Multiply ( uint  x)
mpz_t Mpir.NET.mpz_t.Negate ( )
mpz_t Mpir.NET.mpz_t.NextPrimeGMP ( )
static Mpir.NET.mpz_t.operator byte ( mpz_t  value)
explicitstatic
static Mpir.NET.mpz_t.operator double ( mpz_t  value)
explicitstatic
static Mpir.NET.mpz_t.operator float ( mpz_t  value)
explicitstatic
static Mpir.NET.mpz_t.operator int ( mpz_t  value)
explicitstatic
static Mpir.NET.mpz_t.operator long ( mpz_t  value)
explicitstatic
static implicit Mpir.NET.mpz_t.operator mpz_t ( byte  value)
static
static implicit Mpir.NET.mpz_t.operator mpz_t ( int  value)
static
static implicit Mpir.NET.mpz_t.operator mpz_t ( uint  value)
static
static implicit Mpir.NET.mpz_t.operator mpz_t ( short  value)
static
static implicit Mpir.NET.mpz_t.operator mpz_t ( ushort  value)
static
static implicit Mpir.NET.mpz_t.operator mpz_t ( long  value)
static
static implicit Mpir.NET.mpz_t.operator mpz_t ( ulong  value)
static
static implicit Mpir.NET.mpz_t.operator mpz_t ( float  value)
static
static implicit Mpir.NET.mpz_t.operator mpz_t ( double  value)
static
static Mpir.NET.mpz_t.operator mpz_t ( string  value)
explicitstatic
static Mpir.NET.mpz_t.operator short ( mpz_t  value)
explicitstatic
static Mpir.NET.mpz_t.operator string ( mpz_t  value)
explicitstatic
static Mpir.NET.mpz_t.operator uint ( mpz_t  value)
explicitstatic
static Mpir.NET.mpz_t.operator ulong ( mpz_t  value)
explicitstatic
static Mpir.NET.mpz_t.operator ushort ( mpz_t  value)
explicitstatic
static bool Mpir.NET.mpz_t.operator!= ( mpz_t  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator!= ( int  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator!= ( mpz_t  x,
int  y 
)
static
static bool Mpir.NET.mpz_t.operator!= ( uint  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator!= ( mpz_t  x,
uint  y 
)
static
static bool Mpir.NET.mpz_t.operator!= ( long  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator!= ( mpz_t  x,
long  y 
)
static
static bool Mpir.NET.mpz_t.operator!= ( ulong  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator!= ( mpz_t  x,
ulong  y 
)
static
static bool Mpir.NET.mpz_t.operator!= ( float  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator!= ( mpz_t  x,
float  y 
)
static
static bool Mpir.NET.mpz_t.operator!= ( double  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator!= ( mpz_t  x,
double  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator% ( mpz_t  x,
mpz_t  mod 
)
static
static mpz_t Mpir.NET.mpz_t.operator% ( mpz_t  x,
int  mod 
)
static
static mpz_t Mpir.NET.mpz_t.operator% ( mpz_t  x,
uint  mod 
)
static
static mpz_t Mpir.NET.mpz_t.operator& ( mpz_t  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator* ( mpz_t  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator* ( int  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator* ( mpz_t  x,
int  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator* ( uint  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator* ( mpz_t  x,
uint  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator+ ( mpz_t  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator+ ( mpz_t  x,
int  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator+ ( int  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator+ ( mpz_t  x,
uint  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator+ ( uint  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator++ ( mpz_t  x)
static
static mpz_t Mpir.NET.mpz_t.operator- ( mpz_t  x)
static
static mpz_t Mpir.NET.mpz_t.operator- ( mpz_t  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator- ( int  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator- ( mpz_t  x,
int  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator- ( uint  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator- ( mpz_t  x,
uint  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator-- ( mpz_t  x)
static
static mpz_t Mpir.NET.mpz_t.operator/ ( mpz_t  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator/ ( mpz_t  x,
int  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator/ ( mpz_t  x,
uint  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( mpz_t  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( int  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( mpz_t  x,
int  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( uint  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( mpz_t  x,
uint  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( long  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( mpz_t  x,
long  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( ulong  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( mpz_t  x,
ulong  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( float  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( mpz_t  x,
float  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( double  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator< ( mpz_t  x,
double  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator<< ( mpz_t  x,
int  shiftAmount 
)
static
static bool Mpir.NET.mpz_t.operator<= ( mpz_t  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator<= ( int  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator<= ( mpz_t  x,
int  y 
)
static
static bool Mpir.NET.mpz_t.operator<= ( uint  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator<= ( mpz_t  x,
uint  y 
)
static
static bool Mpir.NET.mpz_t.operator<= ( long  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator<= ( mpz_t  x,
long  y 
)
static
static bool Mpir.NET.mpz_t.operator<= ( ulong  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator<= ( mpz_t  x,
ulong  y 
)
static
static bool Mpir.NET.mpz_t.operator<= ( float  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator<= ( mpz_t  x,
float  y 
)
static
static bool Mpir.NET.mpz_t.operator<= ( double  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator<= ( mpz_t  x,
double  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( mpz_t  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( int  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( mpz_t  x,
int  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( uint  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( mpz_t  x,
uint  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( long  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( mpz_t  x,
long  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( ulong  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( mpz_t  x,
ulong  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( float  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( mpz_t  x,
float  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( double  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator== ( mpz_t  x,
double  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( mpz_t  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( int  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( mpz_t  x,
int  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( uint  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( mpz_t  x,
uint  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( long  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( mpz_t  x,
long  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( ulong  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( mpz_t  x,
ulong  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( float  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( mpz_t  x,
float  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( double  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator> ( mpz_t  x,
double  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( mpz_t  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( int  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( mpz_t  x,
int  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( uint  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( mpz_t  x,
uint  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( long  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( mpz_t  x,
long  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( ulong  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( mpz_t  x,
ulong  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( float  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( mpz_t  x,
float  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( double  x,
mpz_t  y 
)
static
static bool Mpir.NET.mpz_t.operator>= ( mpz_t  x,
double  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator>> ( mpz_t  x,
int  shiftAmount 
)
static
static mpz_t Mpir.NET.mpz_t.operator^ ( mpz_t  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator| ( mpz_t  x,
mpz_t  y 
)
static
static mpz_t Mpir.NET.mpz_t.operator~ ( mpz_t  x)
static
mpz_t Mpir.NET.mpz_t.Or ( mpz_t  x)
mpz_t Mpir.NET.mpz_t.Power ( int  exponent)
mpz_t Mpir.NET.mpz_t.Power ( uint  exponent)
static mpz_t Mpir.NET.mpz_t.Power ( int  x,
int  exponent 
)
static
static mpz_t Mpir.NET.mpz_t.Power ( uint  x,
uint  exponent 
)
static
mpz_t Mpir.NET.mpz_t.PowerMod ( mpz_t  exponent,
mpz_t  mod 
)
mpz_t Mpir.NET.mpz_t.PowerMod ( int  exponent,
mpz_t  mod 
)
mpz_t Mpir.NET.mpz_t.PowerMod ( uint  exponent,
mpz_t  mod 
)
mpz_t Mpir.NET.mpz_t.Remainder ( mpz_t  x)
mpz_t Mpir.NET.mpz_t.RemoveFactor ( mpz_t  factor)
mpz_t Mpir.NET.mpz_t.RemoveFactor ( mpz_t  factor,
out int  count 
)
mpz_t Mpir.NET.mpz_t.Root ( int  n)
mpz_t Mpir.NET.mpz_t.Root ( uint  n)
mpz_t Mpir.NET.mpz_t.Root ( int  n,
out bool  isExact 
)
mpz_t Mpir.NET.mpz_t.Root ( uint  n,
out bool  isExact 
)
mpz_t Mpir.NET.mpz_t.Root ( int  n,
out mpz_t  remainder 
)
mpz_t Mpir.NET.mpz_t.Root ( uint  n,
out mpz_t  remainder 
)
mpz_t Mpir.NET.mpz_t.ShiftLeft ( int  shiftAmount)
mpz_t Mpir.NET.mpz_t.ShiftRight ( int  shiftAmount)
mpz_t Mpir.NET.mpz_t.Sqrt ( )
mpz_t Mpir.NET.mpz_t.Sqrt ( out mpz_t  remainder)
mpz_t Mpir.NET.mpz_t.Sqrt ( out bool  isExact)
mpz_t Mpir.NET.mpz_t.Square ( )
mpz_t Mpir.NET.mpz_t.Subtract ( mpz_t  x)
mpz_t Mpir.NET.mpz_t.Subtract ( int  x)
mpz_t Mpir.NET.mpz_t.Subtract ( uint  x)
BigInteger Mpir.NET.mpz_t.ToBigInteger ( )
byte [] Mpir.NET.mpz_t.ToByteArray ( int  order)

Export to the value to a byte array. Endianess is specified by order, which is 1 for big endian or -1 for little endian.

override string Mpir.NET.mpz_t.ToString ( )
string Mpir.NET.mpz_t.ToString ( uint @  base)
bool Mpir.NET.mpz_t.TryInvertMod ( mpz_t  mod,
out mpz_t  result 
)
mpz_t Mpir.NET.mpz_t.Xor ( mpz_t  x)

Member Data Documentation

readonly mpz_t Mpir.NET.mpz_t.NegativeOne = new mpz_t(-1)
static
readonly mpz_t Mpir.NET.mpz_t.NegativeTen = new mpz_t(-10)
static
readonly mpz_t Mpir.NET.mpz_t.NegativeThree = new mpz_t(-3)
static
readonly mpz_t Mpir.NET.mpz_t.NegativeTwo = new mpz_t(-2)
static
readonly mpz_t Mpir.NET.mpz_t.One = new mpz_t(1)
static
readonly mpz_t Mpir.NET.mpz_t.Ten = new mpz_t(10)
static
readonly mpz_t Mpir.NET.mpz_t.Three = new mpz_t(3)
static
readonly mpz_t Mpir.NET.mpz_t.Two = new mpz_t(2)
static
IntPtr Mpir.NET.mpz_t.val
readonly mpz_t Mpir.NET.mpz_t.Zero = new mpz_t(0)
static

Property Documentation

int Mpir.NET.mpz_t.BitLength
get
int Mpir.NET.mpz_t.this[int bitIndex]
get

The documentation for this class was generated from the following file: