A particular set of equations I am solving,
sol = Solve[...]
yields a lengthy List of ConditionalExpressions, the arguments of which take a bit of time to evaluate
(sol /. x -> .22) // AbsoluteTiming
(* {0.26925, {...}} *)
which adds up when performed for hundreds of values of x. This is so even though most instances of ConditionalExpression return Undefined, because both arguments of ConditionalExpression are evaluated, even when the second argument evaluates to False. A work-around is
((sol /. ConditionalExpression[z1_, z2_] :> ConditionalExpression[z1, z2 /. x -> .22])
/. x -> .22) // AbsoluteTiming
(* {0.0504917, {...}} *)
What alternatives are more compact or elegant?