1 (* Why driver for first-order tptp provers supporting TFF1 *)
7 invalid "Completion found"
8 valid "^% SZS status Theorem"
9 valid "^% SZS status Unsatisfiable"
10 unknown "^% SZS status CounterSatisfiable" ""
11 unknown "^% SZS status Satisfiable" ""
12 timeout "^% SZS status Timeout"
13 unknown "^% SZS status GaveUp" ""
14 fail "^% SZS status Error" ""
15 timeout "Ran out of time"
16 timeout "CPU time limit exceeded"
17 outofmemory "Out of Memory"
18 unknown "No Proof Found" ""
19 fail "Failure.*" "\"\\0\""
20 time "why3cpulimit time : %s s"
25 (* Performed introductions depending on whether counterexamples are
26 requested, as said by the meta "get_counterexmp". When this meta
27 set, this transformation introduces the model variables that are
28 still embedded in the goal. When it is not set, it removes all
29 these unused-ce-related variables, even in the context. *)
30 transformation "counterexamples_dependent_intros"
32 transformation "inline_trivial"
34 transformation "eliminate_builtin"
35 transformation "eliminate_definition"
36 transformation "eliminate_inductive"
37 transformation "eliminate_epsilon"
38 transformation "eliminate_algebraic"
39 transformation "eliminate_literal"
42 syntax predicate (=) "(%1 = %2)"
43 syntax type int "$int"
44 syntax type real "$real"
46 meta "eliminate_algebraic" "no_index"
50 syntax function zero "0"
51 syntax function one "1"
53 syntax function (+) "$sum(%1,%2)"
54 syntax function (-) "$difference(%1,%2)"
55 syntax function (*) "$product(%1,%2)"
56 syntax function (-_) "$uminus(%1)"
58 syntax predicate (<=) "$lesseq(%1,%2)"
59 syntax predicate (<) "$less(%1,%2)"
60 syntax predicate (>=) "$greatereq(%1,%2)"
61 syntax predicate (>) "$greater(%1,%2)"
63 remove prop MulComm.Comm
64 remove prop MulAssoc.Assoc
65 remove prop Unit_def_l
66 remove prop Unit_def_r
70 remove prop Mul_distr_l
71 remove prop Mul_distr_r
78 remove prop NonTrivialRing
79 remove prop CompatOrderAdd
80 remove prop ZeroLessOne
84 syntax function zero "0.0"
85 syntax function one "1.0"
87 syntax function (+) "$sum(%1,%2)"
88 syntax function (-) "$difference(%1,%2)"
89 syntax function (*) "$product(%1,%2)"
90 syntax function (-_) "$uminus(%1)"
92 syntax function (/) "$quotient(%1,%2)"
93 syntax function inv "$quotient(1.0,%1)"
95 syntax predicate (<=) "$lesseq(%1,%2)"
96 syntax predicate (<) "$less(%1,%2)"
97 syntax predicate (>=) "$greatereq(%1,%2)"
98 syntax predicate (>) "$greater(%1,%2)"
100 remove prop MulComm.Comm
101 remove prop MulAssoc.Assoc
102 remove prop Unit_def_l
103 remove prop Unit_def_r
104 remove prop Inv_def_l
105 remove prop Inv_def_r
107 remove prop Mul_distr_l
108 remove prop Mul_distr_r
116 remove prop NonTrivialRing
117 remove prop CompatOrderAdd
118 remove prop ZeroLessOne
121 theory int.EuclideanDivision
122 syntax function div "$quotient_e(%1,%2)"
123 syntax function mod "$remainder_e(%1,%2)"
126 remove prop Div_bound
127 remove prop Mod_bound
131 remove prop Div_inf_neg
133 remove prop Div_1_left
134 remove prop Div_minus1_left
135 remove prop Mod_1_left
136 remove prop Mod_minus1_left
140 syntax type iType "$i"
144 syntax function floor "$floor(%1)"
145 syntax function ceiling "$ceiling(%1)"
146 syntax function truncate "$truncate(%1)"
147 syntax function round "$round(%1)"
149 syntax function to_int "$to_int(%1)"
151 syntax predicate is_int "$is_int(%1)"
152 syntax predicate is_rat "$is_rat(%1)"
156 syntax function div_t "$quotient_t(%1,%2)"
157 syntax function mod_t "$remainder_t(%1,%2)"
161 syntax function div_f "$quotient_f(%1,%2)"
162 syntax function mod_f "$remainder_f(%1,%2)"
166 syntax type rat "$rat"
168 syntax function zero "0/1"
169 syntax function one "1/1"
171 syntax function (+) "$sum(%1,%2)"
172 syntax function (-) "$difference(%1,%2)"
173 syntax function (*) "$product(%1,%2)"
174 syntax function (-_) "$uminus(%1)"
176 syntax function (/) "$quotient(%1,%2)"
177 syntax function inv "$quotient(1/1,%1)"
179 syntax predicate (<=) "$lesseq(%1,%2)"
180 syntax predicate (<) "$less(%1,%2)"
181 syntax predicate (>=) "$greatereq(%1,%2)"
182 syntax predicate (>) "$greater(%1,%2)"
184 syntax function to_rat "$to_rat(%1)"
186 syntax predicate is_int "$is_int(%1)"
187 syntax predicate is_rat "$is_rat(%1)"
189 remove prop MulComm.Comm
190 remove prop MulAssoc.Assoc
191 remove prop Unit_def_l
192 remove prop Unit_def_r
193 remove prop Inv_def_l
194 remove prop Inv_def_r
196 remove prop Mul_distr_l
197 remove prop Mul_distr_r
204 remove prop NonTrivialRing
205 remove prop CompatOrderAdd
206 remove prop ZeroLessOne
210 syntax function floor "$floor(%1)"
211 syntax function ceiling "$ceiling(%1)"
212 syntax function truncate "$truncate(%1)"
213 syntax function round "$round(%1)"
215 syntax function to_int "$to_int(%1)"
219 syntax function div "$quotient_e(%1,%2)"
220 syntax function mod "$remainder_e(%1,%2)"
224 syntax function div_t "$quotient_t(%1,%2)"
225 syntax function mod_t "$remainder_t(%1,%2)"
229 syntax function div_f "$quotient_f(%1,%2)"
230 syntax function mod_f "$remainder_f(%1,%2)"
234 syntax function to_real "$to_real(%1)"
238 syntax function from_int "$to_real(%1)"
249 syntax function floor "$to_int(%1)"
250 syntax function ceil "$to_int($ceiling(%1))"
251 syntax function truncate "$to_int($truncate(%1))"
253 remove prop Truncate_int
254 remove prop Truncate_down_pos
255 remove prop Truncate_up_neg
256 remove prop Real_of_truncate
257 remove prop Truncate_monotonic
258 remove prop Truncate_monotonic_int1
259 remove prop Truncate_monotonic_int2
260 remove prop Floor_int
262 remove prop Floor_down
264 remove prop Floor_monotonic
265 remove prop Ceil_monotonic
268 theory tptp.RealTrunc
269 syntax function floor "$floor(%1)"
270 syntax function ceiling "$ceiling(%1)"
271 syntax function truncate "$truncate(%1)"
272 syntax function round "$round(%1)"
274 syntax function to_int "$to_int(%1)"
276 syntax predicate is_int "$is_int(%1)"
277 syntax predicate is_rat "$is_rat(%1)"
281 syntax function div "$quotient_e(%1,%2)"
282 syntax function mod "$remainder_e(%1,%2)"
286 syntax function div_t "$quotient_t(%1,%2)"
287 syntax function mod_t "$remainder_t(%1,%2)"
291 syntax function div_f "$quotient_f(%1,%2)"
292 syntax function mod_f "$remainder_f(%1,%2)"
296 syntax function to_rat "$to_rat(%1)"
299 theory tptp.IntToReal
300 syntax function to_real "$to_real(%1)"
303 theory tptp.RealToRat
304 syntax function to_rat "$to_rat(%1)"
307 theory tptp.RatToReal
308 syntax function to_real "$to_real(%1)"