While we are at it, here is another example of the interpreter
being to ambitious:
************************************************************
(1) -> A:Matrix IntegerMod 5 := [[2,3],[3,2]]

        +2  3+
   (1)  |    |
        +3  2+
                                                  Type: Matrix(IntegerMod(5))
(2) -> inverse A

        +  2   3 +
        |- -   - |
        |  5   5 |
   (2)  |        |
        | 3     2|
        | -   - -|
        + 5     5+
                                   Type: Union(Matrix(Fraction(Integer)),...)
(3) -> B:Matrix PrimeField 5 := [[2,3],[3,2]]

        +2  3+
   (3)  |    |
        +3  2+
                                                  Type: Matrix(PrimeField(5))
(4) -> inverse B

   (4)  "failed"
                                                    Type: Union("failed",...)
(5) -> 

************************************************************
I would rather have the interpreter to refuse inverses for Matrix
IntegerMod completely.
On the other hand, in other situations the 'inverse' function must make 
a coercion to a fraction field (e.g. for Matrix Integer), but why is
there a coercion from IntegerMod to Fraction Integer?

regards,
Franz

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/fricas-devel?hl=en.

Reply via email to