# HG changeset patch
# User Christian Nassau <nassau@nullhomotopie.de>
# Date 1354721575 -3600
# Node ID 56685d8014326620e68cf2588cf1b1010d721a37
# Parent 8cc80651f64a106e1f3765e5bfcb91c11b79c10d
fix sign in milnor_multiplication_odd
diff --git a/sage/algebras/steenrod/steenrod_algebra_mult.py b/sage/algebras/steenrod/steenrod_algebra_mult.py
a
|
b
|
def milnor_multiplication_odd(m1,m2,p): |
437 | 437 | sage: A.P(36,6)*A.P(27,9,81) |
438 | 438 | 2 P(13,21,83) + P(14,24,82) + P(17,20,83) + P(25,18,83) + P(26,21,82) + P(36,15,80,1) + P(49,12,83) + 2 P(50,15,82) + 2 P(53,11,83) + 2 P(63,15,81) |
439 | 439 | |
| 440 | Associativity once failed because of a sign error:: |
| 441 | |
| 442 | sage: a,b,c = A.Q_exp(0,1), A.P(3), A.Q_exp(1,1) |
| 443 | sage: (a*b)*c == a*(b*c) |
| 444 | True |
| 445 | |
440 | 446 | This uses the same algorithm Monks does in his Maple package to |
441 | 447 | iterate through the possible matrices: see |
442 | 448 | http://mathweb.scranton.edu/monks/software/Steenrod/steen.html. |
… |
… |
def milnor_multiplication_odd(m1,m2,p): |
473 | 479 | ind = len(q_mono.intersection(range(k+i,1+max(q_mono)))) |
474 | 480 | else: |
475 | 481 | ind = 0 |
476 | | coeff = (-1)**ind |
| 482 | coeff = (-1)**ind * old_answer[mono] |
477 | 483 | lst = list(mono[0]) |
478 | 484 | if ind == 0: |
479 | 485 | lst.append(k+i) |