Difference between revisions of "CoCoA:HowTo:Use Modular Numbers"
From ApCoCoAWiki
m |
m (Bot: Replacing category HowTo with HowTo Old) |
||
(13 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | == | + | == Question == |
− | + | How can one compute with modular numbers? What's wrong in this? | |
Use R::=Z/(5)[x]; | Use R::=Z/(5)[x]; | ||
5x+2y; | 5x+2y; | ||
2y | 2y | ||
− | --- | + | ------------------------------- |
5=0; | 5=0; | ||
− | FALSE | + | FALSE |
− | --- | + | ------------------------------- |
+ | Moreover this command throws an error | ||
+ | Use R::=Z/(5); | ||
− | + | == Answer == | |
− | + | Type(5); | |
− | + | INT | |
− | INT | + | ------------------------------- |
− | ------------------------------- | + | 5 is an integer, and integers do not depend on the current ring: could you imagine what would happen to a For cycle over Z/(2)? ;-) |
− | 5 | ||
− | |||
− | + | If you want to use 5 as a modular number you should either use this syntax (similar to C/C++) | |
− | + | 5 % 5; | |
− | 0 % 5 | + | 0 % 5 |
− | ------------------------------- | + | ------------------------------- |
− | + | or embed your integer into the polynomial ring | |
− | + | Use R::=Z/(5)[x]; | |
− | + | Poly(5); | |
− | 0 | + | 0 |
− | ------------------------------- | + | ------------------------------- |
+ | The creation of a polynomial ring with no indeterminates has been disabled to highlight this (unexpected?) behaviour. | ||
+ | |||
+ | by [[User:Bigatti|Bigatti]] 17:26, 29 Nov 2005 (CET) | ||
+ | |||
+ | [[Category:HowTo Old]] | ||
+ | [[Category:CoCoA4]] |
Latest revision as of 09:44, 29 October 2020
Question
How can one compute with modular numbers? What's wrong in this?
Use R::=Z/(5)[x]; 5x+2y; 2y ------------------------------- 5=0; FALSE -------------------------------
Moreover this command throws an error
Use R::=Z/(5);
Answer
Type(5); INT -------------------------------
5 is an integer, and integers do not depend on the current ring: could you imagine what would happen to a For cycle over Z/(2)? ;-)
If you want to use 5 as a modular number you should either use this syntax (similar to C/C++)
5 % 5; 0 % 5 -------------------------------
or embed your integer into the polynomial ring
Use R::=Z/(5)[x]; Poly(5); 0 -------------------------------
The creation of a polynomial ring with no indeterminates has been disabled to highlight this (unexpected?) behaviour.
by Bigatti 17:26, 29 Nov 2005 (CET)