1 | initial version |

The symbolic sum `sum(((-1)^l/factorial(l)),l,0,n)`

is not "spontaneously" evaluated. You might force that by using the `numerical_approximation`

method (but this gives you a float where an exact (Integer) result is available).

Another workaround is to convert this expression to a Sympy expression, and force its evaluation via the `doit`

method :

```
sage: Dn
factorial(n)*sum((-1)^l/factorial(l), l, 0, n)
sage: Dn.subs(n=7)
5040*sum((-1)^l/factorial(l), l, 0, 7)
sage: Dn.subs(n=7)._sympy_()
5040*Sum((-1)**l/factorial(l), (l, 0, 7))
sage: Dn.subs(n=7)._sympy_().doit()
1854
```

BTW, Sage might benefit of such a method...

2 | No.2 Revision |

The symbolic sum `sum(((-1)^l/factorial(l)),l,0,n)`

is not "spontaneously" evaluated. You might force that by using the `numerical_approximation`

method (but this gives you a float where an exact (Integer) result is available).

**EDIT :** `tmonteil`

types faster than I do. My answer was a bit late, but quasi-identical to Thierry's, which is the simplest solution.

Another workaround is to convert this expression to a Sympy expression, and force its evaluation via the `doit`

method :

```
sage: Dn
factorial(n)*sum((-1)^l/factorial(l), l, 0, n)
sage: Dn.subs(n=7)
5040*sum((-1)^l/factorial(l), l, 0, 7)
sage: Dn.subs(n=7)._sympy_()
5040*Sum((-1)**l/factorial(l), (l, 0, 7))
sage: Dn.subs(n=7)._sympy_().doit()
1854
```

BTW, ~~Sage might benefit of such a method...~~this workaround may help in cases where Sage's `simplify`

fails to find an answer (it happens...).

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.