diff --git a/btypes_big_integer/src/main/java/de/hhu/stups/btypes/BInteger.java b/btypes_big_integer/src/main/java/de/hhu/stups/btypes/BInteger.java index aca62d9e50d3edb6abeb311aa2290087af7090bf..3a2cc0e469963cb2db7bb24c6a32a8deac0ce8c7 100755 --- a/btypes_big_integer/src/main/java/de/hhu/stups/btypes/BInteger.java +++ b/btypes_big_integer/src/main/java/de/hhu/stups/btypes/BInteger.java @@ -70,32 +70,32 @@ public class BInteger extends java.lang.Number implements Comparable<BInteger>, } public BBoolean lessEqual(BInteger o) { - return new BBoolean(this.value <= o.value); + return new BBoolean(compareTo(o) <= 0); } public BBoolean greaterEqual(BInteger o) { - return new BBoolean(this.value >= o.value); - } - - public java.math.BigInteger asBigInteger() { - return new java.math.BigInteger(String.valueOf(value)); + return new BBoolean(compareTo(o) >= 0); } public BBoolean less(BInteger o) { - return new BBoolean(this.value < o.value); + return new BBoolean(compareTo(o) < 0); } public BBoolean greater(BInteger o) { - return new BBoolean(this.value > o.value); + return new BBoolean(compareTo(o) > 0); } public BBoolean equal(BInteger o) { - return new BBoolean(this.value == o.value); + return new BBoolean(compareTo(o) == 0); } public BBoolean unequal(BInteger o) { - return new BBoolean(this.value != o.value); + return new BBoolean(compareTo(o) != 0); + } + + public java.math.BigInteger asBigInteger() { + return new java.math.BigInteger(String.valueOf(value)); } @Override diff --git a/btypes_big_integer/src/main/java/de/hhu/stups/btypes/BSet.java b/btypes_big_integer/src/main/java/de/hhu/stups/btypes/BSet.java index f190d5266f19726cfc970caaafbf4fe54feaa350..e7ee93110023e2e12330d4f2e78718c2976c56c5 100755 --- a/btypes_big_integer/src/main/java/de/hhu/stups/btypes/BSet.java +++ b/btypes_big_integer/src/main/java/de/hhu/stups/btypes/BSet.java @@ -348,20 +348,31 @@ public class BSet<T> implements BObject, Set<T> { return new BBoolean(true); } + public BBoolean subsetOfBoolean() { + for(T e : this) { + if(e instanceof BBoolean) { + return new BBoolean(true); + } else { + return new BBoolean(false); + } + } + return new BBoolean(true); + } + public BBoolean strictSubsetOfBoolean() { - return subsetOfBoolean(); + return new BBoolean(this.subsetOfBoolean().booleanValue() && this.size() < 2); } public BBoolean notSubsetOfBoolean() { - return subsetOfBoolean().not(); + return this.subsetOfBoolean().not(); } public BBoolean equalBoolean() { - return new BBoolean(subsetOfBoolean().booleanValue() && this.size() == 2); + return new BBoolean(this.subsetOfBoolean().booleanValue() && this.size() == 2); } public BBoolean unequalBoolean() { - return new BBoolean(subsetOfBoolean().booleanValue() && this.size() < 2); + return new BBoolean(this.subsetOfBoolean().booleanValue() && this.size() < 2); } public BBoolean strictSubsetOfInteger() {