fact: Fixpoint algT_eval (f : algterm F) : algC := match f with | Base x => iota x | 0%algT => 0 | 1%algT => 1 | (f1 + f2)%algT => algT_eval f1 + algT_eval f2 | (- f1)%algT => - algT_eval f1 | (f1 * f2)%algT => algT_eval f1 * algT_eval f2 | (f1 ^-1)%algT => (algT_eval f1)^-1 | (f1 ^+ n)%algT => (algT_eval f1) ^+ n | (n.+1-root f1)%algT => n.+1.-root (algT_eval f1) | (j.+1-prim1root)%algT => prim1root_ j.+1 end.
imports: HB(structures) mathcomp(all_ssreflect all_fingroup all_algebra) mathcomp(all_solvable all_field polyrcf) Abel(various classic_ext map_gal algR) Abel(char0 cyclotomic_ext real_closed_ext)