*To*: mathgroup@smc.vnet.net*Subject*: [mg11089] Re: Overloading Integrate*From*: weber@math.uni-bonn.de (Matthias Weber)*Date*: Sun, 22 Feb 1998 14:55:14 -0500*Organization*: RHRZ - University of Bonn (Germany)*References*: <6cggcn$sg9@smc.vnet.net>

In article <6cggcn$sg9@smc.vnet.net>, Tommy Nordgren <f85-tno@nada.kth.se> wrote: > -- > If I define my own method for Integrate as follows, will it break the > built in code? > > Integrate[a_Plus,vars_] := Integrate[#,vars]& /@ a > Integrate[a_Plus,vars_] := Integrate[Expand[a b],vars] > > This is concerned with applying linearity rules, so that all my > overloading rules for the Integrate operator will be tried before the > built-in code. > I also wonder wether anyone can recommend a good integration table, > specially for 3-d integrals over infinite space. You cannot do harm to the buit-in functions so easily. But you should be sure that this is what you want. Eg Integrate[1/x + (-1/x), {x,0,1}] will be the prototype of trouble-causing integrals. By the way, it might also be helpful to change the order of the DownValues of your overloaded Integrate, as explained in sect. 2.4.13 of the mmma book. Good luck. Matthias