In [1]:
0.6 * 0.7
Out[1]:
0.42
In [2]:
(0.6+1)*(0.7+1)
Out[2]:
2.72
In [3]:
((0.6+1)*(0.7+1)) - 1
Out[3]:
1.7200000000000002
In [4]:
((0.6+1)*(0.7+1)) - 1 - (0.6 * 0.7)
Out[4]:
1.3000000000000003
In [5]:
((0.6+1)*(0.7+1)) - 1 - (0.6 * 0.7) - 0.6
Out[5]:
0.7000000000000003
In [6]:
((0.6+1)*(0.7+1)) - 1 - (0.6 * 0.7) - 0.6 == 0.7
Out[6]:
False
In [7]:
import numpy as np
print(np.allclose(((0.6+1)*(0.7+1)) - 1 - (0.6 * 0.7) - 0.6, 0.7))
True

In [8]:
def an_oddity(a, b):
    output = ((a+1)*(b+1)) - 1 - (a*b) - a
    #print(output)
    return np.allclose(output, b)
In [9]:
an_oddity(0.6, 0.7)
Out[9]:
True
In [10]:
an_oddity(0.8, 0.9)
Out[10]:
True
In [11]:
an_oddity(0.2, 0.9)
Out[11]:
True
In [12]:
all((an_oddity(a,b) for (a,b) in np.random.randn(1000, 2)))
Out[12]:
True
In [12]: