Class FPNum

All Implemented Interfaces:
Comparable<AST>

public class FPNum extends FPExpr
FloatingPoint Numerals
  • Constructor Details

    • FPNum

      public FPNum(Context ctx, long obj)
  • Method Details

    • getSign

      public boolean getSign()
      Retrieves the sign of a floating-point literal Remarks: returns true if the numeral is negative
      Throws:
      Z3Exception
    • getSignBV

      public BitVecExpr getSignBV()
      The sign of a floating-point numeral as a bit-vector expression Remarks: NaN's do not have a bit-vector sign, so they are invalid arguments.
      Throws:
      Z3Exception
    • getSignificand

      public String getSignificand()
      The significand value of a floating-point numeral as a string Remarks: The significand s is always 0 < s < 2.0; the resulting string is long enough to represent the real significand precisely.
      Throws:
      Z3Exception
    • getSignificandUInt64

      public long getSignificandUInt64()
      The significand value of a floating-point numeral as a UInt64 Remarks: This function extracts the significand bits, without the hidden bit or normalization. Throws an exception if the significand does not fit into a UInt64.
      Throws:
      Z3Exception
    • getSignificandBV

      public BitVecExpr getSignificandBV()
      The significand of a floating-point numeral as a bit-vector expression Remarks: NaN is an invalid argument.
      Throws:
      Z3Exception
    • getExponent

      public String getExponent(boolean biased)
      Return the exponent value of a floating-point numeral as a string Remarks: NaN is an invalid argument.
      Throws:
      Z3Exception
    • getExponentInt64

      public long getExponentInt64(boolean biased)
      Return the exponent value of a floating-point numeral as a signed 64-bit integer Remarks: NaN is an invalid argument.
      Throws:
      Z3Exception
    • getExponentBV

      public BitVecExpr getExponentBV(boolean biased)
      The exponent of a floating-point numeral as a bit-vector expression Remarks: NaN is an invalid argument.
      Throws:
      Z3Exception
    • isNaN

      public boolean isNaN()
      Indicates whether the numeral is a NaN.
      Returns:
      a boolean
      Throws:
      Z3Exception - on error
    • isInf

      public boolean isInf()
      Indicates whether the numeral is a +oo or -oo.
      Returns:
      a boolean
      Throws:
      Z3Exception - on error
    • isZero

      public boolean isZero()
      Indicates whether the numeral is +zero or -zero.
      Returns:
      a boolean
      Throws:
      Z3Exception - on error
    • isNormal

      public boolean isNormal()
      Indicates whether the numeral is normal.
      Returns:
      a boolean
      Throws:
      Z3Exception - on error
    • isSubnormal

      public boolean isSubnormal()
      Indicates whether the numeral is subnormal.
      Returns:
      a boolean
      Throws:
      Z3Exception - on error
    • isPositive

      public boolean isPositive()
      Indicates whether the numeral is positive.
      Returns:
      a boolean
      Throws:
      Z3Exception - on error
    • isNegative

      public boolean isNegative()
      Indicates whether the numeral is negative.
      Returns:
      a boolean
      Throws:
      Z3Exception - on error
    • toString

      public String toString()
      Returns a string representation of the numeral.
      Overrides:
      toString in class Expr<FPSort>