@@ -58,7 +58,12 @@ public void adjust(
58
58
CompoundCondition expertPremise = rule .getPremise ();
59
59
rule .setPremise (new CompoundCondition ());
60
60
61
+ IntegerBitSet positives = new IntegerBitSet (dataset .size ());
62
+ IntegerBitSet negatives = new IntegerBitSet (dataset .size ());
61
63
Covering covering = new Covering ();
64
+ // ugly
65
+ covering .positives = positives ;
66
+ covering .negatives = negatives ;
62
67
63
68
for (ConditionBase cnd : expertPremise .getSubconditions ()) {
64
69
ElementaryCondition ec = (ElementaryCondition )cnd ;
@@ -68,10 +73,12 @@ public void adjust(
68
73
69
74
// update covering information - needed for automatic induction
70
75
covering .clear ();
76
+
71
77
rule .covers (dataset , covering , covering .positives , covering .negatives );
72
- Set <Integer > covered = new HashSet <Integer >();
73
- covered .addAll (covering .positives );
74
- covered .addAll (covering .negatives );
78
+ Set <Integer > covered = new IntegerBitSet (dataset .size ());
79
+ covered .addAll (positives );
80
+ covered .addAll (negatives );
81
+
75
82
rule .setCoveringInformation (covering );
76
83
77
84
// determine attribute
@@ -111,13 +118,7 @@ public void adjust(
111
118
}
112
119
113
120
covering .clear ();
114
- IntegerBitSet positives = new IntegerBitSet (dataset .size ());
115
- IntegerBitSet negatives = new IntegerBitSet (dataset .size ());
116
- rule .covers (dataset , covering , positives , negatives );
117
-
118
- // ugly
119
- covering .positives = positives ;
120
- covering .negatives = negatives ;
121
+ rule .covers (dataset , covering , covering .positives , covering .negatives );
121
122
rule .setCoveringInformation (covering );
122
123
123
124
rule .setCoveredNegatives (negatives );
0 commit comments