# Laurent series, Rational Functions in sqrt(q)?

I need to construct the ring of formal Laurent series in `q**(1/2)`

over the rational numbers. How would I do that in sage?

I realize that there's a perfectly good workaround, but I'd be nonetheless very happy if I didn't have to use it. I could just use Laurent series in another variable, like t,

```
R.<t> = LaurentSeriesRing(QQ)
```

I could then define q to be `t**2`

, and use t as a formal square root of q. But then I still can't raise q to a non-integer power - sage complains that there's a non-integer in the exponent. I'd make about 500 mistakes just typing in formulas and it would be hard to read the output.

Another workaround which I'm not keen on is to just say

```
var('q')
```

and just use symbolic expressions instead. I don't really want to do that either: I like having all the Laurent series methods available and I gather that working in an explicit ring is a lot faster? If I'm misinformed there, then please let me know.

Lastly, I'd also like to construct the rational functions in sqrt(q) - same basic problem, as far as I can see. Any help appreciated.