Esempio n. 1
0
def test_diofantissue_75():
    assert limitinf(abs(log(x)), x) == oo
    assert limitinf(tan(abs(pi / 2 + 1 / x)) / acosh(pi / 2 + 1 / x), x) == -oo
    assert limitinf(tan(abs(pi / 2 - 1 / x)) / acosh(pi / 2 - 1 / x), x) == +oo

    assert limitinf(abs(log(2 + 1 / x)) - log(2 + 1 / x), x) == 0
    assert limitinf(abs(log(2 - 1 / x)) - log(2 - 1 / x), x) == 0
Esempio n. 2
0
def test_gruntz_eval_special_slow():
    assert limitinf(
        gamma(x + 1) / sqrt(2 * pi) - exp(-x) *
        (x**(x + Rational(1, 2)) + x**(x - Rational(1, 2)) / 12), x) == oo
    assert limitinf(exp(exp(exp(digamma(digamma(digamma(x)))))) / x, x) == 0
    assert limitinf(exp(gamma(x - exp(-x)) * exp(1 / x)) - exp(gamma(x)),
                    x) == oo
    assert limitinf((Ei(x - exp(-exp(x))) - Ei(x)) * exp(-x) * exp(exp(x)) * x,
                    x) == -1
    assert limitinf(exp((log(2) + 1) * x) * (zeta(x + exp(-x)) - zeta(x)),
                    x) == -log(2)
Esempio n. 3
0
def test_gruntz_other():
    assert limitinf(sqrt(log(x + 1)) - sqrt(log(x)), x) == 0  # p12, 2.5
    y = Symbol('y')
    assert limitinf(((1 + 1 / x)**y - 1) * x, x) == y  # p12, 2.6
    n = Symbol('n', integer=True)
    assert limitinf(x**n / exp(x), x) == 0  # p14, 2.9
    assert limitinf((1 + 1 / x) * x - 1 / log(1 + 1 / x),
                    x) == Rational(1, 2)  # p15, 2.10
    m = Symbol('m', integer=True)
    assert limitinf((root(1 + 1 / x, n) - 1) / (root(1 + 1 / x, m) - 1),
                    x) == m / n  # p13, 2.7
Esempio n. 4
0
def test_sympyissue_5172():
    n = Symbol('n', real=True, positive=True)
    r = Symbol('r', positive=True)
    c = Symbol('c')
    p = Symbol('p', positive=True)
    m = Symbol('m', negative=True)
    expr = ((2 * n * (n - r + 1) / (n + r * (n - r + 1)))**c + (r - 1) *
            (n * (n - r + 2) / (n + r * (n - r + 1)))**c - n) / (n**c - n)
    expr = expr.subs({c: c + 1})
    assert limitinf(expr.subs({c: m}), n) == 1
    assert limitinf(expr.subs({c: p}), n).simplify() == \
        (2**(p + 1) + r - 1)/(r + 1)**(p + 1)
Esempio n. 5
0
def test_diofantissue_74():
    assert limitinf(sign(log(1 + 1 / x)), x) == +1
    assert limitinf(sign(log(1 - 1 / x)), x) == -1
    assert limitinf(sign(sin(+1 / x)), x) == +1
    assert limitinf(sign(sin(-1 / x)), x) == -1
    assert limitinf(sign(tan(+1 / x)), x) == +1
    assert limitinf(sign(tan(-1 / x)), x) == -1
    assert limitinf(sign(cos(pi / 2 + 1 / x)), x) == -1
    assert limitinf(sign(cos(pi / 2 - 1 / x)), x) == +1
Esempio n. 6
0
def test_sympyissue_4190():
    assert limitinf(x - gamma(1 / x), x) == EulerGamma
Esempio n. 7
0
def test_sympyissue_6843():
    n = Symbol('n', integer=True, positive=True)
    r = (n + 1) * (1 + 1 / x)**(n + 1) / (
        (1 + 1 / x)**(n + 1) - 1) - (1 + 1 / x) * x
    assert limitinf(r, x).simplify() == n / 2
Esempio n. 8
0
def test_sympyissue_8241():
    e = x / log(x)**(log(x) / (m * log(log(x))))
    pytest.raises(NotImplementedError, lambda: limitinf(e, x))
    assert isinstance(e.limit(x, oo), Limit)
Esempio n. 9
0
def test_sympyissue_7096():
    assert limitinf((-1 / x)**-pi, x) == oo * sign((-1)**(-pi))
Esempio n. 10
0
def test_intractable():
    assert limitinf(1 / gamma(x), x) == 0
    assert limitinf(1 / loggamma(x), x) == 0
    assert limitinf(gamma(x) / loggamma(x), x) == oo
    assert limitinf(exp(gamma(x)) / gamma(x), x) == oo
    assert limitinf(gamma(3 + 1 / x), x) == 2
    assert limitinf(gamma(Rational(1, 7) + 1 / x), x) == gamma(Rational(1, 7))
    assert limitinf(log(x**x) / log(gamma(x)), x) == 1
    assert limitinf(log(gamma(gamma(x))) / exp(x), x) == oo
    assert limitinf(acosh(1 + 1 / x) * sqrt(x), x) == sqrt(2)

    # issue sympy/sympy#10804
    assert limitinf(
        2 * airyai(x) * root(x, 4) * exp(2 * x**Rational(3, 2) / 3),
        x) == 1 / sqrt(pi)
    assert limitinf(
        airybi(x) * root(x, 4) * exp(-2 * x**Rational(3, 2) / 3),
        x) == 1 / sqrt(pi)
    assert limitinf(airyai(1 / x), x) == (3**Rational(5, 6) *
                                          gamma(Rational(1, 3)) / (6 * pi))
    assert limitinf(airybi(1 / x),
                    x) == cbrt(3) * gamma(Rational(1, 3)) / (2 * pi)
    assert limitinf(airyai(2 + 1 / x), x) == airyai(2)
    assert limitinf(airybi(2 + 1 / x), x) == airybi(2)
Esempio n. 11
0
def test_sympyissue_4814():
    assert limitinf((x + 1)**(1 / log(x + 1)), x) == E
Esempio n. 12
0
def test_I():
    y = Symbol('y')
    assert limitinf(I * x, x) == I * oo
    assert limitinf(y * I * x, x) == sign(y) * I * oo
    assert limitinf(y * 3 * I * x, x) == sign(y) * I * oo
    assert limitinf(y * 3 * sin(I) * x, x).simplify() == sign(y) * I * oo
Esempio n. 13
0
def test_limit():
    assert limitinf(x, x) == oo
    assert limitinf(-x, x) == -oo
    assert limitinf(-x, x) == -oo
    assert limitinf((-x)**2, x) == oo
    assert limitinf(-x**2, x) == -oo
    assert limitinf((1 / x) * log(1 / x), x) == 0  # Gruntz: p15, 2.11
    assert limitinf(1 / x, x) == 0
    assert limitinf(exp(x), x) == oo
    assert limitinf(-exp(x), x) == -oo
    assert limitinf(exp(x) / x, x) == oo
    assert limitinf(1 / x - exp(-x), x) == 0
    assert limitinf(x + 1 / x, x) == oo

    assert limitinf((1 / x)**(1 / x), x) == 1  # Gruntz: p15, 2.11
    assert limitinf((exp(1 / x) - 1) * x, x) == 1
    assert limitinf(1 + 1 / x, x) == 1
    assert limitinf(-exp(1 / x), x) == -1
    assert limitinf(x + exp(-x), x) == oo
    assert limitinf(x + exp(-x**2), x) == oo
    assert limitinf(x + exp(-exp(x)), x) == oo
    assert limitinf(13 + 1 / x - exp(-x), x) == 13

    a = Symbol('a')
    assert limitinf(x - log(1 + exp(x)), x) == 0
    assert limitinf(x - log(a + exp(x)), x) == 0
    assert limitinf(exp(x) / (1 + exp(x)), x) == 1
    assert limitinf(exp(x) / (a + exp(x)), x) == 1

    assert limitinf((3**x + 5**x)**(1 / x), x) == 5  # issue sympy/sympy#3463

    assert limitinf(Ei(x + exp(-x)) * exp(-x) * x, x) == 1

    assert limitinf(1 / li(x), x) == 0
    assert limitinf(1 / Li(x), x) == 0

    # issue diofant/diofant#56
    assert limitinf((log(E + 1 / x) - 1)**(1 - sqrt(E + 1 / x)), x) == oo

    # issue sympy/sympy#9471
    assert limitinf((((27**(log(x, 3)))) / x**3), x) == 1
    assert limitinf((((27**(log(x, 3) + 1))) / x**3), x) == 27

    # issue sympy/sympy#9449
    y = Symbol('y')
    assert limitinf(x * (abs(1 / x + y) - abs(y - 1 / x)) / 2, x) == sign(y)

    # issue sympy/sympy#8481
    assert limitinf(m**x * exp(-m) / factorial(x), x) == 0

    # issue sympy/sympy#4187
    assert limitinf(exp(1 / x) * log(1 / x) - Ei(1 / x), x) == -EulerGamma
    assert limitinf(exp(x) * log(x) - Ei(x), x) == oo

    # issue sympy/sympy#10382
    assert limitinf(fibonacci(x + 1) / fibonacci(x), x) == GoldenRatio

    assert limitinf(zeta(x), x) == 1
    assert limitinf(zeta(m) * zeta(x), x) == zeta(m)
Esempio n. 14
0
def test_gruntz_evaluation():
    # Gruntz' thesis pp. 122 to 123
    # 8.1
    assert limitinf(exp(x) * (exp(1 / x - exp(-x)) - exp(1 / x)), x) == -1
    # 8.2
    assert limitinf(
        exp(x) *
        (exp(1 / x + exp(-x) + exp(-x**2)) - exp(1 / x - exp(-exp(x)))),
        x) == 1
    # 8.3
    assert limitinf(exp(exp(x - exp(-x)) / (1 - 1 / x)) - exp(exp(x)), x) == oo
    # 8.4
    assert limitinf(
        exp(exp(exp(x) / (1 - 1 / x))) -
        exp(exp(exp(x) / (1 - 1 / x - log(x)**(-log(x))))), x) == -oo
    # 8.5
    assert limitinf(exp(exp(exp(x + exp(-x)))) / exp(exp(exp(x))), x) == oo
    # 8.6
    assert limitinf(exp(exp(exp(x))) / exp(exp(exp(x - exp(-exp(x))))),
                    x) == oo
    # 8.7
    assert limitinf(
        exp(exp(exp(x))) / exp(exp(exp(x - exp(-exp(exp(x)))))), x) == 1
    # 8.8
    assert limitinf(exp(exp(x)) / exp(exp(x - exp(-exp(exp(x))))), x) == 1
    # 8.9
    assert limitinf(
        log(x)**2 * exp(
            sqrt(log(x)) *
            (log(log(x)))**2 * exp(sqrt(log(log(x))) *
                                   (log(log(log(x))))**3)) / sqrt(x), x) == 0
    # 8.10
    assert limitinf((x * log(x) * (log(x * exp(x) - x**2))**2) /
                    (log(log(x**2 + 2 * exp(exp(3 * x**3 * log(x)))))),
                    x) == Rational(1, 3)
    # 8.11
    assert limitinf(
        (exp(x * exp(-x) / (exp(-x) + exp(-2 * x**2 / (x + 1)))) - exp(x)) / x,
        x) == -exp(2)
    # 8.12
    assert limitinf((3**x + 5**x)**(1 / x), x) == 5
    # 8.13
    assert limitinf(x / log(x**(log(x**(log(2) / log(x))))), x) == oo
    # 8.14
    assert limitinf(
        exp(exp(2 * log(x**5 + x) * log(log(x)))) /
        exp(exp(10 * log(x) * log(log(x)))), x) == oo
    # 8.15
    assert limitinf(
        exp(
            exp(
                Rational(5, 2) * x**(-Rational(5, 7)) +
                Rational(21, 8) * x**Rational(6, 11) + 2 * x**(-8) +
                Rational(54, 17) * x**Rational(49, 45)))**8 /
        log(log(-log(Rational(4, 3) * x**(-Rational(5, 14)))))**Rational(7, 6),
        x) == oo
    # 8.16
    assert limitinf(
        (exp(4 * x * exp(-x) /
             (1 / exp(x) + 1 / exp(2 * x**2 / (x + 1)))) - exp(x)) / exp(x)**4,
        x) == 1
    # 8.17
    assert limitinf(
        exp(x * exp(-x) / (exp(-x) + exp(-2 * x**2 / (x + 1)))) / exp(x),
        x) == 1
    # 8.18
    assert limitinf(
        (exp(exp(-x / (1 + exp(-x)))) * exp(-x / (1 + exp(-x /
                                                          (1 + exp(-x))))) *
         exp(exp(-x + exp(-x / (1 + exp(-x)))))) /
        (exp(-x / (1 + exp(-x))))**2 - exp(x) + x, x) == 2
    # 8.19
    assert limitinf(
        log(x) * (log(log(x) + log(log(x))) - log(log(x))) /
        (log(log(x) + log(log(log(x))))), x) == 1
    # 8.20
    assert limitinf(
        exp((log(log(x + exp(log(x) * log(log(x)))))) /
            (log(log(log(exp(x) + x + log(x)))))), x) == E
    # Another
    assert limitinf(exp(exp(exp(x + exp(-x)))) / exp(exp(x)), x) == oo
Esempio n. 15
0
def test_gruntz_hyperbolic():
    assert limitinf(cosh(x), x) == oo
    assert limitinf(cosh(-x), x) == oo
    assert limitinf(sinh(x), x) == oo
    assert limitinf(sinh(-x), x) == -oo
    assert limitinf(2 * cosh(x) * exp(x), x) == oo
    assert limitinf(2 * cosh(-x) * exp(-x), x) == 1
    assert limitinf(2 * sinh(x) * exp(x), x) == oo
    assert limitinf(2 * sinh(-x) * exp(-x), x) == -1
    assert limitinf(tanh(x), x) == 1
    assert limitinf(tanh(-x), x) == -1
    assert limitinf(coth(x), x) == 1
    assert limitinf(coth(-x), x) == -1
Esempio n. 16
0
def test_sympyissue_4109():
    assert limitinf(1 / gamma(1 / x), x) == 0
    assert limitinf(gamma(1 / x) / x, x) == 1
Esempio n. 17
0
def test_sympyissue_6682():
    assert limitinf(exp(2 * Ei(-1 / x)) * x**2, x) == exp(2 * EulerGamma)
Esempio n. 18
0
def test_branch_cuts():
    assert limitinf(sqrt(-1 + I / x), x) == +I
    assert limitinf(sqrt(-1 - I / x), x) == -I
    assert limitinf(log(-1 + I / x), x) == +I * pi
    assert limitinf(log(-1 - I / x), x) == -I * pi
Esempio n. 19
0
def test_sympyissue_8462():
    assert limitinf(binomial(x, x / 2), x) == oo
    # issue sympy/sympy#10801
    assert limitinf(16**x / (x * binomial(2 * x, x)**2), x) == pi
Esempio n. 20
0
def test_aseries_trig():
    assert limitinf(1 / log(atan(x)), x) == -1 / (-log(pi) + log(2))
    assert limitinf(1 / acot(-x), x) == -oo
Esempio n. 21
0
def test_exp_log_series():
    assert limitinf(x / log(log(x * exp(x))), x) == oo
Esempio n. 22
0
def test_sympyissue_3644():
    assert limitinf(((x**7 + x + 1) / (2**x + x**2))**(-1 / x), x) == 2
Esempio n. 23
0
def test_sympyissue_10976():
    assert limitinf(erf(m / x) / erf(1 / x), x) == m
Esempio n. 24
0
def test_gruntz_eval_special():
    # Gruntz, p. 126
    assert limitinf(
        exp(x) * (sin(1 / x + exp(-x)) - sin(1 / x + exp(-x**2))), x) == 1
    assert limitinf((erf(x - exp(-exp(x))) - erf(x)) * exp(exp(x)) * exp(x**2),
                    x) == -2 / sqrt(pi)
    assert limitinf(
        exp(exp(x)) * (exp(sin(1 / x + exp(-exp(x)))) - exp(sin(1 / x))),
        x) == 1
    assert limitinf(exp(x) * (gamma(x + exp(-x)) - gamma(x)), x) == oo
    assert limitinf(exp(exp(digamma(digamma(x)))) / x,
                    x) == exp(-Rational(1, 2))
    assert limitinf(exp(exp(digamma(log(x)))) / x, x) == exp(-Rational(1, 2))
    assert limitinf(digamma(digamma(digamma(x))), x) == oo
    assert limitinf(loggamma(loggamma(x)), x) == oo
    assert limitinf(
        ((gamma(x + 1 / gamma(x)) - gamma(x)) / log(x) - cos(1 / x)) * x *
        log(x), x) == -Rational(1, 2)
    assert limitinf(x * (gamma(x - 1 / gamma(x)) - gamma(x) + log(x)),
                    x) == Rational(1, 2)
    assert limitinf((gamma(x + 1 / gamma(x)) - gamma(x)) / log(x), x) == 1