Ralf,

Here is a test example:

(1) -> )sys cat test-coerce1.input
-- test-coerce1.input
)cl co
R:=Integer
F:=Fraction R
M:=SquareMatrix(2,F)
m:M:=[[1,1],[1,1]]
f:F:=1
r:R:=1
f*m
r*m
--
)cl co
R:=Polynomial Integer
F:=Fraction R
M:=SquareMatrix(2,F)
m:M:=[[1,1],[1,1]]
f:F:=1
r:R:=1
f*m
r*m
--

(1) -> )r test-coerce1.input
-- test-coerce1.input
)cl co

   All user variables and function definitions have been cleared.
   All )browse facility databases have been cleared.
   Internally cached functions and constructors have been cleared.
   )clear completely is finished.
R:=Integer


   (1)  Integer
                                                                   Type: Type
F:=Fraction R


   (2)  Fraction Integer
                                                                   Type: Type
M:=SquareMatrix(2,F)


   (3)  SquareMatrix(2,Fraction Integer)
                                                                   Type: Type
m:M:=[[1,1],[1,1]]


        +1  1+
   (4)  |    |
        +1  1+
                                       Type: SquareMatrix(2,Fraction Integer)
f:F:=1


   (5)  1
                                                       Type: Fraction Integer
r:R:=1


   (6)  1
                                                                Type: Integer
f*m


        +1  1+
   (7)  |    |
        +1  1+
                                       Type: SquareMatrix(2,Fraction Integer)
r*m


        +1  1+
   (8)  |    |
        +1  1+
                                       Type: SquareMatrix(2,Fraction Integer)
--
)cl co

   All user variables and function definitions have been cleared.
   All )browse facility databases have been cleared.
   Internally cached functions and constructors have been cleared.
   )clear completely is finished.
R:=Polynomial Integer


   (1)  Polynomial Integer
                                                                   Type: Type
F:=Fraction R


   (2)  Fraction Polynomial Integer
                                                                   Type: Type
M:=SquareMatrix(2,F)


   (3)  SquareMatrix(2,Fraction Polynomial Integer)
                                                                   Type: Type
m:M:=[[1,1],[1,1]]


        +1  1+
   (4)  |    |
        +1  1+
                            Type: SquareMatrix(2,Fraction Polynomial Integer)
f:F:=1


   (5)  1
                                            Type: Fraction Polynomial Integer
r:R:=1


   (6)  1
                                                     Type: Polynomial Integer
f*m


        +1  1+
   (7)  |    |
        +1  1+
                            Type: SquareMatrix(2,Fraction Polynomial Integer)
r*m


   (8)  [2,2]
                           Type: DirectProduct(2,Fraction Polynomial Integer)
(9) ->

----

Why is this 2nd result for (8) not of the same form as the first
result for (8)? The only difference is

R:=Polynomial Integer

instead of

R:=Integer

Regards,
Bill Page.


On Fri, Jun 11, 2010 at 9:05 AM, Bill Page <[email protected]> wrote:
> Ralf,
>
> No. I asked why
>
>  *: (R, SquareMatrix(2, F) -> something
>
> is easy when R = Integer. But it is not "easy" when R =
> Polynomial(Complex Integer))?
>
> Regards,
> Bill Page.
>
> On Fri, Jun 11, 2010 at 2:04 AM, Ralf Hemmecke <[email protected]> wrote:
>>>> But note, my question was about looking for an appropriate operation *
>>>> (or rather an appropriate coercion) so that
>>>>
>>>>  R and SquareMatrix(2,Fraction R)
>>>>
>>>> can be connected.
>>
>>> Why is there no automatic coercion when R = Polynomial(Complex
>>> Integer))?  Is this some limitation of Fraction?
>>
>> Oh, that's easy. Then for F = Fraction(R) I ask for a multiplication
>>
>>  *: (F, SquareMatrix(2, F) -> something
>>
>> And the probably easiest * that can be found, is the one from
>> BiModule(F, F).
>>
>> Best regards
>> Ralf
>>
>> --
>> 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.
>>
>>
>

-- 
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