reference documentation

Article modular-witness.art

path: "vendor/opentheory/data/theories/modular-witness/modular-witness.art"

8336 bytes
6
version
"Data.Bool.~"
const
"->"
typeOp
0
def
"bool"
typeOp
nil
opType
1
def
1
ref
nil
cons
2
def
cons
opType
3
def
constTerm
4
def
refl
"="
const
5
def
0
ref
"Number.Natural.natural"
typeOp
nil
opType
6
def
0
ref
6
ref
2
ref
cons
opType
7
def
nil
cons
cons
opType
constTerm
8
def
refl
"Number.Modular.modulus"
"Number.Natural.suc"
const
0
ref
6
ref
6
ref
nil
cons
9
def
cons
opType
constTerm
10
def
"Number.Natural.zero"
const
6
ref
constTerm
11
def
appTerm
defineConst
12
def
pop
13
def
pop
12
remove
appThm
11
ref
refl
appThm
nil
"n"
6
ref
var
14
def
11
ref
nil
cons
cons
nil
cons
nil
cons
cons
14
ref
4
ref
8
ref
10
remove
14
remove
varTerm
15
def
appTerm
appTerm
11
ref
appTerm
16
def
appTerm
17
def
absTerm
18
def
15
ref
appTerm
19
def
betaConv
nil
"Data.Bool.!"
const
20
def
0
ref
7
ref
2
ref
cons
opType
constTerm
18
ref
appTerm
21
def
axiom
nil
"p"
1
ref
var
22
def
21
remove
nil
cons
cons
"q"
1
ref
var
23
def
19
remove
nil
cons
cons
nil
cons
cons
nil
cons
cons
5
ref
0
ref
1
ref
3
ref
nil
cons
cons
opType
24
def
constTerm
25
def
"Data.Bool.==>"
const
24
ref
constTerm
26
def
22
ref
varTerm
27
def
appTerm
28
def
23
ref
varTerm
29
def
appTerm
30
def
appTerm
refl
22
ref
23
ref
25
ref
"Data.Bool./\\"
const
24
ref
constTerm
31
def
27
ref
appTerm
32
def
29
ref
appTerm
33
def
appTerm
34
def
27
ref
appTerm
absTerm
35
def
absTerm
36
def
27
ref
appTerm
betaConv
29
ref
refl
37
def
appThm
35
remove
29
ref
appTerm
betaConv
trans
appThm
nil
5
ref
0
ref
24
ref
0
ref
24
ref
2
ref
cons
opType
38
def
nil
cons
cons
opType
constTerm
39
def
26
ref
appTerm
36
remove
appTerm
axiom
27
ref
refl
40
def
appThm
37
ref
appThm
eqMp
41
def
sym
42
def
34
remove
refl
23
ref
5
ref
0
ref
38
ref
0
ref
38
remove
2
ref
cons
opType
nil
cons
cons
opType
constTerm
43
def
"f"
24
remove
var
44
def
44
ref
varTerm
45
def
27
ref
appTerm
29
ref
appTerm
absTerm
46
def
appTerm
44
ref
45
ref
"Data.Bool.T"
const
1
ref
constTerm
47
def
appTerm
47
ref
appTerm
absTerm
48
def
appTerm
absTerm
49
def
29
ref
appTerm
betaConv
appThm
5
ref
0
ref
3
ref
0
ref
3
ref
2
ref
cons
opType
50
def
nil
cons
cons
opType
constTerm
51
def
32
remove
appTerm
refl
22
ref
49
remove
absTerm
52
def
27
ref
appTerm
betaConv
appThm
nil
39
remove
31
ref
appTerm
52
ref
appTerm
axiom
53
def
40
remove
appThm
eqMp
37
ref
appThm
eqMp
54
def
sym
44
ref
45
ref
refl
nil
"t"
1
ref
var
55
def
27
ref
nil
cons
56
def
cons
nil
cons
nil
cons
cons
25
ref
55
ref
varTerm
57
def
appTerm
47
ref
appTerm
assume
sym
nil
47
ref
axiom
58
def
eqMp
57
remove
assume
58
ref
deductAntisym
deductAntisym
59
def
subst
27
ref
assume
60
def
eqMp
appThm
nil
55
remove
29
ref
nil
cons
61
def
cons
nil
cons
nil
cons
cons
59
remove
subst
29
ref
assume
62
def
eqMp
appThm
absThm
eqMp
63
def
nil
"P"
1
ref
var
64
def
56
ref
cons
"Q"
1
ref
var
65
def
61
ref
cons
nil
cons
66
def
cons
nil
cons
cons
25
ref
refl
67
def
44
ref
45
remove
64
ref
varTerm
68
def
appTerm
69
def
65
ref
varTerm
70
def
appTerm
absTerm
71
def
22
ref
23
ref
27
ref
absTerm
absTerm
72
def
appTerm
betaConv
72
ref
68
ref
appTerm
betaConv
70
ref
refl
73
def
appThm
23
ref
68
ref
absTerm
70
ref
appTerm
betaConv
trans
trans
appThm
48
ref
72
ref
appTerm
betaConv
72
ref
47
ref
appTerm
betaConv
47
ref
refl
74
def
appThm
23
ref
47
ref
absTerm
47
ref
appTerm
betaConv
trans
trans
appThm
25
ref
31
remove
68
ref
appTerm
75
def
70
ref
appTerm
76
def
appTerm
refl
23
ref
43
remove
44
remove
69
remove
29
ref
appTerm
absTerm
appTerm
48
ref
appTerm
absTerm
70
ref
appTerm
betaConv
appThm
51
ref
75
remove
appTerm
refl
52
remove
68
ref
appTerm
betaConv
appThm
53
remove
68
ref
refl
77
def
appThm
eqMp
73
ref
appThm
eqMp
76
remove
assume
eqMp
78
def
72
remove
refl
appThm
eqMp
sym
58
ref
eqMp
79
def
subst
deductAntisym
eqMp
41
remove
30
ref
assume
eqMp
sym
60
remove
eqMp
67
ref
46
remove
22
ref
23
ref
29
ref
absTerm
80
def
absTerm
81
def
appTerm
betaConv
81
ref
27
ref
appTerm
betaConv
37
ref
appThm
80
ref
29
ref
appTerm
betaConv
trans
trans
appThm
48
remove
81
ref
appTerm
betaConv
81
ref
47
ref
appTerm
betaConv
74
remove
appThm
80
ref
47
ref
appTerm
betaConv
trans
trans
82
def
appThm
54
remove
33
remove
assume
eqMp
81
ref
refl
83
def
appThm
eqMp
sym
58
ref
eqMp
84
def
proveHyp
deductAntisym
85
def
subst
proveHyp
"A"
9
remove
cons
nil
cons
"P"
7
remove
var
18
remove
nil
cons
cons
"x"
6
ref
var
15
remove
nil
cons
cons
nil
cons
cons
nil
cons
cons
nil
22
ref
20
ref
0
ref
0
ref
"A"
varType
86
def
2
ref
cons
opType
87
def
2
ref
cons
opType
88
def
constTerm
89
def
"P"
87
ref
var
varTerm
90
def
appTerm
91
def
nil
cons
92
def
cons
23
ref
90
ref
"x"
86
remove
var
93
def
varTerm
94
def
appTerm
95
def
nil
cons
96
def
cons
nil
cons
cons
nil
cons
cons
97
def
42
ref
subst
97
remove
84
remove
63
remove
deductAntisym
98
def
subst
25
ref
95
remove
appTerm
refl
93
remove
47
ref
absTerm
99
def
94
ref
appTerm
betaConv
appThm
"p"
87
ref
var
100
def
5
ref
0
ref
87
remove
88
ref
nil
cons
cons
opType
constTerm
100
remove
varTerm
appTerm
99
remove
appTerm
absTerm
101
def
90
ref
appTerm
betaConv
nil
5
remove
0
ref
88
ref
0
remove
88
remove
2
ref
cons
opType
nil
cons
cons
opType
constTerm
89
remove
appTerm
101
remove
appTerm
axiom
90
remove
refl
appThm
91
remove
assume
eqMp
eqMp
94
remove
refl
appThm
eqMp
sym
58
ref
eqMp
eqMp
nil
64
ref
92
remove
cons
65
ref
96
remove
cons
nil
cons
cons
nil
cons
cons
79
ref
subst
deductAntisym
eqMp
102
def
subst
eqMp
eqMp
nil
22
ref
17
remove
nil
cons
cons
23
ref
25
ref
16
ref
appTerm
"Data.Bool.F"
const
1
ref
constTerm
103
def
appTerm
nil
cons
cons
nil
cons
cons
nil
cons
cons
85
ref
subst
proveHyp
nil
64
ref
16
remove
nil
cons
cons
nil
cons
nil
cons
cons
nil
22
ref
4
ref
68
ref
appTerm
104
def
nil
cons
105
def
cons
23
ref
25
ref
68
ref
appTerm
103
ref
appTerm
nil
cons
106
def
cons
nil
cons
cons
nil
cons
cons
107
def
42
ref
subst
107
remove
98
ref
subst
nil
22
ref
68
ref
nil
cons
108
def
cons
23
ref
103
ref
nil
cons
109
def
cons
nil
cons
cons
nil
cons
cons
26
ref
refl
25
ref
27
ref
appTerm
29
ref
appTerm
assume
110
def
appThm
37
remove
appThm
sym
nil
22
ref
61
ref
cons
111
def
23
ref
61
ref
cons
nil
cons
cons
nil
cons
cons
112
def
42
ref
subst
112
remove
98
ref
subst
62
remove
eqMp
nil
64
ref
61
remove
cons
66
remove
cons
nil
cons
cons
79
ref
subst
deductAntisym
eqMp
113
def
eqMp
nil
22
ref
30
remove
nil
cons
114
def
cons
23
ref
26
ref
29
remove
appTerm
115
def
27
ref
appTerm
nil
cons
116
def
cons
nil
cons
cons
nil
cons
cons
98
ref
subst
proveHyp
115
remove
refl
110
remove
appThm
sym
113
remove
eqMp
eqMp
nil
111
remove
23
ref
56
remove
cons
nil
cons
cons
nil
cons
cons
85
ref
subst
nil
64
ref
114
remove
cons
65
ref
116
remove
cons
nil
cons
cons
nil
cons
cons
117
def
67
remove
71
remove
81
ref
appTerm
betaConv
81
remove
68
ref
appTerm
betaConv
73
remove
appThm
80
remove
70
remove
appTerm
betaConv
trans
trans
appThm
82
remove
appThm
78
remove
83
remove
appThm
eqMp
sym
58
ref
eqMp
subst
eqMp
85
ref
117
remove
79
ref
subst
eqMp
deductAntisym
deductAntisym
subst
25
ref
104
ref
appTerm
refl
22
ref
28
remove
103
ref
appTerm
absTerm
118
def
68
ref
appTerm
betaConv
appThm
nil
51
remove
4
ref
appTerm
118
remove
appTerm
axiom
77
remove
appThm
eqMp
104
remove
assume
eqMp
nil
22
ref
26
ref
68
ref
appTerm
103
ref
appTerm
nil
cons
cons
23
ref
26
remove
103
ref
appTerm
68
ref
appTerm
nil
cons
cons
nil
cons
cons
nil
cons
cons
98
ref
subst
proveHyp
nil
22
ref
109
ref
cons
23
ref
108
ref
cons
nil
cons
cons
nil
cons
cons
119
def
42
remove
subst
119
remove
98
remove
subst
22
ref
27
remove
absTerm
120
def
68
remove
appTerm
121
def
betaConv
nil
25
ref
103
ref
appTerm
20
remove
50
remove
constTerm
120
ref
appTerm
122
def
appTerm
axiom
103
ref
assume
eqMp
nil
22
remove
122
remove
nil
cons
cons
23
remove
121
remove
nil
cons
cons
nil
cons
cons
nil
cons
cons
85
remove
subst
proveHyp
"A"
2
remove
cons
nil
cons
"P"
3
remove
var
120
remove
nil
cons
cons
"x"
1
remove
var
108
ref
cons
nil
cons
cons
nil
cons
cons
102
remove
subst
eqMp
eqMp
eqMp
nil
64
ref
109
remove
cons
65
ref
108
remove
cons
nil
cons
cons
nil
cons
cons
79
ref
subst
deductAntisym
eqMp
eqMp
eqMp
eqMp
nil
64
remove
105
remove
cons
65
remove
106
remove
cons
nil
cons
cons
nil
cons
cons
79
remove
subst
deductAntisym
eqMp
subst
eqMp
subst
trans
appThm
nil
25
remove
4
ref
103
remove
appTerm
appTerm
47
remove
appTerm
axiom
trans
sym
58
remove
eqMp
nil
4
remove
8
remove
13
remove
6
remove
constTerm
appTerm
11
remove
appTerm
appTerm
thm