/** * Create a large integer number. * * @param integerString * the integer number represented as a String * @param numberFormat * the format of the number (usually 10) * @return Object */ public static IInteger integer(final String integerString, final int numberFormat) { return IntegerSym.valueOf(integerString, numberFormat); }
@Override public IInteger shiftRight(final int n) { if (n == 0) { return this; } return valueOf(fIntValue >> n); }
/** * Create a large integer number. * * @param integerValue * @return */ public static IInteger integer(final BigInteger integerValue) { return IntegerSym.valueOf(integerValue); }
/** * Create a large integer number. * * @param integerValue * @return */ public static IInteger integer(final long integerValue) { return IntegerSym.valueOf(integerValue); }
/** {@inheritDoc} */ @Override public IInteger abs() { if (fIntValue < 0) { return valueOf(fIntValue * (-1L)); } return this; }
private IntegerSym jacobiSymbolG(IntegerSym i2) { IntegerSym a = mod(IntegerSym.valueOf(4)); if (a.compareTo(IntegerSym.valueOf(1)) == 0) { return IntegerSym.valueOf(1); } IntegerSym b = mod(IntegerSym.valueOf(4)); if (b.compareTo(IntegerSym.valueOf(1)) == 0) { return IntegerSym.valueOf(1); } return IntegerSym.valueOf(-1); }
public static void main(final String[] args) { // final IntegerImpl num = IntegerImpl.valueOf(-32536); // final List<IntegerImpl> list = num.factorize(); // System.out.println(list.toString()); IInteger i = valueOf(84); IInteger r = i.nthRoot(4); System.out.println(r); }
/** * Returns the denominator of this fraction. * * @return denominator */ public IInteger getDenominator() { return IntegerSym.valueOf(fRational.getDenominator()); }
/** * Returns the numerator of this Rational. * * @return numerator */ public IInteger getNumerator() { return IntegerSym.valueOf(fRational.getNumerator()); }
@Override public IExpr remainder(final IExpr that) { if (that instanceof IntegerSym) { return valueOf(toBigNumerator().remainder(((IntegerSym) that).toBigNumerator())); } if (that instanceof BigIntegerSym) { return valueOf(toBigNumerator().remainder(((BigIntegerSym) that).fBigIntValue)); } return this; }
public IExpr evaluate(int[] index) { return Power(lst.get(index[0] + 1), IntegerSym.valueOf(index[1])); } };
public IntegerSym jacobiSymbol(IntegerSym b) { if (this.compareTo(IntegerSym.valueOf(1)) == 0) { return IntegerSym.valueOf(1); } if (this.compareTo(IntegerSym.valueOf(2)) == 0) { return b.jacobiSymbolF(); } if (!isOdd()) { return this.quotient(IntegerSym.valueOf(2)).jacobiSymbol(b).multiply(IntegerSym.valueOf(2).jacobiSymbol(b)); } return b.quotient(this).jacobiSymbol(this).multiply(jacobiSymbolG(b)); }
public INumber normalize() { if (_imaginary.equals(BigFraction.ZERO)) { if (_real.getDenominator().equals(BigInteger.ZERO)) { return IntegerSym.valueOf(_real.getNumerator()); } return FractionSym.newInstance(_real); } return this; }
@Override public IInteger modPow(final IInteger exp, final IInteger m) { if (m.isZero()) { throw new ArithmeticException("the argument " + m.toString() + " should be nonzero."); } return valueOf(toBigNumerator().modPow(exp.toBigNumerator(), m.toBigNumerator())); }