// Generated from cvc5 1.3.4 include/cvc5/cvc5_kind.h.
// Copyright (c) 2009-2026 by the authors listed in licenses/cvc5/AUTHORS
// and their institutional affiliations. All rights reserved.
// SPDX-License-Identifier: BSD-3-Clause
// See licenses/cvc5/COPYING and THIRD_PARTY_NOTICES.md.
// Generated by scripts/generate-kinds.js; do not edit by hand.
///|
/// cvc5 1.3.4 term kinds. See the upstream API for arities and sorts.
/// Generated by scripts/generate-kinds.js; checked against the C headers.
pub(all) enum Kind {
InternalKind = 0
UndefinedKind = 1
NullTerm = 2
UninterpretedSortValue = 3
Equal = 4
Distinct = 5
Constant = 6
Variable = 7
Skolem = 8
Sexpr = 9
Lambda = 10
Witness = 11
ConstBoolean = 12
Not = 13
And = 14
Implies = 15
Or = 16
Xor = 17
Ite = 18
ApplyUf = 19
CardinalityConstraint = 20
HoApply = 21
Add = 22
Mult = 23
Iand = 24
Piand = 25
Pow2 = 26
Log2 = 27
Sub = 28
Neg = 29
Division = 30
DivisionTotal = 31
IntsDivision = 32
IntsDivisionTotal = 33
IntsModulus = 34
IntsModulusTotal = 35
Abs = 36
Pow = 37
Exponential = 38
Sine = 39
Cosine = 40
Tangent = 41
Cosecant = 42
Secant = 43
Cotangent = 44
Arcsine = 45
Arccosine = 46
Arctangent = 47
Arccosecant = 48
Arcsecant = 49
Arccotangent = 50
Sqrt = 51
Divisible = 52
ConstRational = 53
ConstInteger = 54
Lt = 55
Leq = 56
Gt = 57
Geq = 58
IsInteger = 59
ToInteger = 60
ToReal = 61
Pi = 62
ConstBitVector = 63
BitVectorConcat = 64
BitVectorAnd = 65
BitVectorOr = 66
BitVectorXor = 67
BitVectorNot = 68
BitVectorNand = 69
BitVectorNor = 70
BitVectorXnor = 71
BitVectorComp = 72
BitVectorMult = 73
BitVectorAdd = 74
BitVectorSub = 75
BitVectorNeg = 76
BitVectorUdiv = 77
BitVectorUrem = 78
BitVectorSdiv = 79
BitVectorSrem = 80
BitVectorSmod = 81
BitVectorShl = 82
BitVectorLshr = 83
BitVectorAshr = 84
BitVectorUlt = 85
BitVectorUle = 86
BitVectorUgt = 87
BitVectorUge = 88
BitVectorSlt = 89
BitVectorSle = 90
BitVectorSgt = 91
BitVectorSge = 92
BitVectorUltbv = 93
BitVectorSltbv = 94
BitVectorIte = 95
BitVectorRedor = 96
BitVectorRedand = 97
BitVectorNego = 98
BitVectorUaddo = 99
BitVectorSaddo = 100
BitVectorUmulo = 101
BitVectorSmulo = 102
BitVectorUsubo = 103
BitVectorSsubo = 104
BitVectorSdivo = 105
BitVectorExtract = 106
BitVectorRepeat = 107
BitVectorZeroExtend = 108
BitVectorSignExtend = 109
BitVectorRotateLeft = 110
BitVectorRotateRight = 111
IntToBitVector = 112
BitVectorToNat = 113
BitVectorUbvToInt = 114
BitVectorSbvToInt = 115
BitVectorFromBools = 116
BitVectorBit = 117
ConstFiniteField = 118
FiniteFieldNeg = 119
FiniteFieldAdd = 120
FiniteFieldBitsum = 121
FiniteFieldMult = 122
ConstFloatingPoint = 123
ConstRoundingmode = 124
FloatingPointFp = 125
FloatingPointEq = 126
FloatingPointAbs = 127
FloatingPointNeg = 128
FloatingPointAdd = 129
FloatingPointSub = 130
FloatingPointMult = 131
FloatingPointDiv = 132
FloatingPointFma = 133
FloatingPointSqrt = 134
FloatingPointRem = 135
FloatingPointRti = 136
FloatingPointMin = 137
FloatingPointMax = 138
FloatingPointLeq = 139
FloatingPointLt = 140
FloatingPointGeq = 141
FloatingPointGt = 142
FloatingPointIsNormal = 143
FloatingPointIsSubnormal = 144
FloatingPointIsZero = 145
FloatingPointIsInf = 146
FloatingPointIsNan = 147
FloatingPointIsNeg = 148
FloatingPointIsPos = 149
FloatingPointToFpFromIeeeBv = 150
FloatingPointToFpFromFp = 151
FloatingPointToFpFromReal = 152
FloatingPointToFpFromSbv = 153
FloatingPointToFpFromUbv = 154
FloatingPointToUbv = 155
FloatingPointToSbv = 156
FloatingPointToReal = 157
Select = 158
Store = 159
ConstArray = 160
EqRange = 161
ApplyConstructor = 162
ApplySelector = 163
ApplyTester = 164
ApplyUpdater = 165
Match = 166
MatchCase = 167
MatchBindCase = 168
TupleProject = 169
NullableLift = 170
SepNil = 171
SepEmp = 172
SepPto = 173
SepStar = 174
SepWand = 175
SetEmpty = 176
SetUnion = 177
SetInter = 178
SetMinus = 179
SetSubset = 180
SetMember = 181
SetSingleton = 182
SetInsert = 183
SetCard = 184
SetComplement = 185
SetUniverse = 186
SetComprehension = 187
SetChoose = 188
SetIsEmpty = 189
SetIsSingleton = 190
SetMap = 191
SetFilter = 192
SetAll = 193
SetSome = 194
SetFold = 195
RelationJoin = 196
RelationTableJoin = 197
RelationProduct = 198
RelationTranspose = 199
RelationTclosure = 200
RelationJoinImage = 201
RelationIden = 202
RelationGroup = 203
RelationAggregate = 204
RelationProject = 205
BagEmpty = 206
BagUnionMax = 207
BagUnionDisjoint = 208
BagInterMin = 209
BagDifferenceSubtract = 210
BagDifferenceRemove = 211
BagSubbag = 212
BagCount = 213
BagMember = 214
BagSetof = 215
BagMake = 216
BagCard = 217
BagChoose = 218
BagMap = 219
BagFilter = 220
BagAll = 221
BagSome = 222
BagFold = 223
BagPartition = 224
TableProduct = 225
TableProject = 226
TableAggregate = 227
TableJoin = 228
TableGroup = 229
StringConcat = 230
StringInRegexp = 231
StringLength = 232
StringSubstr = 233
StringUpdate = 234
StringCharat = 235
StringContains = 236
StringIndexof = 237
StringIndexofRe = 238
StringReplace = 239
StringReplaceAll = 240
StringReplaceRe = 241
StringReplaceReAll = 242
StringToLower = 243
StringToUpper = 244
StringRev = 245
StringToCode = 246
StringFromCode = 247
StringLt = 248
StringLeq = 249
StringPrefix = 250
StringSuffix = 251
StringIsDigit = 252
StringFromInt = 253
StringToInt = 254
ConstString = 255
StringToRegexp = 256
RegexpConcat = 257
RegexpUnion = 258
RegexpInter = 259
RegexpDiff = 260
RegexpStar = 261
RegexpPlus = 262
RegexpOpt = 263
RegexpRange = 264
RegexpRepeat = 265
RegexpLoop = 266
RegexpNone = 267
RegexpAll = 268
RegexpAllchar = 269
RegexpComplement = 270
SeqConcat = 271
SeqLength = 272
SeqExtract = 273
SeqUpdate = 274
SeqAt = 275
SeqContains = 276
SeqIndexof = 277
SeqReplace = 278
SeqReplaceAll = 279
SeqRev = 280
SeqPrefix = 281
SeqSuffix = 282
ConstSequence = 283
SeqUnit = 284
SeqNth = 285
Forall = 286
Exists = 287
VariableList = 288
InstPattern = 289
InstNoPattern = 290
InstPool = 291
InstAddToPool = 292
SkolemAddToPool = 293
InstAttribute = 294
InstPatternList = 295
} derive(Eq, Debug)
///|
pub extend Kind with Eq::{equal, not_equal}
///|
pub extend Kind with Debug::{to_repr}