Consider
fricas
(1) -> binomial(n,2)
Type: Expression(Integer)
fricas
binomial(n,n-2)
Type: Expression(Integer)
which should, by the definition of the binomial coefficient, give identical results.
The attached patch fixes this.
There is, however, a more fundamental issue to consider: Often, it is desirable that such expressions are not "expanded", but some thought needs to go into this. In my current application (in SPAD), I know a priori that a given ex in EXPR INT (possibly containing binomial coefficients or expressions of the form  ) can always be retracted to a
) can always be retracted to a FRAC POLY INT. So, in this case, I really need "full" expansion.
I think, MuPAD? and Maple have a convert function for this. In Axiom, it really would be the responsibility of retract/retractIfCan. But that would mean to have at least one other property attached to operators, that tells Axiom how to retract to various domains. I guess that possibly different functions would have to be called for different domains we would like to retract to...
Martin
binomial.patch