

def _check_antecedents_1(g, x, helper=False):
    '\n    Return a condition under which the mellin transform of g exists.\n    Any power of x has already been absorbed into the G function,\n    so this is just int_0^\\infty g dx.\n\n    See [L, section 5.6.1]. (Note that s=1.)\n\n    If ``helper`` is True, only check if the MT exists at infinity, i.e. if\n    int_1^\\infty g dx exists.\n    '
    from sympy import Eq, Not, ceiling, Ne, re, unbranched_argument as arg
    delta = g.delta
    (eta, _) = _get_coeff_exp(g.argument, x)
    (m, n, p, q) = S([len(g.bm), len(g.an), len(g.ap), len(g.bq)])
    xi = ((m + n) - p)
    if (p > q):

        def tr(l):
            return [(1 - x) for x in l]
        return _check_antecedents_1(meijerg(tr(g.bm), tr(g.bother), tr(g.an), tr(g.aother), (x / eta)), x)
    tmp = []
    for b in g.bm:
        tmp += [((- re(b)) < 1)]
    for a in g.an:
        tmp += [(1 < (1 - re(a)))]
    cond_3 = And(*tmp)
    for b in g.bother:
        tmp += [((- re(b)) < 1)]
    for a in g.aother:
        tmp += [(1 < (1 - re(a)))]
    cond_3_star = And(*tmp)
    cond_4 = (((- re(g.nu)) + (((q + 1) - p) / 2)) > (q - p))

    def debug(*msg):
        _debug(*msg)
    debug('Checking antecedents for 1 function:')
    debug(('  delta=%s, eta=%s, m=%s, n=%s, p=%s, q=%s' % (delta, eta, m, n, p, q)))
    debug(('  ap = %s, %s' % (list(g.an), list(g.aother))))
    debug(('  bq = %s, %s' % (list(g.bm), list(g.bother))))
    debug(('  cond_3=%s, cond_3*=%s, cond_4=%s' % (cond_3, cond_3_star, cond_4)))
    conds = []
    case1 = []
    tmp1 = [(1 <= n), (p < q), (1 <= m)]
    tmp2 = [(1 <= p), (1 <= m), Eq(q, (p + 1)), Not(And(Eq(n, 0), Eq(m, (p + 1))))]
    tmp3 = [(1 <= p), Eq(q, p)]
    for k in range((ceiling((delta / 2)) + 1)):
        tmp3 += [Ne(abs(arg(eta)), ((delta - (2 * k)) * pi))]
    tmp = [(delta > 0), (abs(arg(eta)) < (delta * pi))]
    extra = [Ne(eta, 0), cond_3]
    if helper:
        extra = []
    for t in [tmp1, tmp2, tmp3]:
        case1 += [And(*((t + tmp) + extra))]
    conds += case1
    debug('  case 1:', case1)
    extra = [cond_3]
    if helper:
        extra = []
    case2 = [And(Eq(n, 0), ((p + 1) <= m), (m <= q), (abs(arg(eta)) < (delta * pi)), *extra)]
    conds += case2
    debug('  case 2:', case2)
    extra = [cond_3, cond_4]
    if helper:
        extra = []
    case3 = [And((p < q), (1 <= m), (delta > 0), Eq(abs(arg(eta)), (delta * pi)), *extra)]
    case3 += [And((p <= (q - 2)), Eq(delta, 0), Eq(abs(arg(eta)), 0), *extra)]
    conds += case3
    debug('  case 3:', case3)
    case_extra = []
    case_extra += [Eq(p, q), Eq(delta, 0), Eq(arg(eta), 0), Ne(eta, 0)]
    if (not helper):
        case_extra += [cond_3]
    s = []
    for (a, b) in zip(g.ap, g.bq):
        s += [(b - a)]
    case_extra += [(re(Add(*s)) < 0)]
    case_extra = And(*case_extra)
    conds += [case_extra]
    debug('  extra case:', [case_extra])
    case_extra_2 = [And((delta > 0), (abs(arg(eta)) < (delta * pi)))]
    if (not helper):
        case_extra_2 += [cond_3]
    case_extra_2 = And(*case_extra_2)
    conds += [case_extra_2]
    debug('  second extra case:', [case_extra_2])
    return Or(*cond_3)

dataset/ETHPy150Open sympy/sympy/sympy/integrals/meijerint.py _check_antecedents_1/VarMisuse@1092/1526 `conds`->`cond_3`