'declare-datatypes', 'declare-codatatypes', 'declare-fun',
'declare-sort', 'define-const', 'define-fun', 'define-fun-rec',
'define-funs-rec', 'define-sort', 'echo', 'exit', 'get-abduct',
- 'get-assertions', 'get-assignment', 'get-info', 'get-interpol',
- 'get-model', 'get-option', 'get-proof', 'get-qe', 'get-qe-disjunct',
- 'get-unsat-assumptions', 'get-unsat-core', 'get-value', 'pop', 'push',
- 'reset', 'reset-assertions', 'set-info', 'set-logic', 'set-option',
+ 'get-abduct-next', 'get-assertions', 'get-assignment', 'get-info',
+ 'get-interpolant', 'get-model', 'get-option', 'get-proof', 'get-qe',
+ 'get-qe-disjunct', 'get-unsat-assumptions', 'get-unsat-core',
+ 'get-value', 'pop', 'push', 'reset', 'reset-assertions', 'set-info',
+ 'set-logic', 'set-option',
# SyGuS v2
'assume', 'check-synth', 'constraint', 'declare-var', 'inv-constraint',
'synth-fun', 'synth-inv', 'declare-pool',
cdef class DatatypeDecl:
"""
A cvc5 datatype declaration. A datatype declaration is not itself a
- datatype (see :py:class:`cvc5.Datatype`), but a specification for creating a datatype
- sort.
+ datatype (see :py:class:`Datatype`), but a specification for creating a
+ datatype sort.
The interface for a datatype declaration coincides with the syntax for
the SMT-LIB 2.6 command `declare-datatype`, or a single datatype within
Datatype sorts can be constructed from :py:class:`DatatypeDecl` using
the methods:
-
+
- :py:meth:`Solver.mkDatatypeSort()`
- :py:meth:`Solver.mkDatatypeSorts()`
An operator is a term that represents certain operators,
instantiated with its required parameters, e.g.,
- a term of kind :py:obj:`BVExtract <cvc5.Kind.BVExtract>`.
+ a term of kind
+ :py:obj:`BITVECTOR_EXTRACT <Kind.BITVECTOR_EXTRACT>`.
Wrapper class for :cpp:class:`cvc5::Op`.
"""
"""
Create a constant representing the number Pi.
- :return: A constant representing :py:obj:`Pi <cvc5.Kind.Pi>`.
+ :return: A constant representing :py:obj:`PI <Kind.PI>`.
"""
cdef Term term = Term(self)
term.cterm = self.csolver.mkPi()
( define-funs-rec ( <function_decl>^n ) ( <term>^n ) )
- Create elements of parameter ``funs`` with :py:meth:`mkConst() <cvc5.Solver.mkConst()>`.
+ Create elements of parameter ``funs`` with :py:meth:`mkConst()`.
:param funs: The sorted functions.
:param bound_vars: The list of parameters to the functions.
( define-funs-rec ( <function_decl>^n ) ( <term>^n ) )
- Create elements of parameter ``funs`` with :py:meth:`mkConst() <cvc5.Solver.mkConst()>`.
+ Create elements of parameter ``funs`` with :py:meth:`mkConst()`.
:param funs: The sorted functions.
:param bound_vars: The list of parameters to the functions.
( get-interpolant <conj> )
( get-interpolant <conj> <grammar> )
- Requires option :ref:`produce-interpolants
- <lbl-option-produce-interpolants>` to be set to a mode different
- from `none`.
+ Requires option
+ :ref:`produce-interpolants <lbl-option-produce-interpolants>`
+ to be set to a mode different from `none`.
.. warning:: This method is experimental and may change in future
versions.
:param conj: The conjecture term.
:param grammar: A grammar for the inteprolant.
- :return: The interpolant.
+ :return: The interpolant.
See :cpp:func:`cvc5::Solver::getInterpolant` for details.
"""
cdef Term result = Term(self)
if grammar is None:
result.cterm = self.csolver.getInterpolant(conj.cterm)
else:
- result.cterm = self.csolver.getInterpolant(conj.cterm, grammar.cgrammar)
+ result.cterm = self.csolver.getInterpolant(
+ conj.cterm, grammar.cgrammar)
return result
( get-abduct <conj> )
( get-abduct <conj> <grammar> )
- Requires to enable option :ref:`produce-abducts
- <lbl-option-produce-abducts>`.
+ Requires to enable option
+ :ref:`produce-abducts <lbl-option-produce-abducts>`.
.. warning:: This method is experimental and may change in future
versions.
def getKind(self):
"""
- :return: The :py:class:`cvc5.Kind` of this term.
+ :return: The :py:class:`Kind` of this term.
"""
return Kind(<int> self.cterm.getKind())
def getSort(self):
"""
- :return: The :py:class:`cvc5.Sort` of this term.
+ :return: The :py:class:`Sort` of this term.
"""
cdef Sort sort = Sort(self.solver)
sort.csort = self.cterm.getSort()
def getOp(self):
"""
- :return: The :py:class:`cvc5.Op` used to create this Term.
+ :return: The :py:class:`Op` used to create this Term.
.. note::
:math:`c_1 > \cdots > c_n`.
.. note::
- A universe set term ``(kind SET_UNIVERSE)`` is not considered
- to be a set value.
+ A universe set term
+ (kind :py:obj:`SET_UNIVERSE <Kind.SET_UNIVERSE>`)
+ is not considered to be a set value.
:return: True if the term is a set value.
"""
.. note::
- A term of kind :py:obj:`Pi <cvc5.Kind.Pi>` is not considered
+ A term of kind :py:obj:`PI <Kind.PI>` is not considered
to be a real value.
"""