From 874bc510a07efaa522f93f6fea86c0fdf4456656 Mon Sep 17 00:00:00 2001 From: Fabian Vu <fabian.vu@hhu.de> Date: Mon, 17 Feb 2025 14:53:30 +0100 Subject: [PATCH] Some fixes in B(Big)Integer and BSet --- .../java/de/hhu/stups/btypes/BInteger.java | 20 +++++++++---------- .../main/java/de/hhu/stups/btypes/BSet.java | 19 ++++++++++++++---- 2 files changed, 25 insertions(+), 14 deletions(-) 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 aca62d9e5..3a2cc0e46 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 f190d5266..e7ee93110 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() { -- GitLab