http://www.evanmiller.org/mathematical-hacker.html
I reference that blog post pretty often. I fully intend to reference it again in my talk (if it is accepted). The interesting thing about the Factorial / Gamma / loggamma example is that to find the solution you need to find someone who knows both that n! = Gamma(n+ 1) *and* who knows that a loggamma routine is commonly found in lower level languages. Those bits of information are usually held by different experts. Ondrej said "Of course, that's obvious" when I first reposted the article on G+. You're right that this is similar to my last talk. The last one though was mostly about an application (numerical linear algebra). I actually want to talk a bit more about the philosophy and some of the more abstract tools that people might actually use. Your first impression is a valuable one though, I should go through my last talk and make sure that I'm not repeating too much that shouldn't be repeated. On Mon, Mar 31, 2014 at 6:03 PM, Aaron Meurer <asmeu...@gmail.com> wrote: > That's a good point. One of the nicest things about symbolics, when you > can get it, is that it can make things drastically more efficient by doing > mathematical simplifications. Evaluating integrals symbolically is a nice > example of this (especially for SymPy, which has some pretty nice > algorithms to compute definite integrals). > > I'm reminded of a popular blog post (I can't find a link right now) about > how know math is important for programmers. It has the example of how all > these programming languages show how they they compute factorial, and how > tail recursion can make it linear or whatever, but the actual best way to > compute it is to use loggamma, which gives the answer in constant time. > > Aaron Meurer > > > On Mon, Mar 31, 2014 at 7:51 PM, Tim Lahey <tim.la...@gmail.com> wrote: > >> >> >> On 31 Mar 2014, at 20:29, Aaron Meurer wrote: >> >> On Mon, Mar 31, 2014 at 11:32 AM, Matthew Rocklin <mrock...@gmail.com >>> >wrote: >>> >>> I like that you emphasized the utility for numerics, I think that this >>>> is >>>> likely to be a selling point for the SciPy crowd. >>>> >>>> >>> Yes, this was very intentional. I may need some help gathering up some >>> nice >>> motivating examples if this is accepted. >>> >> >> One motivating example for me is the integration of products of functions >> over areas and volumes. For finite elements, you'll get products of pairs >> of trial functions (usually polynomials). It's even more useful for >> products of trig functions. Performing the integration of any of theses is >> easy enough with numerical integration, but it's much more efficient to >> calculate the integrals symbolically and then perform the evaluation for >> each element. >> >> Cheers, >> >> Tim. >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "sympy" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to sympy+unsubscr...@googlegroups.com. >> To post to this group, send email to sympy@googlegroups.com. >> Visit this group at http://groups.google.com/group/sympy. >> To view this discussion on the web visit https://groups.google.com/d/ >> msgid/sympy/AE5C61B5-8C69-49AE-BAFF-85E5AC924F8F%40gmail.com. >> >> For more options, visit https://groups.google.com/d/optout. >> > > -- > You received this message because you are subscribed to the Google Groups > "sympy" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sympy+unsubscr...@googlegroups.com. > To post to this group, send email to sympy@googlegroups.com. > Visit this group at http://groups.google.com/group/sympy. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sympy/CAKgW%3D6K8F9weBP-7yjpzrN9hQ5FR54TK_QdCPqbzBdwo20zKdg%40mail.gmail.com<https://groups.google.com/d/msgid/sympy/CAKgW%3D6K8F9weBP-7yjpzrN9hQ5FR54TK_QdCPqbzBdwo20zKdg%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sympy+unsubscr...@googlegroups.com. To post to this group, send email to sympy@googlegroups.com. Visit this group at http://groups.google.com/group/sympy. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CAJ8oX-HZABscP43PDuoAeWhcpBYW2w39G8qPx0%2BZCbKcYbJdJg%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.