cases: fixes x :: "floatarith \<times> nat" obtains uu_ :: "nat" where "x = (Exp (Var 0), uu_)"   | n :: "nat" where "x = (Cos (Var 0), na__)"   | n :: "nat" where "x = (Inverse (Var 0), nb__)"   | v :: "floatarith" and va :: "floatarith" and n :: "nat" where "x = (Add v__ va__, nc__)"   | v :: "floatarith" and n :: "nat" where "x = (Minus vb__, nd__)"   | v :: "floatarith" and va :: "floatarith" and n :: "nat" where "x = (Mult vc__ vaa__, ne__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Inverse (Add vab__ vba__), nf__)"   | va :: "floatarith" and n :: "nat" where "x = (Inverse (Minus vac__), ng__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Inverse (Mult vad__ vbb__), nh__)"   | va :: "floatarith" and n :: "nat" where "x = (Inverse (Inverse vae__), ni__)"   | va :: "floatarith" and n :: "nat" where "x = (Inverse (Cos vaf__), nj__)"   | va :: "floatarith" and n :: "nat" where "x = (Inverse (Arctan vag__), nk__)"   | va :: "floatarith" and n :: "nat" where "x = (Inverse (Abs vah__), nl__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Inverse (Max vai__ vbc__), nm__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Inverse (Min vaj__ vbd__), nn__)"   | n :: "nat" where "x = (Inverse Pi, no__)"   | va :: "floatarith" and n :: "nat" where "x = (Inverse (Sqrt vak__), np__)"   | va :: "floatarith" and n :: "nat" where "x = (Inverse (Exp val__), nq__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Inverse (Powr vam__ vbe__), nr__)"   | va :: "floatarith" and n :: "nat" where "x = (Inverse (Ln van__), ns__)"   | va :: "floatarith" and vb :: "nat" and n :: "nat" where "x = (Inverse (Power vao__ vbf__), nt__)"   | va :: "floatarith" and n :: "nat" where "x = (Inverse (Floor vap__), nu__)"   | vb :: "nat" and n :: "nat" where "x = (Inverse (Var (Suc vbg__)), nv__)"   | va :: "float" and n :: "nat" where "x = (Inverse (Num vaq__), nw__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Cos (Add var__ vbh__), nx__)"   | va :: "floatarith" and n :: "nat" where "x = (Cos (Minus vas__), ny__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Cos (Mult vat__ vbi__), nz__)"   | va :: "floatarith" and n :: "nat" where "x = (Cos (Inverse vau__), oa__)"   | va :: "floatarith" and n :: "nat" where "x = (Cos (Cos vav__), ob__)"   | va :: "floatarith" and n :: "nat" where "x = (Cos (Arctan vaw__), oc__)"   | va :: "floatarith" and n :: "nat" where "x = (Cos (Abs vax__), od__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Cos (Max vay__ vbj__), oe__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Cos (Min vaz__ vbk__), of__)"   | n :: "nat" where "x = (Cos Pi, og__)"   | va :: "floatarith" and n :: "nat" where "x = (Cos (Sqrt vbl__), oh__)"   | va :: "floatarith" and n :: "nat" where "x = (Cos (Exp vbm__), oi__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Cos (Powr vbn__ vbo__), oj__)"   | va :: "floatarith" and n :: "nat" where "x = (Cos (Ln vbp__), ok__)"   | va :: "floatarith" and vb :: "nat" and n :: "nat" where "x = (Cos (Power vbq__ vbr__), ol__)"   | va :: "floatarith" and n :: "nat" where "x = (Cos (Floor vbs__), om__)"   | vb :: "nat" and n :: "nat" where "x = (Cos (Var (Suc vbt__)), on__)"   | va :: "float" and n :: "nat" where "x = (Cos (Num vbu__), oo__)"   | v :: "floatarith" and n :: "nat" where "x = (Arctan vd__, op__)"   | v :: "floatarith" and n :: "nat" where "x = (Abs ve__, oq__)"   | v :: "floatarith" and va :: "floatarith" and n :: "nat" where "x = (Max vf__ vbv__, or__)"   | v :: "floatarith" and va :: "floatarith" and n :: "nat" where "x = (Min vg__ vbw__, os__)"   | n :: "nat" where "x = (Pi, ot__)"   | v :: "floatarith" and n :: "nat" where "x = (Sqrt vh__, ou__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Exp (Add vbx__ vby__), ov__)"   | va :: "floatarith" and n :: "nat" where "x = (Exp (Minus vbz__), ow__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Exp (Mult vca__ vcb__), ox__)"   | va :: "floatarith" and n :: "nat" where "x = (Exp (Inverse vcc__), oy__)"   | va :: "floatarith" and n :: "nat" where "x = (Exp (Cos vcd__), oz__)"   | va :: "floatarith" and n :: "nat" where "x = (Exp (Arctan vce__), pa__)"   | va :: "floatarith" and n :: "nat" where "x = (Exp (Abs vcf__), pb__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Exp (Max vcg__ vch__), pc__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Exp (Min vci__ vcj__), pd__)"   | n :: "nat" where "x = (Exp Pi, pe__)"   | va :: "floatarith" and n :: "nat" where "x = (Exp (Sqrt vck__), pf__)"   | va :: "floatarith" and n :: "nat" where "x = (Exp (Exp vcl__), pg__)"   | va :: "floatarith" and vb :: "floatarith" and n :: "nat" where "x = (Exp (Powr vcm__ vcn__), ph__)"   | va :: "floatarith" and n :: "nat" where "x = (Exp (Ln vco__), pi__)"   | va :: "floatarith" and vb :: "nat" and n :: "nat" where "x = (Exp (Power vcp__ vcq__), pj__)"   | va :: "floatarith" and n :: "nat" where "x = (Exp (Floor vcr__), pk__)"   | vb :: "nat" and n :: "nat" where "x = (Exp (Var (Suc vb)), pl__)"   | va :: "float" and n :: "nat" where "x = (Exp (Num vct__), pm__)"   | v :: "floatarith" and va :: "floatarith" and n :: "nat" where "x = (Powr vi__ vcu__, pn__)"   | v :: "floatarith" and n :: "nat" where "x = (Ln vj__, po__)"   | v :: "floatarith" and va :: "nat" and n :: "nat" where "x = (Power vk__ va, pp__)"   | v :: "floatarith" and n :: "nat" where "x = (Floor vl__, pq__)"   | v :: "nat" and n :: "nat" where "x = (Var vm__, pr__)"   | v :: "float" and n :: "nat" where "x = (Num v, n)"