# Import Psyco if available
try:
    import psyco
    psyco.full()
except ImportError:
    pass

from Numeric import *
#import scipy

def nCr(x, y):
    if x >= y:
        return fact(x)/(fact(y) * fact(x - y))
    else:
        return 0

def fact(x):
    if x == 0:
        return 1
    else:
        return x*fact(x-1)

def I(m, K):
    if (K == 0):
        return 2**m - 1
    else:
        return sum([nCr(m, i) for i in range(1, K+1)])
    #return sum(scipy.comb(m, arange(1, K+1)))
