the success of the perturbative aspect of the standard model is truly impressive , the theory being now tested at higher than one - loop accuracy .
it is natural that over the past years various methods have been proposed to calculate higher loop graphs . beyond one loop ,
there are situations in which one can neglect internal masses , or exploit the kinematics to evaluate amplitudes analytically at some special point where the feynman diagrams become simpler . these special situations , while ingenious , cover only certain classes of physical processes
.    there have been attempts to formulate solutions for two - loop feynman diagrams , which ideally should be as general as the one - loop solutions are . for the massless case
a lot of progress has been reached recently @xcite . on the other hand , for the general massive case
, it has become clear that some numerical treatment appears unavoidable because of the complexity of the scalar integrals involved .    in refs .
@xcite a reduction scheme was found for treating massive self - energy diagrams at two - loop , with the resulting master scalar integrals being evaluated numerically .    in ref .
@xcite we investigated the problem of a general massive two - loop algorithm , which would deal with multi - leg diagrams as well .
once we subscribe to a semi - numerical approach , some demands must be made , which are based on the generality , the universality , the effectiveness and the accuracy that a particular formalism engenders .
we have shown that for any external kinematics and internal masses , we can reduce every two - loop amplitude for a process due to any renormalizable interactions into a set of ten scalar integrals and their derivatives .
it is not hard to see how a result like this is obtained if we consider first a scalar theory with trivial interactions @xcite .
then , there would be two internal momenta , @xmath4 and @xmath5 , and by the use of feynman parameters to combine sets of denominators in which either @xmath4 or @xmath5 or @xmath6 runs through , and to make shifts in @xmath4 and @xmath5 , we have an integrand proportional to    @xmath7^{\alpha_1}(q^2+m_2 ^ 2)^{\alpha_2 } [ ( p+q)^2+m_3 ^ 2]^{\alpha_3}\ ] ]    in which a four - vector @xmath8 is left over , which is a linear function of the external momenta and feynman parameters .
the `` masses '' @xmath9 are functions of external momenta , internal masses and feynman parameters .
these are to be integrated over @xmath4 , @xmath5 and a set of feynman parameters . by partial
differentiating with respect to @xmath9 , there is in principle only one basic function arising from @xmath10 we need to know , although for convenience one may add @xmath11 it is clear that different interactions and different graphs will give different polynomials of feynman parameters to the numerators , and also different @xmath8 and @xmath9 .
an extension of this construction to tensor integrals will give us the main result mentioned earlier .
in the following section , we discuss the steps and arguments needed to perform a tensorial decomposition .
we show that there is a small set of basic functions which are needed , which have simple , one - dimensional integral representations .
their analytic structure is easy to see , and therefore the integration contour can be extended into the complex plane and optimized for rapid numerical convergence . in section 3
, we shall give a detailed exposition of the numerical techniques involved .
given that two - point functions are usually simpler to calculate , many calculations existing in the literature used unitarity cuts of self - energies to calculate lower loop - order inclusive decay rates .
we would like to stress that , given a process , our formalism allows us to calculate the amplitudes individually , as opposed to using unitarity cuts . as an immediate consequence , it becomes possible to obtain rates for exclusive processes , without the need to integrate over the whole final - state phase space .    in section 4 , for illustration
, we discuss in detail the application of our method to the important physical process @xmath12 .
the starting point of calculating a massive two - loop diagram is to express it in terms of integrals of a standard type .
topologically , any generic two - loop diagram can be represented in the form shown in figure 1 . by introducing a set of feynman parameters
@xmath13 to combine all propagators which have the same loop integration momentum @xmath4 , @xmath5 , or @xmath14 , the graph can always be represented as an integral over a sunset - type two - loop integral .
this is illustrated in figure  [ fig : intosunset ] .
all dependence on the external momenta @xmath15 and internal masses @xmath16 is now contained in the variables @xmath17 , @xmath18 , @xmath19 , and @xmath8 , which also depend on the set of feynman parameters @xmath13 .
= 12 cm    the original feynman diagram is written at this point as an integral over tensor functions of the following type ( all momenta are rotated into euclidean ) :    @xmath20^{\alpha_{1 } } \ ,               ( q^{2}+m_{2}^{2})^{\alpha_{2 } } \ ,               ( r^{2}+m_{3}^{2})^{\alpha_{3 } }          }      ~~ . \label{eq:1}\ ] ]    by casting the graph in this form , our strategy is to develop a uniform treatment of all possible sunset - type functions which can be generated from generic two - loop feynman graphs . the further tensor reduction and decomposition into standard scalar functions
is done by using standard formulae common for all diagrams .
therefore it can be automatized in the form of an algebraic manipulation program .    at the end ,
the remaining integral over the feynman parameters @xmath13 , represented in figure  [ fig : intosunset ] , is performed numerically .
tensor integrals of the type in eqn .
[ eq:1 ] need to be decomposed into scalar integrals . by lorentz covariance ,
this two - loop integral is a tensor constructed from the external momentum @xmath21 and the metric tensor @xmath22 .
given that , one way of obtaining the tensor decomposition would be to write down all tensor structures allowed by the symmetry of the integral , use appropriate projectors , and solve the resulting equations .    another way to do
this is by decomposing the loop momenta @xmath4 and @xmath5 into components parallel and orthogonal to the external momentum @xmath21 :    @xmath23    after this decomposition , the tensor decomposition is obtained by noticing that the functions with an odd number of transverse loop momenta @xmath24 and @xmath25 vanish , while the even functions are transverse to @xmath21 @xcite . in ref .
@xcite we have shown that the resulting scalar coefficients of the tensor decomposition are integrals of the following form :    @xmath26^{\alpha_{1 } } \ ,               ( q^{2}+m_{2}^{2})^{\alpha_{2 } } \ ,               ( r^{2}+m_{3}^{2})^{\alpha_{3 } }          }      ~~ . \label{eq:2}\ ] ]    we give in the following the tensor decompositions for all tensor integrals of the type of eq .
[ eq:1 ] of rank 1 , 2 , and 3 :      tensor decompositions for more than three lorentz indices are derived in a similar way . in the formulae above ,
a loop integration @xmath28 is understood , and we used the following notations :      and :      in the expressions above , we introduced a set of ten scalar integrals @xmath31 , which are related to the @xmath32 functions , and are defined as follows :    @xmath33 ^ 2 \ ,            ( q^2     + m_{2}^{2 } ) \ ,            ( r^2     + m_{3}^{2 } )          }       \nonumber \\      { \cal h}_2     & = &      \int d^{n}p\,d^{n}q\ ,       \frac { p \cdot k } {            [ ( p+k)^2+m_{1}^{2}]^2 \ ,            ( q^2     + m_{2}^{2 } ) \ ,            ( r^2     + m_{3}^{2 } )          }       \nonumber \\
{ \cal h}_3     & = &      \int d^{n}p\,d^{n}q\ ,       \frac { q \cdot k } {            [ ( p+k)^2+m_{1}^{2}]^2 \ ,            ( q^2     + m_{2}^{2 } ) \ ,            ( r^2     + m_{3}^{2 } )          }       \nonumber \\      { \cal h}_4     & = &      \int d^{n}p\,d^{n}q\ ,       \frac { ( p \cdot k)^2            - \frac{1}{n } k^2 p^2 } {            [ ( p+k)^2+m_{1}^{2}]^2 \ ,            ( q^2     + m_{2}^{2 } ) \ ,            ( r^2     + m_{3}^{2 } )          }       \nonumber \\
{ \cal h}_5     & = &      \int d^{n}p\,d^{n}q\ ,       \frac { ( p \cdot k ) ( q \cdot k )            - \frac{1}{n } k^2 ( q \cdot p )   } {            [ ( p+k)^2+m_{1}^{2}]^2 \ ,            ( q^2     + m_{2}^{2 } ) \ ,            ( r^2     + m_{3}^{2 } )          }       \nonumber \\
{ \cal h}_6     & = &      \int d^{n}p\,d^{n}q\ ,       \frac { ( q \cdot k)^2            - \frac{1}{n } k^2 q^2   } {            [ ( p+k)^2+m_{1}^{2}]^2 \ ,            ( q^2     + m_{2}^{2 } ) \ ,            ( r^2     + m_{3}^{2 } )          }       \nonumber \\      { \cal h}_7     & = &      \int d^{n}p\,d^{n}q\ ,       \frac { ( p \cdot k)^3            - \frac{3}{n+2 } k^2 p^2 ( p \cdot k )   } {            [ ( p+k)^2+m_{1}^{2}]^2 \ ,            ( q^2     + m_{2}^{2 } ) \ ,            ( r^2     + m_{3}^{2 } )          }       \nonumber \\     { \cal h}_8     & = &      \int d^{n}p\,d^{n}q\ ,       \frac { ( p \cdot k)^2 ( q \cdot k )            -    \frac{3}{n+2 } k^2 p^2 ( q \cdot k )    } {            [ ( p+k)^2+m_{1}^{2}]^2 \ ,            ( q^2     + m_{2}^{2 } ) \ ,            ( r^2     + m_{3}^{2 } )          }       \nonumber \\      { \cal h}_9      & = &      \int d^{n}p\,d^{n}q\ ,       \frac { ( p \cdot k ) ( q \cdot k)^2           -   \frac{1}{n+2 } k^2          [ 2 ( p \cdot q ) ( q \cdot k ) + q^2 ( p \cdot k ) ]    } {            [ ( p+k)^2+m_{1}^{2}]^2 \ ,            ( q^2     + m_{2}^{2 } ) \ ,            ( r^2     + m_{3}^{2 } )          }       \nonumber \\      { \cal h}_{10 }      & = &      \int d^{n}p\,d^{n}q\ ,       \frac { ( q \cdot k)^3            - \frac{3}{n+2 }   k^2 q^2 ( q \cdot k )   } {            [ ( p+k)^2+m_{1}^{2}]^2 \ ,            ( q^2     + m_{2}^{2 } ) \ ,            ( r^2     + m_{3}^{2 } )          }    \end{aligned}\ ] ]    as it can be seen in eqs .
5 , these scalar functions appear naturally in the tensorial decomposition . as discussed in the following section , the functions @xmath31 are only logarithmically divergent in the ultraviolet . because of this
, they have very simple integral representations which can be used for numerical computation . once a way of calculating the special functions @xmath31 is available ,
the @xmath34 functions can easily be recovered by partial fractioning eqns .
the partial fractioning generates essentially trivial products of one - loop tadpoles .
the conversion formulae are given in appendix a.      because the ultraviolet behaviour of the functions @xmath31 is logarithmic , fairly simple and symmetric integral representations can be found @xcite :    @xmath35 %       + { \cal o}(\epsilon )    \nonumber \\     { \cal h}_2      & = &      \pi^4 k^2      \left [      - \frac{2}{\epsilon^2 }      + \frac{1}{\epsilon } ( \frac{1}{2 } - 2 \gamma_{m_1 } )            + \frac{13}{8 }            - \frac{\pi^2}{12 }            + \frac{\gamma_{m_1}}{2 }            - \gamma_{m_1}^2            - h_2     \right ] %       + { \cal o}(\epsilon )    \nonumber \\
{ \cal h}_3      & = &      \pi^4 k^2      \left [        \frac{1}{\epsilon^2 }      - \frac{1}{\epsilon } ( \frac{1}{4 } - \gamma_{m_1 } )            - \frac{13}{16 }            + \frac{\pi^2}{24 }            - \frac{\gamma_{m_1}}{4 }             + \frac{\gamma_{m_1}^2}{2 }             + h_3     \right ] %       + { \cal o}(\epsilon )    \nonumber \\
{ \cal h}_4      & = &      \pi^4 ( k^2)^2      \left [        \frac{3}{2 \epsilon^2 }      + \frac{1}{\epsilon } \frac{3 \gamma_{m_1}}{2 }             - \frac{175}{96 }            + \frac{\pi^2}{16 }            + \frac{3 \gamma_{m_1}^2}{4 }             + \frac{3}{4 } h_4     \right ] %       + { \cal o}(\epsilon )    \nonumber \\     { \cal h}_5      & = &      \pi^4 ( k^2)^2      \left [      - \frac{3}{4 \epsilon^2 }      - \frac{1}{\epsilon } \frac{3 \gamma_{m_1}}{4 }             + \frac{175}{192 }            - \frac{\pi^2}{32 }            - \frac{3 \gamma_{m_1}^2}{8 }             - \frac{3}{4 } h_5     \right ] %       + { \cal o}(\epsilon )    \nonumber \\     { \cal h}_6      & = &      \pi^4 ( k^2)^2      \left [        \frac{1}{2 \epsilon^2 }      - \frac{1}{\epsilon } ( \frac{1}{24 } - \frac{\gamma_{m_1}}{2 }   )            - \frac{19}{32 }            + \frac{\pi^2}{48 }            - \frac{\gamma_{m_1}}{24 }             + \frac{\gamma_{m_1}^2}{4 }             + \frac{3}{4 } h_6     \right ] %       + { \cal o}(\epsilon )    \nonumber \\     { \cal h}_7     & = &      \pi^4 ( k^2)^3      \left [      - \frac{1}{\epsilon^2 }      - \frac{1}{\epsilon } ( \frac{5}{24 } + \gamma_{m_1 } )            + \frac{287}{192 }            - \frac{\pi^2}{24 }            - \frac{5 \gamma_{m_1}}{24 }             - \frac{\gamma_{m_1}^2}{2 }             - \frac{1}{2 } h_7     \right ] %       + { \cal o}(\epsilon )    \nonumber \\
{ \cal h}_8     & = &      \pi^4 ( k^2)^3      \left [        \frac{1}{2\epsilon^2 }      + \frac{1}{\epsilon } ( \frac{5}{48 } + \frac{\gamma_{m_1}}{2 }   )            - \frac{287}{384 }            + \frac{\pi^2}{48 }            + \frac{5 \gamma_{m_1}}{48 }             + \frac{\gamma_{m_1}^2}{4 }             + \frac{1}{2 } h_8     \right ] %       + { \cal o}(\epsilon )    \nonumber \\
{ \cal h}_9      & = &      \pi^4 ( k^2)^3      \left [      - \frac{1}{3 \epsilon^2 }      - \frac{1}{\epsilon } ( \frac{1}{24 } + \frac{\gamma_{m_1}}{3 }   )            + \frac{95}{192 }            - \frac{\pi^2}{72 }            - \frac{\gamma_{m_1}}{24 }             - \frac{\gamma_{m_1}^2}{6 }             - \frac{1}{2 } h_9     \right ] %       + { \cal o}(\epsilon )    \nonumber \\
{ \cal h}_{10 }      & = &      \pi^4 ( k^2)^3      \left [        \frac{1}{4 \epsilon^2 }      + \frac{1}{\epsilon } ( \frac{1}{96 } + \frac{\gamma_{m_1}}{4 }   )            - \frac{283}{768 }            + \frac{\pi^2}{96 }            + \frac{\gamma_{m_1}}{96 }             + \frac{\gamma_{m_1}^2}{8 }             + \frac{1}{2 } h_{10 }     \right ]    %       + { \cal o}(\epsilon )     \ ; \ ; .\end{aligned}\ ] ]    here , @xmath36 is the space - time dimension , and @xmath37 ( @xmath38 is the euler constant , and @xmath39 is the t hooft mass ) .
the special functions @xmath40 which appear in the formulae above are the finite part in the @xmath41 expansion of @xmath31 .
they are defined by the following integral representations . except for special values of their arguments , they can not be further integrated into well - studied functions , such as the familiar polylogarithms , and as such , our strategy is to evaluate them numerically directly from their integral representations :    @xmath42    \nonumber \\
h_3(m_1,m_2,m_3;k^2 ) & = &   \int_0 ^ 1 dx \ ,                                 [ \tilde{g }    ( x )                                + \tilde{f_1 } ( x ) ] \ , ( 1-x )    \nonumber \\
h_4(m_1,m_2,m_3;k^2 ) & = &   \int_0 ^ 1 dx \ ,                                [ \tilde{g }
( x )                                + \tilde{f_1 } ( x )                                + \tilde{f_2 } ( x ) ]    \nonumber \\
h_5(m_1,m_2,m_3;k^2 ) & = &   \int_0 ^ 1 dx \ ,                                [ \tilde{g }    ( x )                                + \tilde{f_1 } ( x )                                + \tilde{f_2 } ( x ) ] \ , ( 1-x )    \nonumber \\
h_6(m_1,m_2,m_3;k^2 ) & = &   \int_0 ^ 1 dx \ ,                                [ \tilde{g }    ( x )                                + \tilde{f_1 } ( x )                                + \tilde{f_2 } ( x ) ] \ , ( 1-x)^2    \nonumber \\
h_7(m_1,m_2,m_3;k^2 ) & = &   \int_0 ^ 1 dx \ ,                                [ \tilde{g }    ( x )                                + \tilde{f_1 } ( x )                                + \tilde{f_2 } ( x )                                + \tilde{f_3 } ( x ) ]    \nonumber \\
h_8(m_1,m_2,m_3;k^2 ) & = &   \int_0 ^ 1 dx \ ,                                [ \tilde{g }    ( x )                                + \tilde{f_1 } ( x )                                + \tilde{f_2 } ( x )                                + \tilde{f_3 } ( x ) ] \ , ( 1-x )    \nonumber \\
h_9(m_1,m_2,m_3;k^2 ) & = &   \int_0 ^ 1 dx \ ,                                [ \tilde{g }    ( x )                                + \tilde{f_1 } ( x )                                + \tilde{f_2 } ( x )                                + \tilde{f_3 } ( x ) ] \ , ( 1-x)^2    \nonumber \\
h_{10}(m_1,m_2,m_3;k^2 ) & = &   \int_0 ^ 1 dx \ ,                                [ \tilde{g }    ( x )                                + \tilde{f_1 } ( x )                                + \tilde{f_2 } ( x )                                + \tilde{f_3 } ( x ) ] \ , ( 1-x)^3     \ ; \ ; .
\label{eq : intrepr}\end{aligned}\ ] ]    the four building blocks @xmath43 , @xmath44 , @xmath45 , and @xmath46 of these one - dimensional integral representations are given in appendix b.      the ten special functions @xmath31 we introduced in the previous section , or , equivalently , their corresponding @xmath48 , are sufficient for treating all two - loop feynman graphs which may be encountered in renormalizable theories .    to see this ,
it is useful to define the following auxiliary two - loop functions :    @xmath49^{\alpha_{3 } }          }      ~~ .\ ] ]    @xmath50 are trivially related to @xmath48 by a simple redefinition of the loop momentum ( see appendix a ) .
the only reason for introducing them is for simplifying the discussion of this section ; some recursion relations can be written more compactly in terms of these scalar functions .    to prove our assertion that the set of ten @xmath51 functions is sufficient for the case of renormalizable theories , we notice that not all functions @xmath50 of various indices are independent .
there are recursion relations which relate functions of different indices .
we will define the `` degree '' of a @xmath50 function as @xmath52 .
the degree can be increased by differentiating with respect to the mass variables :    @xmath53    and similarly for @xmath54 and @xmath55 .
functions of the same degree are related by recursion relations obtained by differentiating with respect to the external momentum variable @xmath21 :    @xmath56    { \cal p}^{a \ , b}_{\alpha_1 \ , \alpha_2 \
, \alpha_3 }    + \frac{a k^2}{2 \alpha_1 }     { \cal p}^{a-1 \ , b}_{\alpha_1 \ , \alpha_2 \ , \alpha_3 } \nonumber \\    { \cal p}^{a \ , b+1}_{\alpha_1 \ , \alpha_2 + 1 \ , \alpha_3 } & = &    \frac{1}{2 \ ; \alpha_2 } \left [ 2 k^2 \frac{\partial}{\partial k^2 }                                    - ( a+b )                            \right ]    { \cal p}^{a \
, b}_{\alpha_1 \ , \alpha_2 \
, \alpha_3 }    + \frac{b k^2}{2 \alpha_2 }     { \cal p}^{a \ , b-1}_{\alpha_1 \ , \alpha_2 \ ,
\alpha_3 }      \ ; \ ; , \end{aligned}\ ] ]    and    @xmath57    { \cal p}^{a \ , b}_{\alpha_1 \ , \alpha_2 \ , \alpha_3 }   =     - 2 \alpha_3     \left [ k^2     { \cal p}^{a    \ , b   } _ { \alpha_1 \ , \alpha_2 \ ,
\alpha_3 + 1 } +     { \cal p}^{a+1 \ , b   } _ { \alpha_1 \ , \alpha_2 \ , \alpha_3 + 1 } +     { \cal p}^{a    \ , b+1}_{\alpha_1 \ , \alpha_2 \ ,
\alpha_3 + 1 }    \right ]      \ ; \ ; .\ ] ]    when calculating a specific process , it is thus possible to just focus on the lowest order @xmath58 functions involved .
all the other can be derived from these by differentiation , by using the relations above .    at the same time , in renormalizable theories
, there is a lower bound on the possible degree of @xmath58 functions involved in two - loop graphs , imposed by the dimension of the operators in the lagrangian .
the minimal degree is one , and is attained for instance by a two - loop diagram such as the one shown in figure  [ fig : deg1diagram ] .
additional external legs can at most increase the degree of the @xmath58 functions involved .
= 5 cm    therefore , the most obvious choice of a basic set is the @xmath58 functions with @xmath59 , @xmath60 :    @xmath61    however , we prefer to use the functions with @xmath62 , @xmath63 , @xmath64 instead :    @xmath65    it turns out that this equivalent set of functions has simpler integral representations than the functions of eqs .
[ eq : smallset ] . when needed , the eqs .
[ eq : smallset ] functions can be derived from eqs .
[ eq : largeset ] by partial @xmath4 :    @xmath66         { \cal p}^{a \ , b}_{\alpha_1 \ , \alpha_2 \ , \alpha_3 }
\right\ }      \ ; \ ; , \end{aligned}\ ] ]    because the set of functions of eqs .
[ eq : largeset ] and the ten @xmath31 functions differ essentially by simple , one - loop tadpole contributions given in appendix a , this proves our assertion that the ten @xmath31 functions are sufficient for treating renormalizable theories at two - loop .
we would like to stress that additional recursion relations and symmetries exist among this set of functions .
an example of such a symmetry relation is given in eq .
16 of ref .
@xcite , and additional ones may be present .
such relations can be used , in principle , for restraining the number of master functions involved . however , the set of ten @xmath31 that we proposed has the advantage of having clean , symmetrical integral representations , where permutations of mass arguments are not involved , while symmetry relations obtained by loop momenta redefinitions often interchange the mass arguments .
this simplicity is an advantage in practical calculations done by computer algebra , where a simpler algorithm may be preferable to a more complicated one which produces somewhat more compact results .
thus , on general grounds , all tensor integrals @xmath67 with @xmath68 can be expressed by the standard set of ten functions via mass or momentum differentiation .
the differentiations required can be carried out either by hand , or automatically , by using a computer algebra program such as mathematica or maple .    however , in practical calculations of feynman graphs , before performing the tensor decomposition , it is advantageous to exploit all possible partial fractioning of the loop momenta , instead of resorting to recursion relations _
after _ the tensor decomposition . this can result in more compact results .
this is in particular the case with the examples given in section 4 .
there , the calculation can be simplified by noticing that in the feynman gauge , loop momenta @xmath4 and @xmath5 in the numerators come from fermion propagators , and there are no more than four of them . for those terms with four powers of @xmath4 and @xmath5 , one can algebraically rearrange them , so that two of these powers will contract as @xmath69 , @xmath70 or @xmath71 , and then perform partial fractioning of these terms , to reduce them into @xmath72 functions with @xmath73 .
once the tensor reduction is done analytically , the original feynman diagram is expressed , according to figure  [ fig : intosunset ] , as an integral over the set of remaining feynman parameters @xmath74 .
the integrand itself consists of a sum of @xmath40 special functions and possibly trivial functions such as logarithms and rational functions of the kinematic variables @xmath17 , @xmath18 , @xmath19 , and @xmath75 .
the @xmath40 functions themselves are given by the one - dimensional integral representations given in eqns .
[ eq : intrepr ] . within our method
, all these integration steps are performed numerically in general .
therefore , it is natural to separate the numerical integration into two distinct steps : the routines to calculate the @xmath40 functions from their integral representations , and the final integration over the remaining feynman parameters @xmath74 .    when performing the numerical integration , special care is needed to make sure that the integration is performed on the physical sheet .
let us start with the integration of the @xmath40 functions .
= 15 cm    in figure  [ fig : gfunction ] we plot the functions @xmath76 and @xmath77 as a function of the integration parameter @xmath78 .
this is a typical behaviour above the threshold . at @xmath79
there is an integrable singularity of the logarithmic type , and similarly at @xmath80 . by mass or momentum differentiation the integrable nature of these singularities in @xmath78
is not changed ; this makes possible the treatment of more complicated topologies with additional external legs by using the same numerical approach . along the integration path
there are two branching points , between which the function acquires an imaginary part .
the integration path must be chosen such as to reproduce correctly this imaginary part .    by continuing the integration parameter @xmath78 into the complex plane
, we obtain a picture of the @xmath40 function s integrand as shown in figure  [ fig : g3d ] .
it is clear that if the position of the two branching points is known , a correct integration path can be calculated automatically by the computer program .
finding the singularities involves some subtleties .
= 14 cm    adopting the notations introduced in appendix b , and inspecting the expressions of the functions @xmath76 , @xmath81 , @xmath82 and @xmath83 given there , the branching points we are looking for must be among the solutions of the equation :    @xmath84    there are four solutions :    @xmath85   \nonumber \\ x_{3,4 } & = & \frac{1}{2 \mu_{2}^{2 } }               \ , [ \ , -a + b + \mu_{2}^{2 }      \pm \sqrt{(a - b-\mu_{2}^{2})^{2 } - 4 b \mu_{2}^{2 } } \ , ]          \ ; \ ; ,                                                           \nonumber \\
\mu_{1,2}^{2 }   & = & 1 - \kappa^{2 } \mp 2 \sqrt{- \kappa^{2 } }       ~~ . \label{eq:4solutions}\end{aligned}\ ] ]    to establish which two of the four solutions are the branching points we are looking for , it is useful to note that the causality of the green s functions can be expressed in at least two equivalent ways , which ought to lead to the same prescription for the integration path .
the causality condition is expressed by the @xmath86 prescription in the feynman propagator , which means to shift all masses in the propagators @xmath87 .
an equivalent way to impose causality is to calculate the euclidian green s functions and to go afterwards to physical momenta , approaching the cut on the positive real axis from above
. this amounts to shifting the external momentum @xmath88 .
these two prescriptions ought to be equivalent , and therefore have to fix the location of the physical singularities with respect to the real axis in the same way . for @xmath89 and @xmath90 , at @xmath91 both prescriptions lead to the same change , and therefore these are the singularities of the @xmath92 and @xmath93 functions . for @xmath94 and @xmath95 , the two prescriptions lead to opposite changes in the imaginary direction .
since causality fixes the location of the singularities of the green s function uniquely , @xmath94 and @xmath95 can not correspond to real singularities of @xmath92 and @xmath93 .
therefore @xmath92 and @xmath93 are analytical at these two points .
the @xmath92 and @xmath93 functions themselves have only two branching points at @xmath89 and @xmath90 , because the singularities at @xmath94 and @xmath95 are compensating among the four terms of @xmath92 in eq . 26 .
it is interesting to notice that the spurious solutions @xmath94 and @xmath95 correspond to the spurious , unphysical thresholds discussed in ref .
@xcite in the context of the relation of the scalar sunset diagram with a generalization of hypergeometric functions .
once the positions of these two singularities are known , the computer program can automatically compute an integration path which avoids them . because we are interested in a high accuracy and efficiency routine , we used an adaptive deterministic integration algorithm .
such integration routines are very accurate provided that the integrand is smooth enough .
the integrand itself is , of course , an analytic function along the complex integration path , and to preserve its smoothness it is advantageous to define a smooth integration path as well .
we use an integration path defined in terms of higher - order spline functions such that both the path and its jacobian are smooth functions .
a typical path is shown in figure  [ fig : path ] .
= 10 cm    along these lines , a fully automatic computer program can be written , which first identifies the singularities , then calculates a suitable complex integration path , and then performs the numerical integration to obtain the @xmath40 functions starting from their integral representations given in eqs .
[ eq : intrepr ] . by using adaptive integration routines , one typical evaluation of an @xmath40 function or of a derivative at eight digits takes of the order of 30 ms on a 600 mhz pentium processor .
= 14 cm    in practical calculations of feynman graphs , a number of mass or momentum derivatives of the functions @xmath40 become necessary .
they can easily be obtained either by hand , or automatically , by computer algebra programs such as mathematica or maple .    the numerical integration over the remaining feynman parameters @xmath74
is carried out along similar lines @xcite .
the dimensionality of this final integration depends on the topology of the diagram and on the number of legs .    with increasing complexity of the diagram
, the methods we describe in this paper will still be applicable in principle , but in practice will result in larger integrands and a final numerical integration of higher dimension .
thus its applicability will be limited in practice by the available computing power and by the ability of handling potentially large expressions which result from the tensor reduction in an error free way .
here we would like to illustrate by means of a concrete example how the algorithm described above works in practice .
examples involving two - point functions were given in ref .
@xcite . here
, we treat all two - loop three - point diagrams which contribute to the important physical process @xmath97 at @xmath98 .
the diagrams involved are shown in figure  [ fig : diagrams ] . in the complete calculation of this process , there are also self - energy type diagrams which contribute to the @xmath99 wave function renormalization .
these two - point function graphs are simpler than the three - point graphs both analytically and numerically . within our method , they were calculated in ref .
the process @xmath97 at @xmath98 at @xmath98 was calculated by means of a mass expansion in ref .
@xcite .
= 14.5 cm      the two - loop methods we describe in this paper are intended primarily for the calculation of massive diagrams . however ,
sometimes massless particles are involved in a calculation and may lead to infrared singularities .
we would like to stress that for purely massless calculations , such as qcd radiative corrections , more efficient methods are available already in the literature , which make use of the absence of masses @xcite .
it is often possible in the massless case to carry out the calculation completely analytically .
the discussion in this section applies to cases where the main difficulty is related to the presence of several masses , while the infrared structure is relatively simple .
typical examples are the purely electroweak and the mixed electroweak - qcd radiative corrections , such as the @xmath97 at @xmath98 process discussed here .    the diagrams @xmath100 , @xmath101 , @xmath102 , and @xmath103 are infrared divergent .
the most common treatment of ir divergencies uses dimensional regularization to separate both the uv and the ir singularities . in our approach however , this is not directly possible because in the expressions of eqs .
7 the @xmath41 expansion already separated the uv singularities , while the possible ir singularities are still contained in the integral representations of the finite parts @xmath40 , with the intention of calculating these finite parts by numerical integration .
therefore it is useful to separate first the infrared part of the two - loop diagrams in an analytically manageable form ( one - loop diagrams in this case ) .
the `` real two - loop '' calculation which is left after this separation is then free of infrared singularities .
the analytical separation of infrared divergencies is performed by noticing that the ir behaviour of the two - loop diagrams comes essentially only from the loop integration over the gluon propagator .
then , the ir behaviour is left unchanged if the loop momentum on the propagator common to the two loop integrations ( @xmath104 ) is being `` frozen '' to the loop momentum of the ir - finite loop .
this analytical separation of the ir behaviour is given in figure  [ fig : ir ] for all ir divergent two - loop diagrams involved in this process .
= 10 cm    once the ir separation is performed , the ir finite part ( @xmath105 etc . ) can be calculated by numerical integration . for the numerical integration to be stable
, one must make sure that the two components , _
e.g. _ @xmath100 and @xmath106 , have the same feynman parameterization such that the singularities cancel already before the feynman parameters integration .
then , the ir divergent part(_e.g . _ @xmath106 ) can easily be treated analytically , in general by using dimensional regularization to regularize the ir singularities .    for the case of the process considered in this example
, a gluon mass regulator can also be used .
this is possible because in this particular order in @xmath107 the ir structure is the same as in the abelian case , and a gluon mass regulator can be used without upsetting the slavnov - taylor identities .
it is still an open question if such an analytical separation of the infrared singularities can _ always _ be performed such that the numerical integration can be carried out , in the case of other processes with potentially more complicated ir structure .
this question clearly requires further investigation .
we subtract the uv divergence of the diagrams of figure  [ fig : diagrams ] by performing minimal subtractions of overall - divergences and sub - divergences .
further , we extract the ir divergences analytically , according to the discussion of the previous section . the tensor decomposition results in a set of convergent integrals over the remaining feynman parameters , which can be carried out numerically .
= 12.cm    because in the top mass range of physical interest the diagrams are not close to a threshold , the top mass dependency in the relevant range is relatively smooth , as it can be seen in figure  [ fig : diagramplots ] .
we give numerical values for these diagrams in table 1 for three values of the top mass  intermediary values can be well approximated by interpolation . in performing the numerical integration
, we took @xmath108 gev , @xmath109 gev , and the effective electroweak mixing angle @xmath110 .
for simplifying both the analytical and the numerical work , we neglected the @xmath99 mass , and in this limit all diagrams become proportional to @xmath111 .
it is perfectly possible to keep the exact @xmath112 dependency throughout the whole calculation at the price of dealing with longer expressions and more computing time ; however the @xmath99 mass effect on the two - loop @xmath97 decay rate is expected to be very small .
the numerical results are given in table 1 .
as for the numerical accuracy and efficiency which can be attained , the results of table 1 are for a total of 26 individual feynman diagrams ( @xmath113 and @xmath114 exchange counted separately ) , each of them evaluated for 3 different values of the top mass . to carry out the numerical integration for this total of 78 two - loop individual feynman graph evaluations with an accuracy of @xmath115 , a total of 100 hours computing time on a 600 mhz pentium machine was used .
higher numerical accuracy can be obtained by simply using more computing power .
the analytical tensor decomposition part , performed by a form computer algebra program ( we also used a schoonship version with similar results ) , takes about one hour .
.numerical values for the two - loop diagrams shown in figure  [ fig : diagrams ] .
@xmath116@xmath117 are the sums of the corresponding @xmath113 and @xmath114 exchange graphs .
an overall color and coupling constant factor of @xmath118 is understood .
the uv and ir divergences are removed as discussed in the text .
the numerical integration accuracy is @xmath115 .
the evaluation of a total of 78 feynman graph evaluations with this precision requires 100 hours computing time on a 600 mhz pentium machine . [
cols="<,^,^,^",options="header " , ]
we described an algorithm for the tensor reduction of massive two - loop diagrams .
it applies in principle to any massive two - loop graph , and it can be automatized in the form of a computer algebra program .
the tensor decomposition algorithm results in a set of ten special functions @xmath40 which are defined in terms of one - dimensional integral representations .
we described the numerical methods which are used for carrying out the remaining integrations .    by applying the analytical reduction and numerical integration to an important three - point example , @xmath97
, we have shown that it can be used in realistic calculations , where several internal mass and external momenta scales are involved .
this approach works for any such combination of kinematic variables , apart maybe from possible infrared complications .    in the context of the @xmath97 example given in this paper
, we discussed the analytical separation of the infrared divergencies . within our two - loop methods , if a process involves infrared singularities , these have to be dealt with in a special way because the numerical nature of our methods .
it is an open question if this ir treatment can be generalized to other two - loop situations with potentially more complicated ir structure .
* aknowledgements *    the work of a.g . was supported by the us department of energy . the work of y .- p
. y. was supported partly by the us department of energy .
in section 2.2 we introduced two types of scalar functions which are involved in the tensor decomposition : @xmath31 and @xmath119 .
then , we gave integral representations only for @xmath31 .
the necessary @xmath120 scalar functions can be derived from the corresponding @xmath31 by partial fractioning :    @xmath121    \nonumber \\      \tilde{{\cal p}}^{1 \ , 1}_{2 \ , 1 \ , 1 } & = &      { \cal h}_5 + \frac{k^2}{2 n } \left\ {      ( m_1 ^ 2 + m_2 ^ 2 - m_3 ^ 2 + k^2 ) { \cal h}_1    + 2 { \cal h}_2    - \tilde { \cal p}^{0 \ , 0}_{1 \ , 1 \ , 1 }    \right .
\nonumber \\     &    &    \left .
\ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     + t_2(m_1 ^ 2 ) \left [ t_1(m_2 ^ 2 ) - t_1(m_3 ^ 2 ) \right ]                                \right\ }    \nonumber \\       \tilde{{\cal p}}^{0 \ , 2}_{2 \ , 1 \ , 1 } & = &      { \cal h}_6 + \frac{k^2}{n } \left [    - m_2 ^ 2   { \cal h}_1    + t_2(m_1 ^ 2 ) t_1(m_3 ^ 2 )                                 \right ]    \nonumber \\
\tilde{{\cal p}}^{3 \ , 0}_{2 \ , 1 \ , 1 } & = &      { \cal h}_7 + \frac{3 k^2}{n+2 } \left [    - ( m_1 ^ 2 + k^2 ) { \cal h}_2    + \tilde{{\cal p}}^{1 \ , 0}_{1 \ , 1 \ , 1 }    - 2 \tilde{{\cal p}}^{2 \ , 0}_{2 \ , 1 \ , 1 }                                \right ]    \nonumber \\
\tilde{{\cal p}}^{2 \ , 1}_{2 \ , 1 \ , 1 } & = &      { \cal h}_8 + \frac{3 k^2}{n+2 } \left [    - ( m_1 ^ 2 + k^2 ) { \cal h}_3    + { \cal p}^{0 \ , 1}_{1 \ , 1 \ , 1 }    - 2 \tilde{{\cal p}}^{1 \ , 1}_{2 \ , 1 \ , 1 }                                \right ]    \nonumber \\      \tilde{{\cal p}}^{1 \ , 2}_{2 \ , 1 \ , 1 } & = &      { \cal h}_9 + \frac{k^2}{n+2 } \left [      ( m_1 ^ 2 + m_2 ^ 2 - m_3 ^ 2 + k^2 ) { \cal h}_3    - m_2 ^ 2 { \cal h}_2    + 2 \tilde{{\cal p}}^{1 \ , 1}_{2 \ , 1 \ , 1 }    - \tilde { \cal p}^{0 \ , 1}_{1 \ , 1 \ , 1 }   \right .    \nonumber \\     &    &    \left .
\ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \;\ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \;\ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \;\ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \;\ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \;\ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     - 2 k^2 t_2(m_1 ^ 2 ) t_1(m_3 ^ 2 )                                 \right ]    \nonumber \\      \tilde{{\cal p}}^{0 \ , 3}_{2 \ , 1 \ , 1 } & = &      { \cal h}_{10 } + \frac{3 k^2}{n+2 } \left [    - m_2 ^ 2 { \cal h}_3    + k^2 t_2(m_1 ^ 2 ) t_1(m_3 ^ 2 )                                     \right ]    \ ; \ ; \ ; \ ; , \end{aligned}\ ] ]    where @xmath122 and @xmath123 are the euclidian one  loop tadpole integrals :    @xmath124    in section 2.4 , in order to simplify the discussion , we introduced the functions @xmath58 which are related to @xmath119 by a simple loop momentum shift :    @xmath125    the functions with @xmath59 which appear in the relations 18 can be calculated by partial @xmath4 ( eq .
15 ) . for simplifying the notation
, we omitted in the above formulae the mass and momentum arguments of the functions @xmath126 , @xmath127 , and @xmath128 , and understand that these arguments appear in this same order in all relations .
the integral representations of the ten special functions functions @xmath40 , given in eqs . 8 , are built from the following functions :    @xmath129    \nonumber \\
\tilde{f_2}(m_1,m_2,m_3;k^2;x ) & = &     \frac{1}{3 }     \left [     - \frac{2}{\kappa^2 }      - \frac{1-\mu^2}{2 \kappa^2 }     - \left ( \frac{1-\mu^2}{\kappa^2 } \right)^2     \right .
\nonumber \\   & &     \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     \left .
+ y_1 ^ 3 \log{\frac{y_1}{y_1 - 1 } }      + y_2 ^ 3 \log{\frac{y_2}{y_2 - 1 } }      \right ]    \nonumber \\
\tilde{f_3}(m_1,m_2,m_3;k^2;x ) & = &     \frac{1}{4 }     \left [     - \frac{4}{\kappa^2 }      - \left ( \frac{1}{3 } + \frac{3}{\kappa^2 }   \right )        \left ( \frac{1-\mu^2}{\kappa^2 } \right )     - \frac{1}{2 } \left ( \frac{1-\mu^2}{\kappa^2 } \right)^2     - \left ( \frac{1-\mu^2}{\kappa^2 } \right)^3     \right .    \nonumber \\   & &     \left .     \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ; \ ;     + y_1 ^ 4 \log{\frac{y_1}{y_1 - 1 } }      + y_2 ^ 4 \log{\frac{y_2}{y_2 - 1 } }      \right ]     \ ; \ ; , \end{aligned}\ ] ]            in the above expressions , one special case must be treated separately , namely @xmath132 .
the @xmath40 functions have a smooth limit for @xmath133 .
for the purpose of numerical evaluation , it is useful to use a taylor expansion of the functions @xmath134 , @xmath135 , @xmath136 , and @xmath137 around @xmath138 for extremely small values of @xmath75 , where a direct evaluation by means of the exact expressions given above would be affected by large cancellations . it can be checked that this limit is regular and our approach reduces to the functions introduced by van der bij and veltman in ref .
@xcite .      z. bern , l. dixon , d.a .
kosower , _ jhep * 0001 * ( 2000 ) 027 ; _
tausk , _ phys .
b469 * ( 1999 ) 225 ; _ c. anastasiou , t. gehrmann , c. oleari , e. remiddi , j.b .
tausk , _ hep - ph/0003261 ; _ v.a .
smirnov , o.l .
_ nucl . phys . *
b566 * ( 2000 ) 469 ; _ j.a.m .
vermaseren , s.a .
larin , t. van ritbergen , _ phys . lett .
* b405 * ( 1997 ) 327 ; _ _ phys
. lett . * b404 * ( 1997 ) 153 ; _ _ phys
b400 * ( 1997 ) 379 . _
r. harlander , t. seidensticker , m. steinhauser , _ phys . lett .
* b426 * ( 1998 ) 125 ; _ j. fleischer , o.v .
tarasov , f. jegerlehner , p. raczka , _ phys .
lett . * b293 * ( 1992 ) 437 ; _ j. fleischer , f. jegerlehner , m. tentyukov , o. veretin , _ phys
* b459 * ( 1999 ) 625 . _