Op

This class encapsulates a cvc5 operator. A cvc5.Op is a term that represents an operator, instantiated with the parameters it requires (if any).

A cvc5.Term of operator kind that does not require additional parameters, e.g., cvc5.Kind.ADD, is usually constructed via cvc5.Solver.mkTerm(Kind kind, const std.vector<Term>& children). Alternatively, any cvc5.Term can be constructed via first instantiating a corresponding cvc5.Op, even if the operator does not require additional parameters. Terms with operators that require additional parameters, e.g., cvc5.Kind.BITVECTOR_EXTRACT, must be created via cvc5.TermManager.mkOp() and cvc5.TermManager.mkTerm().


class cvc5.Op

A cvc5 operator.

An operator is a term that represents certain operators, instantiated with its required parameters, e.g., a term of kind BITVECTOR_EXTRACT.

Wrapper class for cvc5::Op.

__getitem__()

Get the index at position i.

Parameters:

i – The position of the index to return.

Returns:

The index at position i.

getKind()
Returns:

The kind of this operator.

getNumIndices()
Returns:

The number of indices of this op.

isIndexed()
Returns:

True iff this operator is indexed.

isNull()
Returns:

True iff this operator is a null term.