login  home  contents  what's new  discussion  bug reports help  links  subscribe  changes  refresh  edit

# Edit detail for RecurrenceRelationOperator revision 3 of 3

 1 2 3 Editor: 127.0.0.1 Time: 2007/11/06 21:12:10 GMT-8 Note: copied from axiom-developer

removed:
-


Here is a simple implemention of a recurrence relation operator. It is far from finished, but might serve as a starting point. I experienced the following difficulties:

• The operator model in Axiom is quite restrictive: all arguments have to be from the same domain. This leads to problems elsewhere, too. I don't think that the following can be justified mathematically:

fricas
sum(k,k=1.0..2.5)
 (1)
Type: Union(Fraction(Polynomial(Float)),...)
• dummy variables are only supported in a very limited fashion: for the recurrence relation operator it would be good to have also "dummy operators"...

## Things to do:

• a proper operation analogous to sum, rootOf or the like needs to be written. The operation evalRec is just for a start
• evalRec needs to be speeded up
• evalADE doesn't really work concerning evaluation

)lib RECOP
dummy := new()$Symbol; Type: Symbol fricas f := operator 'f; Type: BasicOperator? fricas eq := f(dummy) - f(dummy - 1) - f(dummy - 2); Type: Expression(Integer) fricas r:=evalRec(f, dummy, n, n0, eq, [1,1])$RecurrenceOperator(Integer, Expression Integer)
Integer,Expression(Integer)) .