Browse Source

BigRational: When canceling, preserve NaN instead of converting to ZERO

git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11797 bbc10eb1-c90d-0410-af57-cb519fbb1720
master
Joachim Klein 10 years ago
parent
commit
1f9fb4d505
  1. 8
      prism/src/param/BigRational.java

8
prism/src/param/BigRational.java

@ -126,8 +126,12 @@ public final class BigRational implements Comparable<BigRational>
}
if (cancel) {
if (num.equals(BigInteger.ZERO)) {
num = BigInteger.ZERO;
den = BigInteger.ONE;
if (!den.equals(BigInteger.ZERO)) {
// not NaN (= 0/0), so this is a real zero:
// normalise by setting denominator to 1
num = BigInteger.ZERO;
den = BigInteger.ONE;
}
} else {
BigInteger gcd = num.gcd(den);
num = num.divide(gcd);

Loading…
Cancel
Save