(self)
| 497 | return self |
| 498 | |
| 499 | def __abs__(self) -> ArithRef: |
| 500 | zero = _coerce_arith(0, self._sort) |
| 501 | cond = BoolRef( |
| 502 | BinOpNode(BinOp.GE, self._ast, zero._ast), |
| 503 | self._vars, |
| 504 | ) |
| 505 | neg = ArithRef(UnOpNode(UnOp.NEG, self._ast), self._sort, self._vars) # type: ignore[arg-type] |
| 506 | return ArithRef( |
| 507 | IteNode(cond._ast, self._ast, neg._ast), |
| 508 | self._sort, # type: ignore[arg-type] |
| 509 | self._vars, |
| 510 | ) |
| 511 | |
| 512 | def is_int(self) -> bool: |
| 513 | return isinstance(self._sort._ast_sort, IntASTSort) |