def METHOD_NAME():
    i = Symbol('i', imaginary=True)
    y = Symbol('y', extended_real=True)
    r = Symbol('r', real=True)
    k, n = symbols('k,n', integer=True)
    assert floor(y).is_extended_real
    assert floor(x).is_extended_real is None
    assert floor(r).is_finite
    assert floor(y).is_finite is None
    assert floor(r).is_integer
    assert floor(y).is_integer is None
    assert floor(nan) == nan
    assert floor(oo) == oo
    assert floor(-oo) == -oo
    assert floor(0) == 0
    assert floor(1) == 1
    assert floor(-1) == -1
    assert floor(E) == 2
    assert floor(-E) == -3
    assert floor(2*E) == 5
    assert floor(-2*E) == -6
    assert floor(pi) == 3
    assert floor(-pi) == -4
    assert floor(Rational(1, 2)) == 0
    assert floor(-Rational(1, 2)) == -1
    assert floor(Rational(7, 3)) == 2
    assert floor(-Rational(7, 3)) == -3
    assert floor(Float(17.0)) == 17
    assert floor(-Float(17.0)) == -17
    assert floor(Float(7.69)) == 7
    assert floor(-Float(7.69)) == -8
    assert floor(I) == I
    assert floor(-I) == -I
    e = floor(i)
    assert isinstance(e, floor)
    assert e.args[0] == i
    assert floor(oo*I) == oo*I
    assert floor(-oo*I) == -oo*I
    assert floor(2*I) == 2*I
    assert floor(-2*I) == -2*I
    assert floor(I/2) == 0
    assert floor(-I/2) == -I
    assert floor(E + 17) == 19
    assert floor(pi + 2) == 5
    assert floor(E + pi) == floor(E + pi)
    assert floor(I + pi) == floor(I + pi)
    assert floor(floor(pi)) == 3
    assert floor(floor(y)) == floor(y)
    assert floor(floor(x)) == floor(floor(x))
    assert floor(x) == floor(x)
    assert floor(2*x) == floor(2*x)
    assert floor(k*x) == floor(k*x)
    assert floor(k) == k
    assert floor(2*k) == 2*k
    assert floor(k*n) == k*n
    assert floor(k/2) == floor(k/2)
    assert floor(x + y) == floor(x + y)
    assert floor(x + 3) == floor(x + 3)
    assert floor(x + k) == floor(x + k)
    assert floor(y + 3) == floor(y) + 3
    assert floor(y + k) == floor(y) + k
    assert floor(3 + I*y + pi) == 6 + floor(y)*I
    assert floor(k + n) == k + n
    assert floor(x*I) == floor(x*I)
    assert floor(k*I) == k*I
    assert floor(Rational(23, 10) - E*I) == 2 - 3*I
    assert floor(sin(1)) == 0
    assert floor(sin(-1)) == -1
    assert floor(exp(2)) == 7
    assert floor(log(8)/log(2)) != 2
    assert int(floor(log(8)/log(2)).evalf(chop=True)) == 3
    assert floor(factorial(50)/exp(1)) == \
        11188719610782480504630258070757734324011354208865721592720336800
    assert (floor(y) <= y) is true
    assert (floor(y) > y) is false
    assert (floor(x) <= x).is_Relational  # x could be non-real
    assert (floor(x) > x).is_Relational
    assert (floor(x) <= y).is_Relational  # arg is not same as rhs
    assert (floor(x) > y).is_Relational
    assert floor(x).as_leading_term(x) == floor(x)
    # issue sympy/sympy#11207
    assert floor(floor(x)) == floor(x)
    assert floor(ceiling(x)) == ceiling(x)