Clover Coverage Report
Coverage timestamp: Sat Sep 18 2010 04:09:52 UTC
56   402   55   1.02
0   343   0.98   55
55     1  
1    
 
  AsciiMathParserTest       Line # 10 56 55 100% 1.0
 
  (51)
 
1    package org.qedeq.kernel.bo.parser;
2   
3    import java.io.File;
4    import java.util.List;
5   
6    import org.qedeq.base.io.TextInput;
7    import org.qedeq.kernel.bo.test.DummyInternalKernalServices;
8    import org.qedeq.kernel.xml.handler.parser.LoadXmlOperatorListUtility;
9   
 
10    public class AsciiMathParserTest extends AbstractParserTest {
11   
12    private static String[][] test = new String[][] {
13    { // 00
14    "set(x) <-> Ey x in y",
15    "EQUI(isSet(x), EXISTS(y, IN(x, y)))"
16    }, { // 01
17    "Ex Ay(y in x <-> set(y) & P(y))",
18    "EXISTS(x, ALL(y, EQUI(IN(y, x), AND(isSet(y), PREDVAR_1(y)))))"
19    }, { // 02
20    "x = y <-> Az(z in x <-> z in y)",
21    "EQUI(EQUAL(x, y), ALL(z, EQUI(IN(z, x), IN(z, y))))"
22    }, { // 03
23    "x = x\n",
24    "EQUAL(x, x)"
25    }, { // 04
26    "a in x <-> a in x",
27    "EQUI(IN(a, x), IN(a, x))"
28    }, { // 05
29    "Az(z in x <-> z in x)",
30    "ALL(z, EQUI(IN(z, x), IN(z, x)))"
31    }, { // 06
32    "x = y -> y = x",
33    "IMPL(EQUAL(x, y), EQUAL(y, x))"
34    }, { // 07
35    "x = y",
36    "EQUAL(x, y)"
37    }, { // 08
38    "Az(z in x <-> z in y)",
39    "ALL(z, EQUI(IN(z, x), IN(z, y)))"
40    }, { // 09
41    "Az(z in y <-> z in x)",
42    "ALL(z, EQUI(IN(z, y), IN(z, x)))"
43    }, { // 10
44    "y = x",
45    "EQUAL(y, x)"
46    }, { // 11
47    "x = y -> y = x",
48    "IMPL(EQUAL(x, y), EQUAL(y, x))"
49    }, { // 12
50    "x = y & y = z -> x = z",
51    "IMPL(AND(EQUAL(x, y), EQUAL(y, z)), EQUAL(x, z))"
52    }, { // 13
53    "x = y & y = z",
54    "AND(EQUAL(x, y), EQUAL(y, z))"
55    }, { // 14
56    "Au(u in x <-> u in y) & Au(u in y <-> u in z)",
57    "AND(ALL(u, EQUI(IN(u, x), IN(u, y))), ALL(u, EQUI(IN(u, y), IN(u, z))))"
58    }, { // 15
59    "Au((u in x <-> u in y) & (u in y <-> u in z))",
60    "ALL(u, AND(EQUI(IN(u, x), IN(u, y)), EQUI(IN(u, y), IN(u, z))))"
61    }, { // 16
62    "(a in x <-> a in y) & (a in y <-> a in z)",
63    "AND(EQUI(IN(a, x), IN(a, y)), EQUI(IN(a, y), IN(a, z)))"
64    }, { // 17
65    "a in x <-> a in z",
66    "EQUI(IN(a, x), IN(a, z))"
67    }, { // 18
68    "Au(u in x <-> u in z)",
69    "ALL(u, EQUI(IN(u, x), IN(u, z)))"
70    }, { // 19
71    "x = z",
72    "EQUAL(x, z)"
73    }, { // 20
74    "x = y & z in x -> z in y",
75    "IMPL(AND(EQUAL(x, y), IN(z, x)), IN(z, y))"
76    }, { // 21
77    "x = y & z in x",
78    "AND(EQUAL(x, y), IN(z, x))"
79    }, { // 22
80    "z in x",
81    "IN(z, x)"
82    }, { // 23
83    "x = y",
84    "EQUAL(x, y)"
85    }, { // 24
86    "Au(u in x <-> u in y)",
87    "ALL(u, EQUI(IN(u, x), IN(u, y)))"
88    }, { // 25
89    "z in x <-> z in y",
90    "EQUI(IN(z, x), IN(z, y))"
91    }, { // 26
92    "z in y",
93    "IN(z, y)"
94    }, { // 27
95    "x = y & x in z -> y in z",
96    "IMPL(AND(EQUAL(x, y), IN(x, z)), IN(y, z))"
97    }, { // 28
98    "x in {y | P(y)} <-> set(x) & P(x)",
99    "EQUI(IN(x, SETDEF(y, PREDVAR_1(y))), AND(isSet(x), PREDVAR_1(x)))"
100    }, { // 29
101    "{y | P(y)} in x <-> Ez(Ay((set(y) & P(y)) <-> y in z) & z in x)",
102    "EQUI(IN(SETDEF(y, PREDVAR_1(y)), x), EXISTS(z, AND(ALL(y, EQUI(AND(isSet(y), PREDVAR_1(y)), IN(y, z))), IN(z, x))))"
103    }, { // 30
104    "{y | P(y)} in x <-> Ez(z = {y | P(y)} & z in x)",
105    "EQUI(IN(SETDEF(y, PREDVAR_1(y)), x), EXISTS(z, AND(EQUAL(z, SETDEF(y, PREDVAR_1(y))), IN(z, x))))"
106    }, { // 31
107    "{y | P(y)} in x <-> {y | P(y)} in x",
108    "EQUI(IN(SETDEF(y, PREDVAR_1(y)), x), IN(SETDEF(y, PREDVAR_1(y)), x))"
109    }, { // 32
110    "Ez(Ay((set(y) & P(y)) <-> y in z) & z in x)",
111    "EXISTS(z, AND(ALL(y, EQUI(AND(isSet(y), PREDVAR_1(y)), IN(y, z))), IN(z, x)))"
112    }, { // 33
113    "Ez(Au((set(u) & P(u)) <-> u in z) & z in x)",
114    "EXISTS(z, AND(ALL(u, EQUI(AND(isSet(u), PREDVAR_1(u)), IN(u, z))), IN(z, x)))"
115    }, { // 34
116    "Ez(Au(u in z <-> (set(u) & P(u))) & z in x)",
117    "EXISTS(z, AND(ALL(u, EQUI(IN(u, z), AND(isSet(u), PREDVAR_1(u)))), IN(z, x)))"
118    }, { // 35
119    "Ez(Au(u in z <-> u in {y | P(y)}) & z in x)",
120    "EXISTS(z, AND(ALL(u, EQUI(IN(u, z), IN(u, SETDEF(y, PREDVAR_1(y))))), IN(z, x)))"
121    }, { // 36
122    "Ez(z = {y | P(y)} & z in x)",
123    "EXISTS(z, AND(EQUAL(z, SETDEF(y, PREDVAR_1(y))), IN(z, x)))"
124    }, { // 37
125    "({y | P(y)} in x <-> {y | P(y)} in x)"
126    + "<-> (Ez(Ay((set(y) & P(y)) <-> y in z) & z in x))"
127    + "<-> (Ez(Au((set(u) & P(u)) <-> u in z) & z in x))"
128    + "<-> (Ez(Au(u in z <-> (set(u) & P(u))) & z in x))"
129    + "<-> (Ez(Au(u in z <-> u in {y | P(y)}) & z in x))"
130    + "<-> (Ez(z = {y | P(y)} & z in x))",
131    "EQUI(EQUI(IN(SETDEF(y, PREDVAR_1(y)), x), IN(SETDEF(y, PREDVAR_1(y)), x)),"
132    + " EXISTS(z, AND(ALL(y, EQUI(AND(isSet(y), PREDVAR_1(y)), IN(y, z))), IN(z, x))),"
133    + " EXISTS(z, AND(ALL(u, EQUI(AND(isSet(u), PREDVAR_1(u)), IN(u, z))), IN(z, x))),"
134    + " EXISTS(z, AND(ALL(u, EQUI(IN(u, z), AND(isSet(u), PREDVAR_1(u)))), IN(z, x))),"
135    + " EXISTS(z, AND(ALL(u, EQUI(IN(u, z), IN(u, SETDEF(y, PREDVAR_1(y))))), IN(z, x))),"
136    + " EXISTS(z, AND(EQUAL(z, SETDEF(y, PREDVAR_1(y))), IN(z, x))))"
137    }, { // 38
138    "{x | P(x)} = {x | Q(x)} <-> (Ax(set(x) -> (P(x) <-> Q(x))))",
139    "EQUI(EQUAL(SETDEF(x, PREDVAR_1(x)), SETDEF(x, PREDVAR_2(x))), ALL(x, IMPL(isSet(x), EQUI(PREDVAR_1(x), PREDVAR_2(x)))))"
140    }, { // 39
141    "{x | P(x)} = {x | Q(x)}",
142    "EQUAL(SETDEF(x, PREDVAR_1(x)), SETDEF(x, PREDVAR_2(x)))"
143    }, { // 40
144    "Ay(y in {x | P(x)} <-> y in {x | Q(x)})",
145    "ALL(y, EQUI(IN(y, SETDEF(x, PREDVAR_1(x))), IN(y, SETDEF(x, PREDVAR_2(x)))))"
146    }, { // 41
147    "Ay((set(y) & P(y)) <-> (set(y) & Q(y)))",
148    "ALL(y, EQUI(AND(isSet(y), PREDVAR_1(y)), AND(isSet(y), PREDVAR_2(y))))"
149    }, { // 42
150    "Ay(((set(y) & P(y)) -> (set(y) & Q(y))) & ((set(y) & Q(y)) -> (set(y) & P(y))))",
151    "ALL(y, AND(IMPL(AND(isSet(y), PREDVAR_1(y)), AND(isSet(y), PREDVAR_2(y))), IMPL(AND(isSet(y), PREDVAR_2(y)), AND(isSet(y), PREDVAR_1(y)))))"
152    }, { // 43
153    "Ay(((set(y) & P(y)) -> Q(y)) & ((set(y) & Q(y)) -> P(y)))",
154    "ALL(y, AND(IMPL(AND(isSet(y), PREDVAR_1(y)), PREDVAR_2(y)), IMPL(AND(isSet(y), PREDVAR_2(y)), PREDVAR_1(y))))"
155    }, { // 44
156    "Ay((set(y) -> (P(y) -> Q(y))) & (set(y) -> (Q(y) -> P(y))))",
157    "ALL(y, AND(IMPL(isSet(y), IMPL(PREDVAR_1(y), PREDVAR_2(y))), IMPL(isSet(y), IMPL(PREDVAR_2(y), PREDVAR_1(y)))))"
158    }, { // 45
159    "Ay(set(y) -> ((P(y) -> Q(y)) & (Q(y) -> P(y))))",
160    "ALL(y, IMPL(isSet(y), AND(IMPL(PREDVAR_1(y), PREDVAR_2(y)), IMPL(PREDVAR_2(y), PREDVAR_1(y)))))"
161    }, { // 46
162    "Ay(set(y) -> (P(y) <-> Q(y)))",
163    "ALL(y, IMPL(isSet(y), EQUI(PREDVAR_1(y), PREDVAR_2(y))))"
164    }, { // 47
165    "(x union y) <-> {z | z in x v z in y}",
166    "EQUI(UNION(x, y), SETDEF(z, OR(IN(z, x), IN(z, y))))"
167    }, { // 48
168    "(x inter y) <-> {z | z in x & z in y}",
169    "EQUI(INTER(x, y), SETDEF(z, AND(IN(z, x), IN(z, y))))"
170    }, { // 49
171    "z in (x union y) <-> z in x v z in y",
172    "EQUI(IN(z, UNION(x, y)), OR(IN(z, x), IN(z, y)))"
173    }, { // 50
174    "z in {x, y} <-> z = x v z = y",
175    "EQUI(IN(z, SET(x, y)), OR(EQUAL(z, x), EQUAL(z, y)))"
176    }
177    };
178   
 
179  51 toggle public AsciiMathParserTest(String arg0) {
180  51 super(arg0);
181    }
182   
 
183  51 toggle protected void setUp() throws Exception {
184  51 super.setUp();
185    }
186   
 
187  51 toggle protected void tearDown() throws Exception {
188  51 super.tearDown();
189    }
190   
 
191  254 toggle protected String[][] getTest() {
192  254 return test;
193    }
194   
 
195  51 toggle protected MathParser createParser(final TextInput input) throws Exception {
196  51 final List operators = LoadXmlOperatorListUtility.getOperatorList(
197    new DummyInternalKernalServices(),
198    new File(getIndir(),
199    "parser/asciiMathOperators.xml"));
200  51 return new AsciiMathParser(input, operators);
201    }
202   
 
203  1 toggle public void testReadMaximalTerm00() throws Exception {
204  1 internalTest(0);
205    }
206   
 
207  1 toggle public void testReadMaximalTerm01() throws Exception {
208  1 internalTest(1);
209    }
210   
 
211  1 toggle public void testReadMaximalTerm02() throws Exception {
212  1 internalTest(2);
213    }
214   
 
215  1 toggle public void testReadMaximalTerm03() throws Exception {
216  1 internalTest(3);
217    }
218   
 
219  1 toggle public void testReadMaximalTerm04() throws Exception {
220  1 internalTest(4);
221    }
222   
 
223  1 toggle public void testReadMaximalTerm05() throws Exception {
224  1 internalTest(5);
225    }
226   
 
227  1 toggle public void testReadMaximalTerm06() throws Exception {
228  1 internalTest(6);
229    }
230   
 
231  1 toggle public void testReadMaximalTerm07() throws Exception {
232  1 internalTest(7);
233    }
234   
 
235  1 toggle public void testReadMaximalTerm08() throws Exception {
236  1 internalTest(8);
237    }
238   
 
239  1 toggle public void testReadMaximalTerm09() throws Exception {
240  1 internalTest(9);
241    }
242   
 
243  1 toggle public void testReadMaximalTerm10() throws Exception {
244  1 internalTest(10);
245    }
246   
 
247  1 toggle public void testReadMaximalTerm11() throws Exception {
248  1 internalTest(11);
249    }
250   
 
251  1 toggle public void testReadMaximalTerm12() throws Exception {
252  1 internalTest(12);
253    }
254   
 
255  1 toggle public void testReadMaximalTerm13() throws Exception {
256  1 internalTest(13);
257    }
258   
 
259  1 toggle public void testReadMaximalTerm14() throws Exception {
260  1 internalTest(14);
261    }
262   
 
263  1 toggle public void testReadMaximalTerm15() throws Exception {
264  1 internalTest(15);
265    }
266   
 
267  1 toggle public void testReadMaximalTerm16() throws Exception {
268  1 internalTest(16);
269    }
270   
 
271  1 toggle public void testReadMaximalTerm17() throws Exception {
272  1 internalTest(17);
273    }
274   
 
275  1 toggle public void testReadMaximalTerm18() throws Exception {
276  1 internalTest(18);
277    }
278   
 
279  1 toggle public void testReadMaximalTerm19() throws Exception {
280  1 internalTest(19);
281    }
282   
 
283  1 toggle public void testReadMaximalTerm20() throws Exception {
284  1 internalTest(20);
285    }
286   
 
287  1 toggle public void testReadMaximalTerm21() throws Exception {
288  1 internalTest(21);
289    }
290   
 
291  1 toggle public void testReadMaximalTerm22() throws Exception {
292  1 internalTest(22);
293    }
294   
 
295  1 toggle public void testReadMaximalTerm23() throws Exception {
296  1 internalTest(23);
297    }
298   
 
299  1 toggle public void testReadMaximalTerm24() throws Exception {
300  1 internalTest(24);
301    }
302   
 
303  1 toggle public void testReadMaximalTerm26() throws Exception {
304  1 internalTest(26);
305    }
306   
 
307  1 toggle public void testReadMaximalTerm27() throws Exception {
308  1 internalTest(27);
309    }
310   
 
311  1 toggle public void testReadMaximalTerm28() throws Exception {
312  1 internalTest(28);
313    }
314   
 
315  1 toggle public void testReadMaximalTerm29() throws Exception {
316  1 internalTest(29);
317    }
318   
 
319  1 toggle public void testReadMaximalTerm30() throws Exception {
320  1 internalTest(30);
321    }
322   
 
323  1 toggle public void testReadMaximalTerm31() throws Exception {
324  1 internalTest(31);
325    }
326   
 
327  1 toggle public void testReadMaximalTerm32() throws Exception {
328  1 internalTest(32);
329    }
330   
 
331  1 toggle public void testReadMaximalTerm33() throws Exception {
332  1 internalTest(33);
333    }
334   
 
335  1 toggle public void testReadMaximalTerm34() throws Exception {
336  1 internalTest(34);
337    }
338   
 
339  1 toggle public void testReadMaximalTerm35() throws Exception {
340  1 internalTest(35);
341    }
342   
 
343  1 toggle public void testReadMaximalTerm36() throws Exception {
344  1 internalTest(36);
345    }
346   
 
347  1 toggle public void testReadMaximalTerm37() throws Exception {
348  1 internalTest(37);
349    }
350   
 
351  1 toggle public void testReadMaximalTerm38() throws Exception {
352  1 internalTest(38);
353    }
354   
 
355  1 toggle public void testReadMaximalTerm39() throws Exception {
356  1 internalTest(39);
357    }
358   
 
359  1 toggle public void testReadMaximalTerm40() throws Exception {
360  1 internalTest(40);
361    }
362   
 
363  1 toggle public void testReadMaximalTerm41() throws Exception {
364  1 internalTest(41);
365    }
366   
 
367  1 toggle public void testReadMaximalTerm42() throws Exception {
368  1 internalTest(42);
369    }
370   
 
371  1 toggle public void testReadMaximalTerm43() throws Exception {
372  1 internalTest(43);
373    }
374   
 
375  1 toggle public void testReadMaximalTerm44() throws Exception {
376  1 internalTest(44);
377    }
378   
 
379  1 toggle public void testReadMaximalTerm45() throws Exception {
380  1 internalTest(45);
381    }
382   
 
383  1 toggle public void testReadMaximalTerm46() throws Exception {
384  1 internalTest(46);
385    }
386   
 
387  1 toggle public void testReadMaximalTerm47() throws Exception {
388  1 internalTest(47);
389    }
390   
 
391  1 toggle public void testReadMaximalTerm48() throws Exception {
392  1 internalTest(48);
393    }
394   
 
395  1 toggle public void testReadMaximalTerm49() throws Exception {
396  1 internalTest(49);
397    }
398   
 
399  1 toggle public void testReadMaximalTerm50() throws Exception {
400  1 internalTest(50);
401    }
402    }