Cvc5Result
This class represents a
Cvc5
result.
A
Cvc5Result
encapsulates a 3-valued solver result (sat, unsat,
unknown). Explanations for unknown results are represented as enum class
Cvc5UnknownExplanation
and can be queried via
cvc5_result_get_unknown_explanation()
.
-
typedef
struct
cvc5_result_t
*
Cvc5Result
-
Encapsulation of a three-valued solver result, with explanations.
-
Cvc5Result
cvc5_result_copy
(
Cvc5Result
result
)
-
Make copy of result, increases reference counter of
result
.Note
This step is optional and allows users to manage resources in a more fine-grained manner.
- Parameters :
-
result – The result to copy.
- Returns :
-
The same result with its reference count increased by one.
-
void
cvc5_result_release
(
Cvc5Result
result
)
-
Release copy of result, decrements reference counter of
result
.Note
This step is optional and allows users to release resources in a more fine-grained manner. Further, any API function that returns a copy that is owned by the callee of the function and thus, can be released.
- Parameters :
-
result – The result to release.
-
bool
cvc5_result_is_null
(
const
Cvc5Result
result
)
-
Determine if a given result is empty (a nullary result) and not an actual result returned from a
cvc5_check_sat()
(and friends) query.- Parameters :
-
result – The result.
- Returns :
-
True if the given result is a nullary result.
-
bool
cvc5_result_is_sat
(
const
Cvc5Result
result
)
-
Determine if given result is from a satisfiable
cvc5_check_sat()
or cvc5_check_sat_ssuming() query.- Parameters :
-
result – The result.
- Returns :
-
True if result is from a satisfiable query.
-
bool
cvc5_result_is_unsat
(
const
Cvc5Result
result
)
-
Determine if given result is from an unsatisfiable
cvc5_check_sat()
or cvc5_check_sat_assuming() query.- Parameters :
-
result – The result.
- Returns :
-
True if result is from an unsatisfiable query.
-
bool
cvc5_result_is_unknown
(
const
Cvc5Result
result
)
-
Determine if given result is from a
cvc5_check_sat()
or cvc5_check_sat_assuming() query and cvc5 was not able to determine (un)satisfiability.- Parameters :
-
result – The result.
- Returns :
-
True if result is from a query where cvc5 was not able to determine (un)satisfiability.
-
bool
cvc5_result_is_equal
(
const
Cvc5Result
a
,
const
Cvc5Result
b
)
-
Determine equality of two results.
- Parameters :
-
-
a – The first result to compare to for equality.
-
b – The second result to compare to for equality.
-
- Returns :
-
True if the results are equal.
-
bool
cvc5_result_is_disequal
(
const
Cvc5Result
a
,
const
Cvc5Result
b
)
-
Operator overloading for disequality of two results.
- Parameters :
-
-
a – The first result to compare to for disequality.
-
b – The second result to compare to for disequality.
-
- Returns :
-
True if the results are disequal.
-
Cvc5UnknownExplanation
cvc5_result_get_unknown_explanation
(
const
Cvc5Result
result
)
-
Get the explanation for an unknown result.
- Parameters :
-
result – The result.
- Returns :
-
An explanation for an unknown query result.
-
const
char
*
cvc5_result_to_string
(
const
Cvc5Result
result
)
-
Get the string representation of a given result.
Note
The returned char* pointer is only valid until the next call to this function.
- Parameters :
-
result – The result.
- Returns :
-
The string representation.
-
size_t
cvc5_result_hash
(
Cvc5Result
result
)
-
Compute the hash value of a result.
- Parameters :
-
result – The result.
- Returns :
-
The hash value of the result.