fact: Definition decode_algdom (x : algdom') : option algdom := if x is [::c, r & p'] then let p := Poly p' in if ((p \is monic) =P true, (r >= 0) =P true, (p.[c - r] * p.[c + r] <= 0) =P true) is (ReflectT monic_p, ReflectT r_gt0, ReflectT hp) then Some (AlgDom monic_p r_gt0 hp) else None else None.
imports: HB(structures) mathcomp.ssreflect.ssreflect mathcomp(ssrfun ssrbool eqtype ssrnat seq choice fintype) mathcomp(bigop order ssralg ssrnum ssrint rat poly polydiv polyorder) mathcomp(perm matrix mxpoly polyXY binomial generic_quotient) mathcomp(cauchyreals separable zmodp bigenough)