FP16

Kind: global class
this: {FP16}

new FP16()

Creates an instance of FP16.

fP16.reduce()

Reduces all components of possibly unreduced FP16 mod Modulus

Kind: instance method of FP16
this: {FP16}

fP16.norm()

Normalises the components of an FP16

Kind: instance method of FP16
this: {FP16}

fP16.iszilch()

Tests for FP16 equal to zero

Kind: instance method of FP16
this: {FP16}

fP16.isunity()

Tests for FP16 equal to unity

Kind: instance method of FP16
this: {FP16}

fP16.cmove(g, d)

Conditional copy of FP16 number

Kind: instance method of FP16
this: {FP16}

ParamDescription
gFP16 instance
dcopy depends on this value

fP16.isreal()

test is w real? That is in a+ib test b is zero

Kind: instance method of FP16
this: {FP16}

fP16.real()

extract real part a

Kind: instance method of FP16
this: {FP16}

fP16.geta()

extract a from this

Kind: instance method of FP16
this: {FP16}

fP16.getb()

extract b from this

Kind: instance method of FP16
this: {FP16}

fP16.equals(x)

Tests for equality of two FP16s

Kind: instance method of FP16
this: {FP16}

ParamDescription
xFP16 instance to compare

fP16.copy(x)

Copy FP16 to another FP16

Kind: instance method of FP16
this: {FP16}

ParamDescription
xFP16 instance to be copied

fP16.zero()

Set FP16 to zero

Kind: instance method of FP16
this: {FP16}

fP16.one(x)

Set FP16 to unity

Kind: instance method of FP16
this: {FP16}

ParamDescription
xFP16 instance to be set to one

fP16.set(c, d)

Set FP16 from two FP8 values

Kind: instance method of FP16
this: {FP16}

ParamDescription
cFP8 instance
dFP8 instance

fP16.seta(c)

Set FP16 from one FP8 value

Kind: instance method of FP16
this: {FP16}

ParamDescription
cFP8 instance

fP16.neg()

this=-this

Kind: instance method of FP16
this: {FP16}

fP16.conj()

Conjugation of FP16

Kind: instance method of FP16
this: {FP16}

fP16.nconj()

Negative conjugation of FP16

Kind: instance method of FP16
this: {FP16}

fP16.add(x)

addition of two FP16s

Kind: instance method of FP16
this: {FP16}

ParamDescription
xFP16 instance

fP16.sub(x)

subtraction of two FP16s

Kind: instance method of FP16
this: {FP16}

ParamDescription
xFP16 instance

fP16.pmul(s)

Multiplication of an FP16 by an FP8

Kind: instance method of FP16
this: {FP16}

ParamDescription
sFP8 instance

fP16.qmul(s)

Multiplication of an FP16 by an FP2

Kind: instance method of FP16
this: {FP16}

ParamDescription
sFP2 instance

fP16.imul(s)

Multiplication of an FP16 by a small integer

Kind: instance method of FP16
this: {FP16}

ParamDescription
sinteger

fP16.sqr()

Fast Squaring of an FP16

Kind: instance method of FP16
this: {FP16}

fP16.mul(y)

Full unconditional Multiplication of two FP16s

Kind: instance method of FP16
this: {FP16}

ParamDescription
yFP16 instance, the multiplier

fP16.toString()

convert this to hex string

Kind: instance method of FP16
this: {FP16}

fP16.inverse()

Inverting an FP16

Kind: instance method of FP16
this: {FP16}

fP16.times_i()

multiplies an FP16 instance by irreducible polynomial sqrt(1+sqrt(-1))

Kind: instance method of FP16
this: {FP16}

fP16.times_i2()

multiplies an FP16 instance by irreducible polynomial (1+sqrt(-1))

Kind: instance method of FP16
this: {FP16}

fP16.times_i4()

multiplies an FP16 instance by irreducible polynomial (1+sqrt(-1))

Kind: instance method of FP16
this: {FP16}

fP16.frob(f)

Raises an FP16 to the power of the internal modulus p, using the Frobenius

Kind: instance method of FP16
this: {FP16}

ParamDescription
fModulus

fP16.pow(e)

Raises an FP16 to the power of a BIG

Kind: instance method of FP16
this: {FP16}

ParamDescription
eBIG instance exponent

fP16.xtr_A(w, y, z)

Calculates the XTR addition function r=w*x-conj(x)*y+z

Kind: instance method of FP16
this: {FP16}

ParamDescription
wFP16 instance
yFP16 instance
zFP16 instance

fP16.xtr_D()

Calculates the XTR doubling function r=x^2-2*conj(x)

Kind: instance method of FP16
this: {FP16}

fP16.xtr_pow(n)

Calculates FP16 trace of an FP16 raised to the power of a BIG number

Kind: instance method of FP16
this: {FP16}

ParamDescription
nBig number

fP16.xtr_pow2()

Calculates FP16 trace of c^a.d^b, where c and d are derived from FP16 traces of FP16s

Kind: instance method of FP16
this: {FP16}