Ticket #14368: trac_14368-rebased.patch

File trac_14368-rebased.patch, 1.5 KB (added by davidloeffler, 6 years ago)

Rebased to 5.12.beta1

  • sage/modular/dirichlet.py

    # HG changeset patch
    # User Bartosz Naskrecki <nasqret@gmail.com>
    # Date 1374802113 25200
    # Node ID cc54f2e563c16fd21f76f13eaa4c79b6414d54dd
    # Parent  995fbbf0196f8c00d0d66a64a425564a2bca0705
    trac 14368: Fix of the problem that DirichletGroup(1).list() returns the zero character in modular/dirichlet.py
    
    diff --git a/sage/modular/dirichlet.py b/sage/modular/dirichlet.py
    a b  
    299299            pass
    300300       
    301301        val = self.__modulus - 1
    302         if not val:
    303             one = self.base_ring()(1)
    304             self.__values = [self.base_ring()(1)]
    305             return self.__values[0]
    306         elif m == val:
     302        if m == val:
    307303            return self.__eval_at_minus_one()
    308304        else:
    309305            self.values()  # compute all values
     
    14491445            zeta10,
    14501446            zeta10^3 - zeta10^2 + zeta10 - 1,
    14511447            zeta10^2]
     1448
     1449        Test that :trac:`14368` is fixed::
     1450
     1451            sage: DirichletGroup(1).list()[0].values()
     1452            [1]
    14521453        """
    14531454        try:
    14541455            return self.__values
     
    14661467
    14671468        if self.is_trivial():  # easy special case
    14681469            x = [ one ] * int(mod)
    1469             x[0] = zero
     1470
    14701471            for p in mod.prime_divisors():
    14711472                p_mult = p
    14721473                while p_mult < mod:
    14731474                    x[p_mult] = zero
    14741475                    p_mult += p
     1476            if not (mod == 1):
     1477                x[0] = zero
    14751478            self.__values = x
    14761479            return x
    14771480