|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ExistentialVo | Line # 29 | 31 | 21 | 100% |
1.0
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
(27) | |||
Result | |||
0.8135593
|
org.qedeq.kernel.se.test.AbstractValueObjectTestCase.testAll
![]() |
1 PASS | |
0.5423729
|
org.qedeq.kernel.bo.service.latex.GenerateLatexTest.testGeneration2
![]() |
1 PASS | |
0.5423729
|
org.qedeq.kernel.bo.service.latex.GenerateLatexTest.testGeneration2
![]() |
1 PASS | |
0.5254237
|
org.qedeq.kernel.bo.service.unicode.GenerateUtf8Test.testGeneration3b
![]() |
1 PASS | |
0.5254237
|
org.qedeq.kernel.bo.service.latex.GenerateLatexTest.testGeneration
![]() |
1 PASS | |
0.5254237
|
org.qedeq.kernel.bo.service.unicode.Qedeq2UnicodeTextExecutorTest.testGeneration3b
![]() |
1 PASS | |
0.5254237
|
org.qedeq.kernel.bo.service.latex.GenerateLatexTest.testGeneration
![]() |
1 PASS | |
0.44067797
|
org.qedeq.kernel.bo.service.latex.GenerateLatexTest.testNegativeGeneration2
![]() |
1 PASS | |
0.44067797
|
org.qedeq.kernel.bo.service.latex.GenerateLatexTest.testNegativeGeneration2
![]() |
1 PASS | |
0.18644068
|
org.qedeq.kernel.bo.service.logic.SimpleProofFinderPluginTest.testPlugin
![]() |
1 PASS | |
0.18644068
|
org.qedeq.kernel.bo.service.logic.FormalProofCheckerPluginTest.testPlugin
![]() |
1 PASS | |
0.18644068
|
org.qedeq.kernel.bo.service.logic.FormalProofCheckerPluginTest.testPlugin2
![]() |
1 PASS | |
0.15254237
|
org.qedeq.kernel.bo.logic.wf.FormulaCheckerContextTest.testPositive03b
![]() |
1 PASS | |
0.15254237
|
org.qedeq.kernel.bo.logic.proof.checker.ProofCheckerTest.testCheck4
![]() |
1 PASS | |
0.15254237
|
org.qedeq.kernel.bo.logic.proof.finder.ProofFinderImplTest.testFind
![]() |
1 PASS | |
0.15254237
|
org.qedeq.kernel.bo.logic.proof.finder.ProofFinderImplTest.testFind3
![]() |
1 PASS | |
0.15254237
|
org.qedeq.kernel.bo.logic.proof.finder.ProofFinderImplTest.testFind2
![]() |
1 PASS | |
0.15254237
|
org.qedeq.kernel.bo.logic.proof.checker.ProofCheckerTest.testCheck1
![]() |
1 PASS | |
0.15254237
|
org.qedeq.kernel.bo.service.logic.SimpleProofFinderPluginTest.testPlugin2
![]() |
1 PASS | |
0.15254237
|
org.qedeq.kernel.bo.service.logic.SimpleProofFinderPluginTest.testPluginFast
![]() |
1 PASS | |
0.15254237
|
org.qedeq.kernel.bo.logic.proof.checker.ProofCheckerTest.testCheck6
![]() |
1 PASS | |
0.15254237
|
org.qedeq.kernel.bo.service.logic.FormalProofCheckerPluginTest.testPlugin3
![]() |
1 PASS | |
0.15254237
|
org.qedeq.kernel.xml.dao.GenerateXmlTest.testGeneration
![]() |
1 PASS | |
0.118644066
|
org.qedeq.kernel.se.visitor.QedeqNotNullTraverserTest.testQedeq
![]() |
1 PASS | |
0.118644066
|
org.qedeq.kernel.se.dto.module.ExistentialVoTest.testGetExistential
![]() |
1 PASS | |
0.10169491
|
org.qedeq.kernel.se.dto.module.ExistentialVoTest.testGetReferences
![]() |
1 PASS | |
0.033898305
|
org.qedeq.kernel.se.dto.module.ExistentialVoTest.testGetName
![]() |
1 PASS | |
1 | /* This file is part of the project "Hilbert II" - http://www.qedeq.org | |
2 | * | |
3 | * Copyright 2000-2014, Michael Meyling <mime@qedeq.org>. | |
4 | * | |
5 | * "Hilbert II" is free software; you can redistribute | |
6 | * it and/or modify it under the terms of the GNU General Public | |
7 | * License as published by the Free Software Foundation; either | |
8 | * version 2 of the License, or (at your option) any later version. | |
9 | * | |
10 | * This program is distributed in the hope that it will be useful, | |
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
13 | * GNU General Public License for more details. | |
14 | */ | |
15 | ||
16 | package org.qedeq.kernel.se.dto.module; | |
17 | ||
18 | import org.apache.commons.lang.ArrayUtils; | |
19 | import org.qedeq.base.utility.EqualsUtility; | |
20 | import org.qedeq.kernel.se.base.list.Element; | |
21 | import org.qedeq.kernel.se.base.module.Existential; | |
22 | ||
23 | ||
24 | /** | |
25 | * Usage of rule for existential generalization. | |
26 | * | |
27 | * @author Michael Meyling | |
28 | */ | |
29 | public class ExistentialVo implements Existential { | |
30 | ||
31 | /** Reference to previously proven formula. Usually like A -> B. */ | |
32 | private String reference; | |
33 | ||
34 | /** Subject variable that we will quantify about. */ | |
35 | private Element subjectVariable; | |
36 | ||
37 | /** | |
38 | * Constructs an reason. | |
39 | * | |
40 | * @param reference Reference to a valid formula. | |
41 | * @param subjectVariable Subject variable that we will quantify about. | |
42 | */ | |
43 | ||
44 | 82 |
![]() |
45 | 82 | this.reference = reference; |
46 | 82 | this.subjectVariable = subjectVariable; |
47 | } | |
48 | ||
49 | /** | |
50 | * Default constructor. | |
51 | */ | |
52 | 42 |
![]() |
53 | // nothing to do | |
54 | } | |
55 | ||
56 | 97 |
![]() |
57 | 97 | return this; |
58 | } | |
59 | ||
60 | 87 |
![]() |
61 | 87 | return reference; |
62 | } | |
63 | ||
64 | /** | |
65 | * Set formula reference. | |
66 | * | |
67 | * @param reference Reference to formula. | |
68 | */ | |
69 | 16 |
![]() |
70 | 16 | this.reference = reference; |
71 | } | |
72 | ||
73 | 2 |
![]() |
74 | 2 | if (reference == null) { |
75 | 1 | return ArrayUtils.EMPTY_STRING_ARRAY; |
76 | } | |
77 | 1 | return new String[] {reference }; |
78 | } | |
79 | ||
80 | 220 |
![]() |
81 | 220 | return subjectVariable; |
82 | } | |
83 | ||
84 | /** | |
85 | * Set quantification subject variable. | |
86 | * | |
87 | * @param subjectVariable Set free subject variable. | |
88 | */ | |
89 | 18 |
![]() |
90 | 18 | this.subjectVariable = subjectVariable; |
91 | } | |
92 | ||
93 | 68 |
![]() |
94 | 68 | return "Existential"; |
95 | } | |
96 | ||
97 | 35 |
![]() |
98 | 35 | if (!(obj instanceof ExistentialVo)) { |
99 | 4 | return false; |
100 | } | |
101 | 31 | final ExistentialVo other = (ExistentialVo) obj; |
102 | 31 | return EqualsUtility.equals(reference, other.reference) |
103 | && EqualsUtility.equals(subjectVariable, other.subjectVariable); | |
104 | } | |
105 | ||
106 | 40 |
![]() |
107 | 40 | return (reference != null ? reference.hashCode() : 0) |
108 | 40 | ^ (subjectVariable != null ? 2 ^ subjectVariable.hashCode() : 0); |
109 | } | |
110 | ||
111 | 46 |
![]() |
112 | 46 | StringBuffer result = new StringBuffer(); |
113 | 46 | result.append(getName()); |
114 | 46 | if (reference != null || subjectVariable != null) { |
115 | 33 | result.append(" ("); |
116 | 33 | boolean w = false; |
117 | 33 | if (reference != null) { |
118 | 32 | result.append(reference); |
119 | 32 | w = true; |
120 | } | |
121 | 33 | if (subjectVariable != null) { |
122 | 26 | if (w) { |
123 | 25 | result.append(", "); |
124 | } | |
125 | 26 | result.append(subjectVariable); |
126 | 26 | w = true; |
127 | } | |
128 | 33 | result.append(")"); |
129 | } | |
130 | 46 | return result.toString(); |
131 | } | |
132 | ||
133 | } |
|