We present an algorithm to find the relevant regions to expand a given Feynman integral in a given limit of momenta and masses. It is based on the strategy of expansion by regions in the alpha-representation. The program uses a geometric approach to the alpha-representation and an open-source package QHull to find convex hulls.

There are several versions of asy:

- asy.m - the original version developed together with Alexey Pak and described in arXiv:1011.4863.
- asy2.m - the new version developed together with Bernd Jantzen and Vladimir Smirnov and described in arXiv:1206.0546.
- asy2.1.m - updated version that works with non-substituted kinematic invariants.

Once QHull is installed, the program can be downloaded and loaded as << asy.m (or << asy2.m or << asy2.1.m, depending on the file name). You can also download some examples. The main function is AlphaRepExpand[ks,ds,cs,hi], where ks is the list of loop momenta (e.g., "{k}"), ds is the list of denominators (e.g., "{k^2 + m^2, (k+p)^2 + m^2}"), cs is the list of constraints (e.g., "{p^2 -> M^2}") and hi is the list of scalings of kinematic invariants with respect to the small parameter x (e.g., "{M -> x^0, m -> x^1}").

The output is a list of vectors specifying the scales of the denominator
factors. For the example above, the output would be
{{0,2},{0,0},{0,-2}}. The notation for e.g. the first entry
means: D_{1} ~ x^{2+A}, D_{2} ~ x^{0+A} (in the momentum
representation), or alternatively x_{1} ~ x^{-2+A}, x_{2} ~ x^{A}
(in the alpha-representation).

The second version has some new features related to the preresolution - dealing with terms of different sign before revealing the regions. This option is turned on with PreResolve->True.

The version 2.1 has an option AsySigns, that can be used to specify signs of non-substituted kinematic invariants. Example: AlphaRepExpand[{k}, {k^2 - m1^2, (k - q)^2 - m2^2}, {q^2 -> (m1 + m2)^2 - 4*y}, {y -> x}, PreResolve -> True, AsySigns -> {{m1, 1}, {m2, 1}}]