# Revision history [back]

### Assumptions and inequalities

Hello all.

I have some expressions like sums of ratios of real polynomials in a variable t. Mathematically, by assuming t real in a specific interval, each such expression is either always positive, or always non-negative.

For Sage, this is sometimes the case, sometimes not: as you can see, the first one is correct, the second one not


expr1 = -1 + (t^2 - 1)/t^2 + 1/t^2
expr2 = (t^2 - 1)/(t^2 - 3)
with assuming(t > 0, t  < 1/2):
print(bool(expr1 <= 0), bool(expr1 > 0))
print(bool(expr2 <= 0), bool(expr2 > 0))


Output:

(True, False)

(False, False)

Why? How can I avoid this problem?

### Assumptions and inequalities

Hello all.

I have some expressions like sums of ratios of real polynomials in a variable t. Mathematically, by assuming t real in a specific interval, each such expression is either always positive, or always non-negative.

For Sage, this is sometimes the case, sometimes not: as you can see, the first one is correct, the second one not


expr1 = -1 + (t^2 - 1)/t^2 + 1/t^2
expr2 = (t^2 - 1)/(t^2 - 3)
with assuming(t > 0, t  < 1/2):
print(bool(expr1 <= 0), bool(expr1 > 0))
print(bool(expr2 <= 0), bool(expr2 > 0))


Output:

(True, False)

(False, False)

Why? How can I avoid this problem?

### Assumptions and inequalities

Hello all.

I have some expressions like sums of ratios of real polynomials in a variable t. Mathematically, by assuming t real in a specific interval, each such expression is either always positive, or always non-negative.

For Sage, this is sometimes the case, sometimes not: as you can see, the first one is correct, the second one not

 var('t')
expr1 = -1 + (t^2 - 1)/t^2 + 1/t^2
expr2 = (t^2 - 1)/(t^2 - 3)
with assuming(t > 0, t  < 1/2):
print(bool(expr1 <= 0), bool(expr1 > 0))
print(bool(expr2 <= 0), bool(expr2 > 0))


Output:

(True, False)

(False, False)

Why? How can I avoid this problem?

### Assumptions and inequalities

Hello all.

I have some expressions like sums of ratios of real polynomials in a variable t. Mathematically, by assuming t real in a specific interval, each such expression is either always positive, or always non-negative.

For Sage, this is sometimes the case, sometimes not: as you can see, the first one is correct, the second one not


var('t')
expr1 = -1 + (t^2 - 1)/t^2 + 1/t^2
expr2 = (t^2 - 1)/(t^2 - 3)
with assuming(t > 0, t  < 1/2):
print(bool(expr1 <= 0), bool(expr1 > 0))
print(bool(expr2 <= 0), bool(expr2 > 0))


Output:

(True, False)

False) \n (False, False)

Questions: Why? How can I avoid this problem?

(An answer to the second question would be enough for me)