8 if (boost::indeterminate(tree.
status)) {
13 std::vector<ParameterTree> new_children;
16 while(start != tree.
children.end()) {
17 while(boost::indeterminate(start->status) && start != tree.
children.end()) {
18 new_children.emplace_back(std::move(*start));
22 if (start == tree.
children.end())
break;
24 while(start->status == end->status && end != tree.
children.end()) {
28 new_children.emplace_back(std::move(*start));
31 new_children.emplace_back(start->status, *start->variable, new_interval, !start->interval->
is_section() ? *start->sample : *(start+1)->sample);
38 assert(tree.
children.begin()->interval->lower().is_infty() && tree.
children.begin()->interval->upper().is_infty());
A symbolic interal whose bounds are defined by indexed root expressions.
void simplify(ParameterTree &tree)
std::vector< ParameterTree > children