'Removes the non-live cosets from the coset table, described on
pg. 167 [1].'

def compress(self):

    gamma = (-1)
    A = self.A
    A_dict = self.A_dict
    A_dict_inv = self.A_dict_inv
    table = self.table
    chi = tuple([i for i in range(len(self.p)) if (self.p[i] != i)])
    for alpha in self.omega:
        gamma += 1
        if (gamma != alpha):
            for x in A:
                beta = table[alpha][A_dict[x]]
                table[gamma][A_dict[x]] = beta
                (table[beta][A_dict_inv[x]] == gamma)
    self.p = list(range((gamma + 1)))
    del table[len(self.p):]
    for row in table:
        for j in range(len(self.A)):
            row[j] -= bisect_left(chi, row[j])
