summaryrefslogtreecommitdiff
path: root/src/theory/arith/kinds
blob: 7883bd92bf3d89316ce911769aba469c4c00ce31 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# kinds                                                               -*- sh -*-
#
# For documentation on this file format, please refer to
# src/theory/builtin/kinds.
#

theory THEORY_ARITH ::CVC4::theory::arith::TheoryArith "theory/arith/theory_arith.h"
typechecker "theory/arith/theory_arith_type_rules.h"
instantiator ::CVC4::theory::arith::InstantiatorTheoryArith "theory/arith/theory_arith_instantiator.h"

properties stable-infinite
properties check propagate staticLearning presolve notifyRestart

rewriter ::CVC4::theory::arith::ArithRewriter "theory/arith/arith_rewriter.h"


operator PLUS 2: "arithmetic addition"
operator MULT 2: "arithmetic multiplication"
operator MINUS 2 "arithmetic binary subtraction operator"
operator UMINUS 1 "arithmetic unary negation"
operator DIVISION 2 "real division"
operator INTS_DIVISION 2 "ints division"
operator INTS_MODULUS 2 "ints modulus"
operator POW 2 "arithmetic power"

sort REAL_TYPE \
    Cardinality::REALS \
    well-founded \
        "NodeManager::currentNM()->mkConst(Rational(0))" \
        "expr/node_manager.h" \
    "Real type"
sort INTEGER_TYPE \
    Cardinality::INTEGERS \
    well-founded \
        "NodeManager::currentNM()->mkConst(Rational(0))" \
        "expr/node_manager.h" \
    "Integer type"

constant SUBRANGE_TYPE \
    ::CVC4::SubrangeBounds \
    ::CVC4::SubrangeBoundsHashStrategy \
    "util/subrange_bound.h" \
    "the type of an integer subrange"
cardinality SUBRANGE_TYPE \
    "::CVC4::theory::arith::SubrangeProperties::computeCardinality(%TYPE%)" \
    "theory/arith/theory_arith_type_rules.h"
well-founded SUBRANGE_TYPE \
    true \
    "::CVC4::theory::arith::SubrangeProperties::mkGroundTerm(%TYPE%)" \
    "theory/arith/theory_arith_type_rules.h"

constant CONST_RATIONAL \
    ::CVC4::Rational \
    ::CVC4::RationalHashStrategy \
    "util/rational.h" \
    "a multiple-precision rational constant"

enumerator REAL_TYPE \
    "::CVC4::theory::arith::RationalEnumerator" \
    "theory/arith/type_enumerator.h"
enumerator INTEGER_TYPE \
    "::CVC4::theory::arith::IntegerEnumerator" \
    "theory/arith/type_enumerator.h"

operator LT 2 "less than, x < y"
operator LEQ 2 "less than or equal, x <= y"
operator GT 2 "greater than, x > y"
operator GEQ 2 "greater than or equal, x >= y"

typerule PLUS ::CVC4::theory::arith::ArithOperatorTypeRule
typerule MULT ::CVC4::theory::arith::ArithOperatorTypeRule
typerule MINUS ::CVC4::theory::arith::ArithOperatorTypeRule
typerule UMINUS ::CVC4::theory::arith::ArithOperatorTypeRule
typerule DIVISION ::CVC4::theory::arith::ArithOperatorTypeRule
typerule POW ::CVC4::theory::arith::ArithOperatorTypeRule

typerule CONST_RATIONAL ::CVC4::theory::arith::ArithConstantTypeRule

typerule LT ::CVC4::theory::arith::ArithPredicateTypeRule
typerule LEQ ::CVC4::theory::arith::ArithPredicateTypeRule
typerule GT ::CVC4::theory::arith::ArithPredicateTypeRule
typerule GEQ ::CVC4::theory::arith::ArithPredicateTypeRule

typerule INTS_DIVISION ::CVC4::theory::arith::ArithOperatorTypeRule
typerule INTS_MODULUS ::CVC4::theory::arith::ArithOperatorTypeRule

endtheory
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback