# Why is_prime(6/3) results as False?

```
sage: (6/3).is_integer()
True
sage: (6/3).is_prime()
False
```

Why is_prime(6/3) results as False?

```
sage: (6/3).is_integer()
True
sage: (6/3).is_prime()
False
```

add a comment

2

Note that the parent of `6/3`

is the `Rational Field`

:

```
sage: a = 6/3
sage: a.parent()
Rational Field
```

So, when you write `(6/3).is_prime()`

, you ask whether `6/3`

is prime *as a rational number,* not as an integer, see the documentation:

```
sage: a.is_prime?
A *prime* element is a non-zero, non-unit element p such that,
whenever p divides ab for some a and b, then p divides a or p
divides b.
```

So, since `6/3`

is a unit in `QQ`

, the answer should be `False`

```
sage: a.is_unit()
True
sage: a.is_prime()
False
```

To see if `6/3`

is prime as an integer, just do:

```
sage: ZZ(6/3).is_prime()
True
```

So, it is very important in mathematics and in Sage to know where your elements are living. For example the polynomial `x^2-2`

can not be factorized in $\mathbb{Q}[x]$, but it does in $\overline{\mathbb{Q}}[x]$:

```
sage: x = polygen(QQ)
sage: (x^2-2).is_irreducible()
True
sage: x = polygen(QQbar)
sage: (x^2-2).is_irreducible()
False
```

Asked: **
2015-03-06 12:46:49 -0600
**

Seen: **969 times**

Last updated: **Mar 06 '15**

Testing if the entries of a matrix of rational vectors are actually integers

latex(-(x-1)/(x+1)) still broken

Get a matrix to display answers as decimals/floats, not fraction?

how to run fraction elenment in Multivariate Polynomial Ring in over Finite Field ring

Numerical approximation of coefficients in fractions

Inconsistency in function return value

Conjugate multiplication of square root

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.