1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE why3session PUBLIC "-//Why3//proof session v5//EN"
3 "http://why3.lri.fr/why3session.dtd">
4 <why3session shape_version="4">
5 <prover id="0" name="Alt-Ergo" version="1.30" timelimit="1" steplimit="0" memlimit="1000"/>
6 <prover id="1" name="Z3" version="4.5.0" timelimit="1" steplimit="0" memlimit="1000"/>
7 <prover id="2" name="CVC4" version="1.5" timelimit="1" steplimit="0" memlimit="1000"/>
8 <prover id="3" name="CVC4" version="1.4" timelimit="1" steplimit="0" memlimit="1000"/>
9 <prover id="4" name="Z3" version="4.6.0" timelimit="1" steplimit="0" memlimit="1000"/>
10 <prover id="5" name="Eprover" version="2.0" timelimit="5" steplimit="0" memlimit="1000"/>
11 <prover id="6" name="Alt-Ergo" version="2.0.0" timelimit="1" steplimit="0" memlimit="1000"/>
12 <file name="../demo-itp.mlw">
13 <theory name="Naming">
17 <theory name="ApplyRewrite">
18 <goal name="g1" proved="true">
19 <transf name="apply" proved="true" arg1="H">
21 <transf name="rewrite" proved="true" arg1="H">
22 <goal name="g1.0" proved="true">
23 <transf name="compute_in_goal" proved="true" >
28 <goal name="g3" proved="true">
29 <transf name="apply" proved="true" arg1="Ha">
33 <transf name="compute_specified" >
40 <goal name="g1" proved="true">
41 <transf name="apply" proved="true" arg1="H">
46 <goal name="ga" proved="true">
47 <transf name="apply" proved="true" arg1="Ha">
53 <theory name="Soundness">
55 <proof prover="2" timelimit="5" obsolete="true"><result status="valid" time="0.24"/></proof>
58 <transf name="assert" arg1="(forall y:int, z:int. y = z -> p (fun (x:int) -> f0 x y z))">
59 <goal name="Fail.0" proved="true">
60 <proof prover="2"><result status="valid" time="0.10"/></proof>
63 <transf name="compute_specified" >
64 <goal name="Fail.1.0">
65 <proof prover="2"><result status="unknown" time="0.01"/></proof>
66 <proof prover="4"><result status="timeout" time="1.00"/></proof>
67 <proof prover="6"><result status="timeout" time="1.01"/></proof>
74 <proof prover="2" timelimit="5" obsolete="true"><result status="valid" time="0.02"/></proof>
77 <theory name="TestCEX">
79 <proof prover="2" timelimit="5" obsolete="true"><result status="unknown" time="0.00"/></proof>
82 <theory name="TestCopyPaste">
84 <transf name="split_goal_right" >
86 <proof prover="6" timelimit="5" obsolete="true"><result status="unknown" time="0.00"/></proof>
89 <proof prover="2" obsolete="true"><result status="unknown" time="0.00"/></proof>
90 <proof prover="3" obsolete="true"><result status="unknown" time="0.00"/></proof>
91 <proof prover="4" obsolete="true"><result status="unknown" time="0.01"/></proof>
92 <proof prover="6" obsolete="true"><result status="unknown" time="0.01"/></proof>
97 <transf name="split_goal_right" >
99 <proof prover="6" timelimit="5" obsolete="true"><result status="unknown" time="0.01"/></proof>
102 <proof prover="2" obsolete="true"><result status="unknown" time="0.00"/></proof>
103 <proof prover="3" obsolete="true"><result status="unknown" time="0.00"/></proof>
104 <proof prover="4" obsolete="true"><result status="unknown" time="0.01"/></proof>
105 <proof prover="6" obsolete="true"><result status="unknown" time="0.01"/></proof>
108 <proof prover="5" obsolete="true"><result status="timeout" time="4.89"/></proof>
113 <theory name="M" proved="true">
115 <theory name="TestWarnings">
121 <theory name="TestTaskPrinting">
139 <theory name="TestAutomaticIntro">
143 <theory name="TestInduction">
145 <transf name="introduce_premises" >
147 <transf name="induction" arg1="n">
148 <goal name="g.0.0" expl="base case">
149 <proof prover="2"><result status="unknown" time="0.01"/></proof>
150 <proof prover="4"><result status="unknown" time="0.02"/></proof>
151 <proof prover="6"><result status="unknown" time="0.01"/></proof>
153 <goal name="g.0.1" expl="recursive case">
154 <proof prover="2"><result status="unknown" time="0.00"/></proof>
155 <proof prover="4"><result status="unknown" time="0.02"/></proof>
156 <proof prover="6"><result status="unknown" time="0.01"/></proof>
163 <theory name="TestInfixSymbols">
167 <theory name="TestAutoFocus">
175 <theory name="TestRewritePoly">
177 <transf name="rewrite" arg1="Append_assoc">
183 <theory name="Power">
184 <goal name="power_1">
185 <proof prover="1" obsolete="true"><result status="valid" time="0.17"/></proof>
187 <goal name="sqrt4_256" proved="true">
188 <transf name="exists" proved="true" arg1="4">
189 <goal name="sqrt4_256.0" proved="true">
190 <proof prover="4"><result status="valid" time="0.05"/></proof>
194 <goal name="power_sum" proved="true">
195 <transf name="introduce_premises" proved="true" >
196 <goal name="power_sum.0" proved="true">
197 <transf name="induction" proved="true" arg1="n">
198 <goal name="power_sum.0.0" expl="base case" proved="true">
199 <proof prover="1"><result status="valid" time="0.02"/></proof>
201 <goal name="power_sum.0.1" expl="recursive case" proved="true">
202 <transf name="case" proved="true" arg1="(n=0)">
203 <goal name="power_sum.0.1.0" expl="true case (recursive case)" proved="true">
204 <proof prover="1"><result status="valid" time="0.01"/></proof>
205 <proof prover="2"><result status="valid" time="0.00"/></proof>
207 <goal name="power_sum.0.1.1" expl="false case (recursive case)" proved="true">
208 <transf name="instantiate" proved="true" arg1="Hrec" arg2="(n-1)">
209 <goal name="power_sum.0.1.1.0" expl="false case (recursive case)" proved="true">
210 <transf name="replace" proved="true" arg1="(n+m)" arg2="((n-1)+m+1)">
211 <goal name="power_sum.0.1.1.0.0" expl="false case (recursive case)" proved="true">
212 <proof prover="0"><result status="valid" time="0.09" steps="15"/></proof>
214 <goal name="power_sum.0.1.1.0.1" proved="true">
215 <proof prover="2"><result status="valid" time="0.00"/></proof>
222 <transf name="instantiate" proved="true" arg1="Hrec" arg2="(n-1)">
223 <goal name="power_sum.0.1.0" expl="recursive case" proved="true">
224 <transf name="replace" proved="true" arg1="(n+m)" arg2="((n-1)+m+1)">
225 <goal name="power_sum.0.1.0.0" expl="recursive case" proved="true">
226 <proof prover="0"><result status="valid" time="0.11" steps="14"/></proof>
228 <goal name="power_sum.0.1.0.1" proved="true">
229 <proof prover="2"><result status="valid" time="0.00"/></proof>
239 <goal name="power_0_left" proved="true">
240 <transf name="introduce_premises" proved="true" >
241 <goal name="power_0_left.0" proved="true">
242 <transf name="replace" proved="true" arg1="n" arg2="(n-1+1)">
243 <goal name="power_0_left.0.0" proved="true">
244 <proof prover="0"><result status="valid" time="0.00" steps="4"/></proof>
246 <goal name="power_0_left.0.1" proved="true">
247 <proof prover="2"><result status="valid" time="0.00"/></proof>
253 <goal name="little_fermat_3">