There are some bugs that I looked up, but ATM do not know how to
solve.

1)

((%i*t-1)*z*(z^2-3*t^2-3))/(sqrt(2)*sqrt(3)*(t^4+4*%i*t^3-6*t^2-4*%i*t+1))

give type UnivariatePolynomial(t,Expression(Complex(Integer))).  Result
is biggish, so I do not put it here, but one can see that t-s from
numerater are treated as variable in UnivariatePolynomial, while
t-s in denominator are treated as belonging to Expression(Complex(Integer)).

2)

f := operator 'f
SSOLVE ==> EXPRSOL(INT, EXPR INT, UFPS EXPR INT, UFPS SMPEXPR EXPR INT)
coefficient(seriesSolve(1/2-f x, f, x, [])$SSOLVE, 0)

gives no result and no error message.  It seems that trouble is in
interpreter coercions of power series, namely that interpreter
builds a function to do needed coercion, but this function is
called in lazy way and fails during evaluation of coefficients.

3)

Old bug reported by Tobias Neumann.  Slightly simplified version
is below:

)clear completely

EI ==> Expression(Integer)

-- It looks that trouble is due to the function call.  Probably
-- function caches types ???
matrixKernels(x) == removeDuplicates(reduce(append, map(tower, listOfLists(x))))

mymat := matrix([[sqrt('x1)]])
matrixKernels(mymat)

myexpr := sqrt('x1)
eval(tower(myexpr)(1) :: EI, ['x1=4])

)boot clearConstructorCaches()

matrixKernels(mymat)
eval(tower(myexpr)(1) :: EI, ['x1=4])

Apparently the second call to 'matrixKernels' puts 'x1' into
wrong cache.

To explan more: currently clearConstructorCaches() resets positions
of all kernels in caches to 0.  Such kernels either should be
re-inserted to the cache on use, or keep position 0.  That is,
when new equal kernel is inserted first, we can not insert old
kernel, so it should keep position 0 and use slow methods for
kernel access.  But checking position on kernel corresponding
to 'x1' we can see that position is set to 0 by
clearConstructorCaches(), and after call to 'matrixKernels'
this kernel gets nozero position.  But checking 'x1' later
we can see that 'x1' from command line has different
position, which suggests that old 'x1' is inserted to the
old cache.

-- 
                              Waldek Hebisch

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to fricas-devel+unsubscr...@googlegroups.com.
To view this discussion visit 
https://groups.google.com/d/msgid/fricas-devel/aEdlH1VwX4ORYYN4%40fricas.org.

Reply via email to