Propagators (and products thereof) are represented via
FeynAmpDenominator
[PropagatorDenominator[Momentum[q, D], m]] FeynAmpDenominator
\frac{1}{q^2-m^2}
Again, for the external input we always use a shortcut
[{q, m}] FAD
\frac{1}{q^2-m^2}
[{q, m0}, {q + p1, m1}, {q + p2, m1}] FAD
\frac{1}{\left(q^2-\text{m0}^2\right).\left((\text{p1}+q)^2-\text{m1}^2\right).\left((\text{p2}+q)^2-\text{m1}^2\right)}
The presence of FeynAmpDenominator
in an expression does
not automatically mean that it is a loop amplitude.
FeynAmpDenominator
can equally appear in tree level
amplitudes, where it stands for the usual 4-dimensional propagator.
In FeynCalc there is no explicit way to distinguish between loop amplitudes and tree-level amplitudes. When you use functions that manipulate loop integrals, you need to tell them explicitly what is your loop momentum.
There are several functions, that are useful both for tree- and loop-level amplitudes, depending on what we want to do
For example, one can split one FeynAmpDenominator
into
many
[{k1 - k2}, {k1 - p2, m}, {k2 + p2, m}]
FAD[%]
FeynAmpDenominatorSplit% // FCE // StandardForm
\frac{1}{(\text{k1}-\text{k2})^2.\left((\text{k1}-\text{p2})^2-m^2\right).\left((\text{k2}+\text{p2})^2-m^2\right)}
\frac{1}{(\text{k1}-\text{k2})^2 \left((\text{k1}-\text{p2})^2-m^2\right) \left((\text{k2}+\text{p2})^2-m^2\right)}
(*FAD[k1 - k2] FAD[{k1 - p2, m}] FAD[{k2 + p2, m}]*)
or combine several into one
[FAD[k1 - k2] FAD[{k1 - p2, m}] FAD[{k2 + p2, m}]]
FeynAmpDenominatorCombine% // FCE // StandardForm
\frac{1}{(\text{k1}-\text{k2})^2.\left((\text{k1}-\text{p2})^2-m^2\right).\left((\text{k2}+\text{p2})^2-m^2\right)}
(*FAD[k1 - k2, {k1 - p2, m}, {k2 + p2, m}]*)
At the tree-level we often do not need the
FeynAmpDenominators
but rather want to express everything
in terms of explicit scalar products, in order to exploit kinematic
simplifications. This is handled by
FeynAmpDenominatorExplicit
[FAD[{k2 + p2, m}, k1 - k2, {k1 - p2, m}]] FeynAmpDenominatorExplicit
\frac{1}{\left(-2 (\text{k1}\cdot \;\text{k2})+\text{k1}^2+\text{k2}^2\right) \left(-2 (\text{k1}\cdot \;\text{p2})+\text{k1}^2-m^2+\text{p2}^2\right) \left(2 (\text{k2}\cdot \;\text{p2})+\text{k2}^2-m^2+\text{p2}^2\right)}
1-loop tensor reduction using Passarino-Veltman method is handled by
TID
[q, \[Mu]] FVD[q, \[Nu]] FAD[{q, m}]
FVD[%, q] TID
\frac{q^{\mu } q^{\nu }}{q^2-m^2}
\frac{m^2 g^{\mu \nu }}{D \left(q^2-m^2\right)}
= FVD[q, \[Mu]] SPD[q, p] FAD[{q, m0}, {q + p, m1}]
int [%, q] TID
\frac{q^{\mu } (p\cdot q)}{\left(q^2-\text{m0}^2\right).\left((p+q)^2-\text{m1}^2\right)}
\frac{p^{\mu } \left(\text{m0}^2-\text{m1}^2+p^2\right)^2}{4 p^2 \left(q^2-\text{m0}^2\right).\left((q-p)^2-\text{m1}^2\right)}-\frac{p^{\mu } \left(\text{m0}^2-\text{m1}^2+p^2\right)}{4 p^2 \left(q^2-\text{m0}^2\right)}+\frac{p^{\mu } \left(\text{m0}^2-\text{m1}^2+3 p^2\right)}{4 p^2 \left(q^2-\text{m1}^2\right)}
By default, TID
tries to reduce everything to scalar
integrals with unit denominators. However, if it encounters zero Gram
determinants, it automatically switches to the coefficient functions
[]
FCClearScalarProducts[p, p] = 0; SPD
[int, q] TID
\frac{p^{\mu }}{2 \left(q^2-\text{m1}^2\right)}-\frac{1}{2} i \pi ^2 \left(\text{m0}^2-\text{m1}^2\right) p^{\mu } \;\text{B}_1\left(0,\text{m0}^2,\text{m1}^2\right)
If we want the result to be express entirely in terms of
Passarino-Veltman function, i. e. without FAD
s, we can use
ToPaVe
[int, q, ToPaVe -> True] TID
\frac{1}{2} i \pi ^2 p^{\mu } \;\text{A}_0\left(\text{m1}^2\right)-\frac{1}{2} i \pi ^2 \left(\text{m0}^2-\text{m1}^2\right) p^{\mu } \;\text{B}_1\left(0,\text{m0}^2,\text{m1}^2\right)
ToPaVe
is actually also a standalone function, so it can
be used independently of TID
[]
FCClearScalarProducts[q, {q + p1}, {q + p2}]
FAD[%, q] ToPaVe
\frac{1}{q^2.(\text{p1}+q)^2.(\text{p2}+q)^2}
i \pi ^2 \;\text{C}_0\left(\text{p1}^2,\text{p2}^2,\text{p1}^2-2 (\text{p1}\cdot \;\text{p2})+\text{p2}^2,0,0,0\right)
Even if there are no Gram determinants, for some tensor integrals the full result in terms of scalar integrals is just too large
= FVD[q, \[Mu]] FVD[q, \[Nu]] FAD[q, {q + p1}, {q + p2}]
int = TID[int, q]; res
\frac{q^{\mu } q^{\nu }}{q^2.(\text{p1}+q)^2.(\text{p2}+q)^2}
// Short res
-\frac{\langle\langle 1\rangle\rangle }{4 (2-D)\langle\langle 1\rangle\rangle \langle\langle 1\rangle\rangle ^2\langle\langle 1\rangle\rangle \langle\langle 1\rangle\rangle \left(\langle\langle 1\rangle\rangle ^2-\langle\langle 1\rangle\rangle \right)^2}-\frac{\langle\langle 1\rangle\rangle }{\langle\langle 1\rangle\rangle }+\langle\langle 1\rangle\rangle -\frac{\langle\langle 44\rangle\rangle +\langle\langle 1\rangle\rangle }{4 \langle\langle 3\rangle\rangle \langle\langle 1\rangle\rangle ^2}
Of course we collect with respect to FAD
and isolate the
prefactors, but the full result still remains messy
[res, FeynAmpDenominator, IsolateNames -> KK] Collect2
-\frac{\text{KK}(864)}{4 q^2.(-\text{p1}+\text{p2}+q)^2}+\frac{\text{KK}(868)}{4 q^2.(q-\text{p1})^2.(q-\text{p2})^2}-\frac{\text{KK}(866)}{4 q^2.(q-\text{p1})^2}+-\frac{\text{KK}(861)}{4 q^2.(q-\text{p2})^2}
In such cases, we can get a much more compact results , if we stick
to coefficient functions and do not demand the full reduction to
scalars. To do so, use the option UsePaVeBasis
= TID[int, q, UsePaVeBasis -> True] res
i \pi ^2 g^{\mu \nu } \;\text{C}_{00}\left(\text{p1}^2,\text{p2}^2,-2 (\text{p1}\cdot \;\text{p2})+\text{p1}^2+\text{p2}^2,0,0,0\right)+i \pi ^2 \;\text{p1}^{\mu } \;\text{p1}^{\nu } \;\text{C}_{11}\left(\text{p1}^2,-2 (\text{p1}\cdot \;\text{p2})+\text{p1}^2+\text{p2}^2,\text{p2}^2,0,0,0\right)+i \pi ^2 \;\text{p2}^{\mu } \;\text{p2}^{\nu } \;\text{C}_{11}\left(\text{p2}^2,-2 (\text{p1}\cdot \;\text{p2})+\text{p1}^2+\text{p2}^2,\text{p1}^2,0,0,0\right)+i \pi ^2 \left(\text{p1}^{\nu } \;\text{p2}^{\mu }+\text{p1}^{\mu } \;\text{p2}^{\nu }\right) \;\text{C}_{12}\left(\text{p1}^2,-2 (\text{p1}\cdot \;\text{p2})+\text{p1}^2+\text{p2}^2,\text{p2}^2,0,0,0\right)
The resulting coefficient functions can be further reduced with
PaVeReduce
= PaVeReduce[res]; pvRes
// Short pvRes
\langle\langle 5\rangle\rangle +\frac{i \langle\langle 1\rangle\rangle \langle\langle 1\rangle\rangle \langle\langle 1\rangle\rangle (\langle\langle 1\rangle\rangle )}{4 (2-D) \langle\langle 1\rangle\rangle ^2}
In the case of multi-loop integrals (but also 1-loop integrals with
linear propagators) one should use FCMultiLoopTID
[q, \[Mu]] FVD[q, \[Nu]] SFAD[{q, m^2}, {{0, 2 l . q}}]
FVD[%, {q}] FCMultiLoopTID
\frac{q^{\mu } q^{\nu }}{(q^2-m^2+i \eta ).(2 (l\cdot q)+i \eta )}
\frac{m^2 \left(l^{\mu } l^{\nu }-l^2 g^{\mu \nu }\right)}{(1-D) l^2 (q^2-m^2+i \eta ).(2 (l\cdot q)+i \eta )}
Integral families are encoded in form of
FCTopology[id, {props}, {lmoms}, {extmoms}, kinematics, reserved]
symbols
= {
topos ["topoBox1L", {FAD[{q, m0}], FAD[{q + p1, m1}], FAD[{q + p2, m2}], FAD[{q + p2, m3}]},
FCTopology{q}, {p1, p2, p3}, {}, {}],
["topoTad2L", {FAD[{q1, m1}], FAD[{q2, m2}], FAD[{q1 - q2, 0}]}, {q1, q2}, {}, {}, {}]} FCTopology
\left\{\text{FCTopology}\left(\text{topoBox1L},\left\{\frac{1}{q^2-\text{m0}^2},\frac{1}{(\text{p1}+q)^2-\text{m1}^2},\frac{1}{(\text{p2}+q)^2-\text{m2}^2},\frac{1}{(\text{p2}+q)^2-\text{m3}^2}\right\},\{q\},\{\text{p1},\text{p2},\text{p3}\},\{\},\{\}\right),\text{FCTopology}\left(\text{topoTad2L},\left\{\frac{1}{\text{q1}^2-\text{m1}^2},\frac{1}{\text{q2}^2-\text{m2}^2},\frac{1}{(\text{q1}-\text{q2})^2}\right\},\{\text{q1},\text{q2}\},\{\},\{\},\{\}\right)\right\}
The loop integrals belonging to these topologies are written as
GLI[id, {powers}]
symbols
exp = a1 GLI["topoBox1L", {1, 1, 1, 1}] + a2 GLI["topoTad2L", {1, 2, 2}]
\text{a1} G^{\text{topoBox1L}}(1,1,1,1)+\text{a2} G^{\text{topoTad2L}}(1,2,2)
Using FCLoopFromGLI
we can convert GLI
s
into explicit propagator notation
[exp, topos] FCLoopFromGLI
\frac{\text{a1}}{\left(q^2-\text{m0}^2\right) \left((\text{p1}+q)^2-\text{m1}^2\right) \left((\text{p2}+q)^2-\text{m2}^2\right) \left((\text{p2}+q)^2-\text{m3}^2\right)}+\frac{\text{a2}}{\left(\text{q1}^2-\text{m1}^2\right) \left(\text{q2}^2-\text{m2}^2\right)^2 (\text{q1}-\text{q2})^4}
The very first step is usually to identify the occurring topologies in the amplitude (without attempting to minimize their number)
Find topologies occurring in the 2-loop ghost self-energy amplitude
= Get[FileNameJoin[{$FeynCalcDirectory, "Documentation", "Examples",
amp "Amplitudes", "Gh-Gh-2L.m"}]];
= FCLoopFindTopologies[amp, {q1, q2}]; res
\text{FCLoopFindTopologies: Number of the initial candidate topologies: }3
\text{FCLoopFindTopologies: Number of the identified unique topologies: }3
\text{FCLoopFindTopologies: Number of the preferred topologies among the unique topologies: }0
\text{FCLoopFindTopologies: Number of the identified subtopologies: }0
\text{FCLoopFindTopologies: }\;\text{Your topologies depend on the follwing kinematic invariants that are not all entirely lowercase: }\{\text{Pair[Momentum[p, D], Momentum[p, D]]}\}
\text{FCLoopFindTopologies: }\;\text{This may lead to issues if these topologies are meant to be processed using tools such as FIRE, KIRA or Fermat.}
// Last res
\left\{\text{FCTopology}\left(\text{fctopology1},\left\{\frac{1}{(\text{q2}^2+i \eta )},\frac{1}{(\text{q1}^2+i \eta )},\frac{1}{((\text{q1}+\text{q2})^2+i \eta )},\frac{1}{((p+\text{q1})^2+i \eta )},\frac{1}{((p-\text{q2})^2+i \eta )}\right\},\{\text{q1},\text{q2}\},\{p\},\{\},\{\}\right),\text{FCTopology}\left(\text{fctopology2},\left\{\frac{1}{(\text{q2}^2+i \eta )},\frac{1}{(\text{q1}^2+i \eta )},\frac{1}{((p+\text{q2})^2+i \eta )},\frac{1}{((p-\text{q1})^2+i \eta )}\right\},\{\text{q1},\text{q2}\},\{p\},\{\},\{\}\right),\text{FCTopology}\left(\text{fctopology3},\left\{\frac{1}{(\text{q2}^2+i \eta )},\frac{1}{(\text{q1}^2+i \eta )},\frac{1}{((p-\text{q1})^2+i \eta )},\frac{1}{((p-\text{q1}+\text{q2})^2+i \eta )}\right\},\{\text{q1},\text{q2}\},\{p\},\{\},\{\}\right)\right\}
The amplitude is the written as a linear combination of special
products, where numerators with explicit loop momenta are multiplied by
denominators written as GLI
s
[[1]][[1 ;; 5]] res
\text{FCGV}(\text{GLIProduct})\left(\xi g_s^4 \;\text{q2}^{\text{Lor1}} p^{\text{Lor2}} \;\text{q2}^{\text{Lor2}} \;\text{q1}^{\text{Lor4}} g^{\text{Lor3}\;\text{Lor4}} (\text{q1}+\text{q2})^{\text{Lor1}} (\text{q2}-p)^{\text{Lor3}} f^{\text{Glu1}\;\text{Glu3}\;\text{Glu6}} f^{\text{Glu2}\;\text{Glu4}\;\text{Glu7}} f^{\text{Glu3}\;\text{Glu4}\;\text{Glu5}} f^{\text{Glu5}\;\text{Glu6}\;\text{Glu7}},G^{\text{fctopology1}}(2,1,1,1,1)\right)+\text{FCGV}(\text{GLIProduct})\left(-\frac{\xi g_s^4 \;\text{q1}^{\text{Lor1}} p^{\text{Lor2}} p^{\text{Lor3}} \;\text{q2}^{\text{Lor4}} g^{\text{Lor3}\;\text{Lor4}} (\text{q1}-p)^{\text{Lor1}} (p-\text{q1})^{\text{Lor2}} f^{\text{Glu1}\;\text{Glu6}\;\text{Glu7}} f^{\text{Glu2}\;\text{Glu4}\;\text{Glu5}} f^{\text{Glu3}\;\text{Glu4}\;\text{Glu5}} f^{\text{Glu3}\;\text{Glu6}\;\text{Glu7}}}{p^2},G^{\text{fctopology2}}(1,1,1,2)\right)+\text{FCGV}(\text{GLIProduct})\left(-\frac{\xi g_s^4 \;\text{q1}^{\text{Lor1}} p^{\text{Lor2}} p^{\text{Lor3}} \;\text{q2}^{\text{Lor4}} g^{\text{Lor1}\;\text{Lor2}} (p+\text{q2})^{\text{Lor3}} (-p-\text{q2})^{\text{Lor4}} f^{\text{Glu1}\;\text{Glu6}\;\text{Glu7}} f^{\text{Glu2}\;\text{Glu4}\;\text{Glu5}} f^{\text{Glu3}\;\text{Glu4}\;\text{Glu5}} f^{\text{Glu3}\;\text{Glu6}\;\text{Glu7}}}{p^2},G^{\text{fctopology2}}(1,1,2,1)\right)+\text{FCGV}(\text{GLIProduct})\left(-\frac{\xi ^2 g_s^4 \;\text{q1}^{\text{Lor1}} p^{\text{Lor2}} p^{\text{Lor3}} \;\text{q2}^{\text{Lor4}} (\text{q1}-p)^{\text{Lor1}} (p-\text{q1})^{\text{Lor2}} (p+\text{q2})^{\text{Lor3}} (-p-\text{q2})^{\text{Lor4}} f^{\text{Glu1}\;\text{Glu6}\;\text{Glu7}} f^{\text{Glu2}\;\text{Glu4}\;\text{Glu5}} f^{\text{Glu3}\;\text{Glu4}\;\text{Glu5}} f^{\text{Glu3}\;\text{Glu6}\;\text{Glu7}}}{p^2},G^{\text{fctopology2}}(1,1,2,2)\right)+\text{FCGV}(\text{GLIProduct})\left(-\frac{g_s^4 \;\text{q1}^{\text{Lor1}} p^{\text{Lor2}} p^{\text{Lor3}} \;\text{q2}^{\text{Lor4}} g^{\text{Lor1}\;\text{Lor2}} g^{\text{Lor3}\;\text{Lor4}} f^{\text{Glu1}\;\text{Glu6}\;\text{Glu7}} f^{\text{Glu2}\;\text{Glu4}\;\text{Glu5}} f^{\text{Glu3}\;\text{Glu4}\;\text{Glu5}} f^{\text{Glu3}\;\text{Glu6}\;\text{Glu7}}}{p^2},G^{\text{fctopology2}}(1,1,1,1)\right)
Here we have a set of 5 topologies
= {
topos1 [fctopology1, {SFAD[{{p3, 0}, {0, 1}, 1}], SFAD[{{p2, 0}, {0, 1}, 1}],
FCTopology[{{p1, 0}, {0, 1}, 1}], SFAD[{{p2 + p3, 0}, {0, 1}, 1}], SFAD[{{p2 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 - Q, 0}, {0, 1}, 1}], SFAD[{{p2 + p3 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 + p3 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 + p2 + p3 - Q, 0}, {0, 1}, 1}]}, {p1, p2, p3}, {Q}, {}, {}],
SFAD[fctopology2, {SFAD[{{p3, 0}, {0, 1}, 1}],
FCTopology[{{p2, 0}, {0, 1}, 1}], SFAD[{{p1, 0}, {0, 1}, 1}], SFAD[{{p2 + p3, 0}, {0, 1}, 1}],
SFAD[{{p2 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 - Q, 0}, {0, 1}, 1}],
SFAD[{{p2 + p3 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 + p2 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 + p2 + p3 - Q, 0}, {0, 1}, 1}]}, {p1, p2, p3}, {Q}, {}, {}],
SFAD[fctopology3, {SFAD[{{p3, 0}, {0, 1}, 1}],
FCTopology[{{p2, 0}, {0, 1}, 1}], SFAD[{{p1, 0}, {0, 1}, 1}],
SFAD[{{p2 + p3, 0}, {0, 1}, 1}], SFAD[{{p1 + p3, 0}, {0, 1}, 1}],
SFAD[{{p2 - Q, 0}, {0, 1}, 1}], SFAD[{{p2 + p3 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 + p3 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 + p2 + p3 - Q, 0}, {0, 1}, 1}]},
SFAD{p1, p2, p3}, {Q}, {}, {}],
[fctopology4, {SFAD[{{p3, 0}, {0, 1}, 1}],
FCTopology[{{p2, 0}, {0, 1}, 1}], SFAD[{{p1, 0}, {0, 1}, 1}],
SFAD[{{p2 + p3, 0}, {0, 1}, 1}], SFAD[{{p1 + p3, 0}, {0, 1}, 1}],
SFAD[{{p2 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 + p3 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 + p2 + p3 - Q, 0}, {0, 1}, 1}]},
SFAD{p1, p2, p3}, {Q}, {}, {}],
[fctopology5, {SFAD[{{p3, 0}, {0, 1}, 1}],
FCTopology[{{p2, 0}, {0, 1}, 1}], SFAD[{{p1, 0}, {0, 1}, 1}],
SFAD[{{p1 + p3, 0}, {0, 1}, 1}], SFAD[{{p2 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 + p3 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 + p2 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 + p2 + p3 - Q, 0}, {0, 1}, 1}]},
SFAD{p1, p2, p3}, {Q}, {}, {}]};
where 3 of them can be mapped to the other 2
= FCLoopFindTopologyMappings[topos1]; mappings1
\text{FCLoopFindTopologyMappings: }\;\text{Found }3\text{ mapping relations }
\text{FCLoopFindTopologyMappings: }\;\text{Final number of independent topologies: }2
[[1]] mappings1
\left( \begin{array}{ccc} \;\text{FCTopology}\left(\text{fctopology3},\left\{\frac{1}{(\text{p3}^2+i \eta )},\frac{1}{(\text{p2}^2+i \eta )},\frac{1}{(\text{p1}^2+i \eta )},\frac{1}{((\text{p2}+\text{p3})^2+i \eta )},\frac{1}{((\text{p1}+\text{p3})^2+i \eta )},\frac{1}{((\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p2}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}+\text{p3}-Q)^2+i \eta )}\right\},\{\text{p1},\text{p2},\text{p3}\},\{Q\},\{\},\{\}\right) & \{\text{p1}\to -\text{p1}-\text{p3}+Q,\text{p2}\to -\text{p2}-\text{p3}+Q,\text{p3}\to \;\text{p3}\} & G^{\text{fctopology3}}(\text{n1$\_$},\text{n7$\_$},\text{n8$\_$},\text{n5$\_$},\text{n6$\_$},\text{n4$\_$},\text{n2$\_$},\text{n3$\_$},\text{n9$\_$}):\to G^{\text{fctopology1}}(\text{n1},\text{n2},\text{n3},\text{n4},\text{n5},\text{n6},\text{n7},\text{n8},\text{n9}) \\ \;\text{FCTopology}\left(\text{fctopology4},\left\{\frac{1}{(\text{p3}^2+i \eta )},\frac{1}{(\text{p2}^2+i \eta )},\frac{1}{(\text{p1}^2+i \eta )},\frac{1}{((\text{p2}+\text{p3})^2+i \eta )},\frac{1}{((\text{p1}+\text{p3})^2+i \eta )},\frac{1}{((\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p1}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}+\text{p3}-Q)^2+i \eta )}\right\},\{\text{p1},\text{p2},\text{p3}\},\{Q\},\{\},\{\}\right) & \{\text{p1}\to Q-\text{p2},\text{p2}\to Q-\text{p1},\text{p3}\to -\text{p3}\} & G^{\text{fctopology4}}(\text{n1$\_$},\text{n6$\_$},\text{n5$\_$},\text{n8$\_$},\text{n7$\_$},\text{n3$\_$},\text{n2$\_$},\text{n4$\_$},\text{n9$\_$}):\to G^{\text{fctopology1}}(\text{n1},\text{n2},\text{n3},\text{n4},\text{n5},\text{n6},\text{n7},\text{n8},\text{n9}) \\ \;\text{FCTopology}\left(\text{fctopology5},\left\{\frac{1}{(\text{p3}^2+i \eta )},\frac{1}{(\text{p2}^2+i \eta )},\frac{1}{(\text{p1}^2+i \eta )},\frac{1}{((\text{p1}+\text{p3})^2+i \eta )},\frac{1}{((\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p1}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}+\text{p3}-Q)^2+i \eta )}\right\},\{\text{p1},\text{p2},\text{p3}\},\{Q\},\{\},\{\}\right) & \{\text{p1}\to \;\text{p2},\text{p2}\to \;\text{p1},\text{p3}\to \;\text{p3}\} & G^{\text{fctopology5}}(\text{n1$\_$},\text{n3$\_$},\text{n2$\_$},\text{n4$\_$},\text{n6$\_$},\text{n5$\_$},\text{n7$\_$},\text{n8$\_$},\text{n9$\_$}):\to G^{\text{fctopology2}}(\text{n1},\text{n2},\text{n3},\text{n4},\text{n5},\text{n6},\text{n7},\text{n8},\text{n9}) \\ \end{array} \right)
And these are the final topologies
[[2]] mappings1
\left\{\text{FCTopology}\left(\text{fctopology1},\left\{\frac{1}{(\text{p3}^2+i \eta )},\frac{1}{(\text{p2}^2+i \eta )},\frac{1}{(\text{p1}^2+i \eta )},\frac{1}{((\text{p2}+\text{p3})^2+i \eta )},\frac{1}{((\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p1}-Q)^2+i \eta )},\frac{1}{((\text{p2}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}+\text{p3}-Q)^2+i \eta )}\right\},\{\text{p1},\text{p2},\text{p3}\},\{Q\},\{\},\{\}\right),\text{FCTopology}\left(\text{fctopology2},\left\{\frac{1}{(\text{p3}^2+i \eta )},\frac{1}{(\text{p2}^2+i \eta )},\frac{1}{(\text{p1}^2+i \eta )},\frac{1}{((\text{p2}+\text{p3})^2+i \eta )},\frac{1}{((\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p1}-Q)^2+i \eta )},\frac{1}{((\text{p2}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}+\text{p3}-Q)^2+i \eta )}\right\},\{\text{p1},\text{p2},\text{p3}\},\{Q\},\{\},\{\}\right)\right\}
Tensor reduction for topologies that have already been processed with
FCLoopFindTopologies
can be done using
FCLoopTensorReduce
= FCTopology[prop1l, {SFAD[{q, m^2}, {q - p, m^2}]}, {q}, {p}, {}, {}] topo2
\text{FCTopology}\left(\text{prop1l},\left\{\frac{1}{(q^2-m^2+i \eta ).((q-p)^2-m^2+i \eta )}\right\},\{q\},\{p\},\{\},\{\}\right)
= gliProduct[GSD[q] . GAD[\[Mu]] . GSD[q], GLI[prop1l, {1, 2}]] amp2
\text{gliProduct}\left((\gamma \cdot q).\gamma ^{\mu }.(\gamma \cdot q),G^{\text{prop1l}}(1,2)\right)
= FCLoopTensorReduce[amp2, {topo2}, Head -> gliProduct] amp2Red
\text{gliProduct}\left(-\frac{2 D p^{\mu } \gamma \cdot p (p\cdot q)^2-2 p^2 \gamma ^{\mu } (p\cdot q)^2-D p^4 q^2 \gamma ^{\mu }+3 p^4 q^2 \gamma ^{\mu }-2 p^2 q^2 p^{\mu } \gamma \cdot p}{(1-D) p^4},G^{\text{prop1l}}(1,2)\right)
This is a trial expression representing some loop amplitude that has
already been processed using FCFindTopologies
= gliProduct[cc6*SPD[p1, p1], GLI[fctopology1, {1, 1, 2, 1, 1, 1, 1, 1, 1}]] +
ex [cc2*SPD[p1, p2], GLI[fctopology2, {1, 1, 1, 1, 1, 1, 1, 1, 1}]] +
gliProduct[cc4*SPD[p1, p2], GLI[fctopology4, {1, 1, 1, 1, 1, 1, 1, 1, 1}]] +
gliProduct[cc1*SPD[p1, Q], GLI[fctopology1, {1, 1, 1, 1, 1, 1, 1, 1, 1}]] +
gliProduct[cc3*SPD[p2, p2], GLI[fctopology3, {1, 1, 1, 1, 1, 1, 1, 1, 1}]] +
gliProduct[cc5*SPD[p2, Q], GLI[fctopology5, {1, 1, 1, 1, 1, 1, 1, 1, 1}]] gliProduct
\text{gliProduct}\left(\text{cc1} (\text{p1}\cdot Q),G^{\text{fctopology1}}(1,1,1,1,1,1,1,1,1)\right)+\text{gliProduct}\left(\text{cc2} (\text{p1}\cdot \;\text{p2}),G^{\text{fctopology2}}(1,1,1,1,1,1,1,1,1)\right)+\text{gliProduct}\left(\text{cc3} \;\text{p2}^2,G^{\text{fctopology3}}(1,1,1,1,1,1,1,1,1)\right)+\text{gliProduct}\left(\text{cc4} (\text{p1}\cdot \;\text{p2}),G^{\text{fctopology4}}(1,1,1,1,1,1,1,1,1)\right)+\text{gliProduct}\left(\text{cc5} (\text{p2}\cdot Q),G^{\text{fctopology5}}(1,1,1,1,1,1,1,1,1)\right)+\text{gliProduct}\left(\text{cc6} \;\text{p1}^2,G^{\text{fctopology1}}(1,1,2,1,1,1,1,1,1)\right)
These mapping rules describe how the 3 topologies “fctopology3”, “fctopology4” and “fctopology5” are mapped to the topologies “fctopology1” and “fctopology2”
= {
mappings {FCTopology[fctopology3, {SFAD[{{p3, 0}, {0, 1}, 1}], SFAD[{{p2, 0}, {0, 1}, 1}],
[{{p1, 0}, {0, 1}, 1}], SFAD[{{p2 + p3, 0}, {0, 1}, 1}], SFAD[{{p1 + p3, 0}, {0, 1}, 1}],
SFAD[{{p2 - Q, 0}, {0, 1}, 1}], SFAD[{{p2 + p3 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 + p3 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 + p2 + p3 - Q, 0}, {0, 1}, 1}]}, {p1, p2, p3}, {Q}, {}, {}], {p1 -> -p1 - p3 + Q, p2 ->
SFAD-p2 - p3 + Q, p3 -> p3},
[fctopology3, {n1_, n7_, n8_, n5_, n6_, n4_, n2_, n3_, n9_}] :>
GLI[fctopology1, {n1, n2, n3, n4, n5, n6, n7, n8, n9}]},
GLI
{FCTopology[fctopology4, {SFAD[{{p3, 0}, {0, 1}, 1}], SFAD[{{p2, 0}, {0, 1}, 1}], SFAD[{{p1, 0},
{0, 1}, 1}],
[{{p2 + p3, 0}, {0, 1}, 1}], SFAD[{{p1 + p3, 0}, {0, 1}, 1}], SFAD[{{p2 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 + p3 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 + p2 + p3 - Q, 0}, {0, 1}, 1}]}, {p1, p2, p3}, {Q}, {}, {}],
SFAD{p1 -> -p2 + Q, p2 -> -p1 + Q, p3 -> -p3},
[fctopology4, {n1_, n6_, n5_, n8_, n7_, n3_, n2_, n4_, n9_}] :>
GLI[fctopology1, {n1, n2, n3, n4, n5, n6, n7, n8, n9}]},
GLI
{FCTopology[fctopology5, {SFAD[{{p3, 0}, {0, 1}, 1}], SFAD[{{p2, 0}, {0, 1}, 1}], SFAD[{{p1, 0},
{0, 1}, 1}],
[{{p1 + p3, 0}, {0, 1}, 1}], SFAD[{{p2 - Q, 0}, {0, 1}, 1}],SFAD[{{p1 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 + p3 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 + p2 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 + p2 + p3 - Q, 0}, {0, 1}, 1}]}, {p1, p2, p3}, {Q}, {},
SFAD{}], {p1 -> p2, p2 -> p1, p3 -> p3},
[fctopology5, {n1_, n3_, n2_, n4_, n6_, n5_, n7_, n8_, n9_}] :>
GLI[fctopology2, {n1, n2, n3, n4, n5, n6, n7, n8, n9}]}} GLI
\left( \begin{array}{ccc} \;\text{FCTopology}\left(\text{fctopology3},\left\{\frac{1}{(\text{p3}^2+i \eta )},\frac{1}{(\text{p2}^2+i \eta )},\frac{1}{(\text{p1}^2+i \eta )},\frac{1}{((\text{p2}+\text{p3})^2+i \eta )},\frac{1}{((\text{p1}+\text{p3})^2+i \eta )},\frac{1}{((\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p2}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}+\text{p3}-Q)^2+i \eta )}\right\},\{\text{p1},\text{p2},\text{p3}\},\{Q\},\{\},\{\}\right) & \{\text{p1}\to -\text{p1}-\text{p3}+Q,\text{p2}\to -\text{p2}-\text{p3}+Q,\text{p3}\to \;\text{p3}\} & G^{\text{fctopology3}}(\text{n1$\_$},\text{n7$\_$},\text{n8$\_$},\text{n5$\_$},\text{n6$\_$},\text{n4$\_$},\text{n2$\_$},\text{n3$\_$},\text{n9$\_$}):\to G^{\text{fctopology1}}(\text{n1},\text{n2},\text{n3},\text{n4},\text{n5},\text{n6},\text{n7},\text{n8},\text{n9}) \\ \;\text{FCTopology}\left(\text{fctopology4},\left\{\frac{1}{(\text{p3}^2+i \eta )},\frac{1}{(\text{p2}^2+i \eta )},\frac{1}{(\text{p1}^2+i \eta )},\frac{1}{((\text{p2}+\text{p3})^2+i \eta )},\frac{1}{((\text{p1}+\text{p3})^2+i \eta )},\frac{1}{((\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p1}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}+\text{p3}-Q)^2+i \eta )}\right\},\{\text{p1},\text{p2},\text{p3}\},\{Q\},\{\},\{\}\right) & \{\text{p1}\to Q-\text{p2},\text{p2}\to Q-\text{p1},\text{p3}\to -\text{p3}\} & G^{\text{fctopology4}}(\text{n1$\_$},\text{n6$\_$},\text{n5$\_$},\text{n8$\_$},\text{n7$\_$},\text{n3$\_$},\text{n2$\_$},\text{n4$\_$},\text{n9$\_$}):\to G^{\text{fctopology1}}(\text{n1},\text{n2},\text{n3},\text{n4},\text{n5},\text{n6},\text{n7},\text{n8},\text{n9}) \\ \;\text{FCTopology}\left(\text{fctopology5},\left\{\frac{1}{(\text{p3}^2+i \eta )},\frac{1}{(\text{p2}^2+i \eta )},\frac{1}{(\text{p1}^2+i \eta )},\frac{1}{((\text{p1}+\text{p3})^2+i \eta )},\frac{1}{((\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p1}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}+\text{p3}-Q)^2+i \eta )}\right\},\{\text{p1},\text{p2},\text{p3}\},\{Q\},\{\},\{\}\right) & \{\text{p1}\to \;\text{p2},\text{p2}\to \;\text{p1},\text{p3}\to \;\text{p3}\} & G^{\text{fctopology5}}(\text{n1$\_$},\text{n3$\_$},\text{n2$\_$},\text{n4$\_$},\text{n6$\_$},\text{n5$\_$},\text{n7$\_$},\text{n8$\_$},\text{n9$\_$}):\to G^{\text{fctopology2}}(\text{n1},\text{n2},\text{n3},\text{n4},\text{n5},\text{n6},\text{n7},\text{n8},\text{n9}) \\ \end{array} \right)
These are the two topologies onto which everything is mapped
= {
finalTopos [fctopology1, {SFAD[{{p3, 0}, {0, 1}, 1}], SFAD[{{p2, 0}, {0, 1}, 1}],
FCTopology[{{p1, 0}, {0, 1}, 1}], SFAD[{{p2 + p3, 0}, {0, 1}, 1}], SFAD[{{p2 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 - Q, 0}, {0, 1}, 1}], SFAD[{{p2 + p3 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 + p3 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 + p2 + p3 - Q, 0}, {0, 1}, 1}]}, {p1, p2, p3}, {Q}, {}, {}],
SFAD[fctopology2, {SFAD[{{p3, 0}, {0, 1}, 1}], SFAD[{{p2, 0}, {0, 1}, 1}],
FCTopology[{{p1, 0}, {0, 1}, 1}], SFAD[{{p2 + p3, 0}, {0, 1}, 1}], SFAD[{{p2 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 - Q, 0}, {0, 1}, 1}], SFAD[{{p2 + p3 - Q, 0}, {0, 1}, 1}], SFAD[{{p1 + p2 - Q, 0}, {0, 1}, 1}],
SFAD[{{p1 + p2 + p3 - Q, 0}, {0, 1}, 1}]}, {p1, p2, p3}, {Q}, {}, {}]} SFAD
\left\{\text{FCTopology}\left(\text{fctopology1},\left\{\frac{1}{(\text{p3}^2+i \eta )},\frac{1}{(\text{p2}^2+i \eta )},\frac{1}{(\text{p1}^2+i \eta )},\frac{1}{((\text{p2}+\text{p3})^2+i \eta )},\frac{1}{((\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p1}-Q)^2+i \eta )},\frac{1}{((\text{p2}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}+\text{p3}-Q)^2+i \eta )}\right\},\{\text{p1},\text{p2},\text{p3}\},\{Q\},\{\},\{\}\right),\text{FCTopology}\left(\text{fctopology2},\left\{\frac{1}{(\text{p3}^2+i \eta )},\frac{1}{(\text{p2}^2+i \eta )},\frac{1}{(\text{p1}^2+i \eta )},\frac{1}{((\text{p2}+\text{p3})^2+i \eta )},\frac{1}{((\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p1}-Q)^2+i \eta )},\frac{1}{((\text{p2}+\text{p3}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}-Q)^2+i \eta )},\frac{1}{((\text{p1}+\text{p2}+\text{p3}-Q)^2+i \eta )}\right\},\{\text{p1},\text{p2},\text{p3}\},\{Q\},\{\},\{\}\right)\right\}
FCLoopApplyTopologyMappings
applies the given mappings
to the expression creating an output that is ready to be processed
further
[ex, {mappings, finalTopos}, Head -> gliProduct] FCLoopApplyTopologyMappings
\frac{1}{2} G^{\text{fctopology1}}(1,1,1,1,1,1,1,1,1) \left(\text{cc1} Q^2+\text{cc4} Q^2+2 \;\text{cc6}\right)+\frac{1}{2} (\text{cc1}-\text{cc4}) G^{\text{fctopology1}}(1,1,0,1,1,1,1,1,1)-\frac{1}{2} (\text{cc1}-\text{cc4}) G^{\text{fctopology1}}(1,1,1,1,1,0,1,1,1)+\frac{1}{2} Q^2 (\text{cc2}+\text{cc5}) G^{\text{fctopology2}}(1,1,1,1,1,1,1,1,1)-\frac{1}{2} (\text{cc2}+\text{cc5}) G^{\text{fctopology2}}(1,1,1,1,1,0,1,1,1)-\frac{1}{2} \;\text{cc2} G^{\text{fctopology2}}(1,1,1,1,0,1,1,1,1)+\frac{1}{2} \;\text{cc2} G^{\text{fctopology2}}(1,1,1,1,1,1,1,0,1)+\text{cc3} G^{\text{fctopology1}}(1,1,1,1,1,1,0,1,1)+\frac{1}{2} \;\text{cc4} G^{\text{fctopology1}}(0,1,1,1,1,1,1,1,1)-\frac{1}{2} \;\text{cc4} G^{\text{fctopology1}}(1,1,1,0,1,1,1,1,1)-\frac{1}{2} \;\text{cc4} G^{\text{fctopology1}}(1,1,1,1,1,1,1,0,1)+\frac{1}{2} \;\text{cc4} G^{\text{fctopology1}}(1,1,1,1,1,1,1,1,0)+\frac{1}{2} \;\text{cc5} G^{\text{fctopology2}}(1,1,0,1,1,1,1,1,1)
The resulting GLI
s in the expression are loop integrals
that can be IBP-reduced
To find one-to-one mappings between loop integrals use
FCLoopFindIntegralMappings
[]
FCClearScalarProductsClearAll[topo1, topo2]
= {FCTopology[topo1, {SFAD[{p1, m^2}], SFAD[{p2, m^2}]}, {p1, p2}, {}, {}, {}],
topos [topo2, {SFAD[{p3, m^2}], SFAD[{p4, m^2}]}, {p3, p4}, {}, {}, {}]} FCTopology
\left\{\text{FCTopology}\left(\text{topo1},\left\{\frac{1}{(\text{p1}^2-m^2+i \eta )},\frac{1}{(\text{p2}^2-m^2+i \eta )}\right\},\{\text{p1},\text{p2}\},\{\},\{\},\{\}\right),\text{FCTopology}\left(\text{topo2},\left\{\frac{1}{(\text{p3}^2-m^2+i \eta )},\frac{1}{(\text{p4}^2-m^2+i \eta )}\right\},\{\text{p3},\text{p4}\},\{\},\{\},\{\}\right)\right\}
= {GLI[topo1, {1, 1}], GLI[topo1, {1, 2}], GLI[topo1, {2, 1}],
glis [topo2, {1, 1}], GLI[topo2, {2, 2}]} GLI
\left\{G^{\text{topo1}}(1,1),G^{\text{topo1}}(1,2),G^{\text{topo1}}(2,1),G^{\text{topo2}}(1,1),G^{\text{topo2}}(2,2)\right\}
= FCLoopFindIntegralMappings[glis, topos] mappings
\left\{\left\{G^{\text{topo2}}(1,1)\to G^{\text{topo1}}(1,1),G^{\text{topo1}}(2,1)\to G^{\text{topo1}}(1,2)\right\},\left\{G^{\text{topo1}}(1,1),G^{\text{topo1}}(1,2),G^{\text{topo2}}(2,2)\right\}\right\}