Salut,
J’ai commencé à regarder le tutoriel de sage et à la section Loops, Functions, Control Statements, and Comparisons, ça parle de comparer des éléments d’anneaux différents grâce à des morphismes canoniques que sage devine (vers un « parent » commun).
1 2 | > ZZ(1) == QQ(1) # La comparaison s'effectue dans QQ. True |
Mais je ne comprends pas le résultat suivant.
1 2 3 4 5 6 7 8 9 | > zz1, zz3, zz5, zz6, zz10 = (ZZ.quotient(n) for n in [1,3,5,6,10]) > zz6(0) == zz10(0) # Ok, on se place dans ZZ/(2). True > zz3(0) == zz5(0) # Et là, on ne se place pas dans ZZ/(1) ? False > zz5(0) == zz1(0) True > zz1(0) == zz3(0) True |
Pourquoi est-ce que ça donne ce résultat ?
edit : Cet exemple est donné ici, apparemment c’est normal. « However, in general there is no coercion between two different finite fields. » Je ne vois pas pourquoi le cas où le pgcd est 1 est traité différemment.
+0
-0