Class Result

java.lang.Object
io.github.cvc5.Result

public class Result extends Object
Encapsulation of a three-valued solver result, with explanations.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected long
    The raw native pointer value.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Null result
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Free the native resource associated with this pointer.
    boolean
    Operator overloading for equality of two results.
    long
    Return the raw native pointer.
    Get an explanation for an unknown query result.
    int
    Get the hash value of a result.
    boolean
    Determine if Result is empty, i.e., a nullary Result, and not an actual result returned from a checkSat() (and friends) query.
    boolean
    Determine if query was a satisfiable checkSat() or checkSatAssuming() query.
    boolean
    Determine if query was a checkSat() or checkSatAssuming() query and cvc5 was not able to determine (un)satisfiability.
    boolean
    Determine if if query was an unsatisfiable checkSat() or checkSatAssuming() query.
    Return a string representation of the pointer.
    protected String
    toString(long pointer)
    Return a string representation of the specified native pointer.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • pointer

      protected long pointer
      The raw native pointer value.
  • Constructor Details

    • Result

      public Result()
      Null result
  • Method Details

    • isNull

      public boolean isNull()
      Determine if Result is empty, i.e., a nullary Result, and not an actual result returned from a checkSat() (and friends) query.
      Returns:
      True if Result is empty, i.e., a nullary Result, and not an actual result returned from a checkSat() (and friends) query.
    • isSat

      public boolean isSat()
      Determine if query was a satisfiable checkSat() or checkSatAssuming() query.
      Returns:
      True if query was a satisfiable checkSat() or checkSatAssuming() query.
    • isUnsat

      public boolean isUnsat()
      Determine if if query was an unsatisfiable checkSat() or checkSatAssuming() query.
      Returns:
      True if query was an unsatisfiable checkSat() or checkSatAssuming() query.
    • isUnknown

      public boolean isUnknown()
      Determine if query was a checkSat() or checkSatAssuming() query and cvc5 was not able to determine (un)satisfiability.
      Returns:
      True if query was a checkSat() or checkSatAssuming() query and cvc5 was not able to determine (un)satisfiability.
    • equals

      public boolean equals(Object r)
      Operator overloading for equality of two results.
      Overrides:
      equals in class Object
      Parameters:
      r - The result to compare to for equality.
      Returns:
      True if the results are equal.
    • getUnknownExplanation

      public UnknownExplanation getUnknownExplanation()
      Get an explanation for an unknown query result.
      Returns:
      The explanation.
    • toString

      protected String toString(long pointer)
      Return a string representation of the specified native pointer.

      Subclasses must implement this method to convert the native pointer into a meaningful string.

      Parameters:
      pointer - the native pointer
      Returns:
      A string representation of this result.
    • hashCode

      public int hashCode()
      Get the hash value of a result.
      Overrides:
      hashCode in class Object
      Returns:
      The hash value.
    • getPointer

      public long getPointer()
      Return the raw native pointer.

      Every native call obtains the pointers of the objects it uses through this method, so that using an object after its native resource has been released raises an exception instead of crashing the JVM.

      Returns:
      the pointer value
      Throws:
      IllegalStateException - if the native resource of this object has been released, e.g., via deletePointer()
    • deletePointer

      public void deletePointer()
      Free the native resource associated with this pointer.

      Native resources are freed automatically once the Java object is no longer reachable. This method frees the native resource immediately instead; afterwards, using the object raises an IllegalStateException. It must be called from the thread that is using the associated term manager. Calling it more than once has no further effect.

    • toString

      public String toString()
      Return a string representation of the pointer.
      Overrides:
      toString in class Object
      Returns:
      a string representation of the pointer