using Symata FloatFormat(Short); C = [a,[[a1,[a12,b12,c12]],[b2,[a22,b22,c22]],[c3,[a32,b32,c32,d32]]]]; trav(tree_List) := Flatten(trav([], tree), 1) trav(accum_List, [x_, y_List]) := Map(yy -> trav([accum, x], yy), y) trav(x_,y_) := Flatten([x,y]) trav(C) Module({prev, prevprev, this}, begin reset() := (prev = big"1"; prevprev = 1); reset(); nextFib() := (this = prev + prevprev; prevprev = prev; prev = this) end ); reset() a = Table(nextFib(),[1000]); a[-1] ClearAll(a,b) allsyms(expr_) := Cases(expr , s_Symbol => HoldComplete(s),[0,Infinity]) allsyms(a+b*(1-x)) [(-8)^(1/3), (-8.0)^(1/3)] [CubeRoot(-8), Surd(-32,5)] Surd(-8,4) Surd(I,3) VersionInfo() Now()