SnapPy can tell you the trace field of a hyperbolic $3$-manifold (which is awesome), but it specifies the field by outputting:

- the minimal polynomial of the field over $\mathbb{Q}$, and
- a decimal approximation of the field's primitive element.

I am interested in algebraic properties of the trace field, such as the lattice of field extensions between the trace field and $\mathbb{Q}$, and algebraic expressions for a set of generators of the trace field over $\mathbb{Q}$. This is in general difficult to find based on the data given (and after degree five, as we know ever since Galois, it is often literally impossible). But presumably, SnapPy "knows" more than the output it gives. It just gives the trace field in this way because it's useful for lots of other applications.

*So, a general inquiry is:*

Can I get SnapPy to answer algebraic questions about the trace field? For instance: What is the maximal real subfield of the trace field? Does its real subfield admit complex embeddings? What is its Galois group? (Forgive me if it is well-known how to do these things, I am pretty new to SnapPy.)

*Below is a more specific question about what I need to do at the moment,
with a more precise explanation of the SnapPy output.*

Let $K$ be some number field, and suppose all we know about it is

- an irreducible polynomial $m(t)∈\mathbb{Z}[t]$ such that $K≅Q(t)/m(t)$, and
- a decimal approximation $z∈\mathbb{Q}[i]$ of a root $s∈\overline{\mathbb{Q}}$ of $m(t)$ satisfying $K=\mathbb{Q}(s)$, where we assume that $z$ closer to $s$ than it is to any of the other roots of $m(t)$.

I want to know whether $K$ can be written in the form $F(\sqrt{−d})$, where $F\subset\mathbb{R},d∈F^+$. Preferably I'd like some very easy way to check this just by looking at $m(t)$. There may be something from Galois theory that has rusted away in my brain, in which case I apologize for asking about a sub-research-level topic. Otherwise, perhaps there is some computer implementation that can check this?

I can show that when $[K:\mathbb{Q}]=4$, my condition holds if and only if $m(t)$ is of the form $t^4+2at^2+b$ where $a,b\in\mathbb{Z}$. This is done casewise according to whether or not $d\in\mathbb{N}$, then forming the primitive element and solving for $m(t)$.

*Addendum:*
Here's a sub-question that might be more fun (following a suggestion from @DimaPasechnik).
What are similar forms that $m(t)$
must take if and only if $[K:\mathbb{Q}]=2n$
for other $n$-values?
Perhaps there is a recognizable pattern that can be written for general $n$.