diff --git a/src/feature_creation/feature_space/FeatureSpace.cpp b/src/feature_creation/feature_space/FeatureSpace.cpp index 08270c9dc2b3cb72f0a93115751cdfc38b0127ea..512deee810c21596af1a485003ea6abc156f17eb 100644 --- a/src/feature_creation/feature_space/FeatureSpace.cpp +++ b/src/feature_creation/feature_space/FeatureSpace.cpp @@ -154,6 +154,13 @@ FeatureSpace::FeatureSpace(InputParser inputs): double start = omp_get_wtime(); generate_feature_space(_phi, _start_rung, _prop_train); + _n_feat = _phi.size(); + + if(_phi_out_file.size() > 0) + { + output_phi(); + } + _mpi_comm->barrier(); double duration = omp_get_wtime() - start; if(_mpi_comm->rank() == 0) @@ -779,15 +786,6 @@ void FeatureSpace::generate_feature_space( } #endif } - if(!reparam) - { - _n_feat = feat_set.size(); - } - - if(_phi_out_file.size() > 0) - { - output_phi(); - } } void FeatureSpace::generate_and_project(std::shared_ptr<LossFunction> loss, std::vector<node_ptr>& phi_sel, std::vector<double>& scores_sel) @@ -1213,6 +1211,7 @@ void FeatureSpace::remove_feature(const int ind) } _phi.erase(_phi.begin() + ind); + --_n_feat; } void FeatureSpace::output_phi() diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.cpp index 61e2a2e0c42b3593dd3b24e507b09fc9d7a11184..61249224a7b5759ccc0215f0e58e447f17b5dbb9 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.cpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/cbrt/cube_root.cpp @@ -95,12 +95,6 @@ CbrtNode::CbrtNode(const node_ptr feat, const unsigned long int feat_ind, const throw InvalidFeatureException(); } - double* val_ptr = feat->value_ptr(rung() + 2); - if(*std::min_element(val_ptr, val_ptr + _n_samp) < 0.0) - { - throw InvalidFeatureException(); - } - set_value(); // Check if the feature is NaN, greater than the allowed max of less than the allowed min diff --git a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.cpp b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.cpp index 9b3dbac3b8d9ab3168fac7aa57267e2d81ebe091..9a9177aa6c428650dad38828f10d8ccd34bc32cf 100644 --- a/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.cpp +++ b/src/feature_creation/node/operator_nodes/allowed_operator_nodes/div/divide.cpp @@ -63,7 +63,7 @@ void generateDivNode(std::vector<node_ptr>& feat_list, const node_ptr feat_1, co double div_mult_tot_first = div_mult_leaves.begin()->second; if( (std::abs(div_mult_tot_first) != 1.0) && - std::all_of(div_mult_leaves.begin(), div_mult_leaves.end(), [&div_mult_tot_first](auto el){return el.second == div_mult_tot_first;}) + std::all_of(div_mult_leaves.begin(), div_mult_leaves.end(), [&div_mult_tot_first](auto el){return std::abs(el.second) == div_mult_tot_first;}) ) { return; diff --git a/src/feature_creation/node/utils.cpp b/src/feature_creation/node/utils.cpp index 13904a12e685062ae9da6e6055c674cab585721a..e621a0f6790f1c0f9b2b3bba4909d3d78b1142eb 100644 --- a/src/feature_creation/node/utils.cpp +++ b/src/feature_creation/node/utils.cpp @@ -391,7 +391,9 @@ std::vector<node_ptr> str2node::phi_from_file(const std::string filename, const std::ifstream file_stream; file_stream.open(filename, std::ios::in); - int numLines = 0; + int num_lines = 0; + int n_prim_feat = 0; + int n_invalid_feat = 0; std::string line; std::vector<node_ptr> phi; @@ -399,7 +401,7 @@ std::vector<node_ptr> str2node::phi_from_file(const std::string filename, const while(std::getline(file_stream, line)) { - ++numLines; + ++num_lines; if(line[0] == '#') { continue; @@ -408,18 +410,22 @@ std::vector<node_ptr> str2node::phi_from_file(const std::string filename, const { node_ptr feat = postfix2node(line, phi_0, feat_ind); if(feat->type() == NODE_TYPE::FEAT) + { + ++n_prim_feat; continue; + } phi.push_back(feat); phi.back()->set_selected(false); ++feat_ind; } catch(const InvalidFeatureException& e) { + ++n_invalid_feat; // Do Nothing } } file_stream.close(); - if(numLines < 1) + if(num_lines < 1) { throw std::logic_error("File, " + filename + " not present"); } diff --git a/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp b/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp index d3c83e45cc238b49a1e51724e99a665fd9b8a820..12707751f8f877133bd6d3b1db316f74d36c813d 100644 --- a/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp +++ b/src/python/py_binding_cpp_def/bindings_docstring_keyed.cpp @@ -231,6 +231,7 @@ void sisso::registerInputs() .add_property("fix_intercept", &InputParser::fix_intercept, &InputParser::set_fix_intercept, "@DocString_inputs_fix_intercept@") .add_property("global_param_opt", &InputParser::global_param_opt, &InputParser::set_global_param_opt, "@DocString_inputs_global_param_opt@") .add_property("reparam_residual", &InputParser::reparam_residual, &InputParser::set_reparam_residual, "@DocString_inputs_reparam_residual@") + .add_property("phi_out_file", &InputParser::phi_out_file, &InputParser::set_phi_out_file, "@DocString_inputs_phi_out_file@") ; } @@ -285,6 +286,7 @@ void sisso::feature_creation::registerFeatureSpace() .def("feat_in_phi", &FeatureSpace::feat_in_phi, (arg("self"), arg("ind")), "@DocString_feat_space_feat_in_phi@") .def("remove_feature", &FeatureSpace::remove_feature, (arg("self"), arg("ind")), "@DocString_feat_space_remove_feature@") .def("get_feature", &FeatureSpace::get_feature, (arg("self"), arg("ind")), "@DocString_feat_space_get_feature@") + .def("output_phi", &FeatureSpace::output_phi, (arg("self")), "@DocString_feat_space_output_phi@") .add_property("phi_selected", &FeatureSpace::phi_selected_py, "@DocString_feat_space_phi_selected_py@") .add_property("phi0", &FeatureSpace::phi0_py, "@DocString_feat_space_phi0_py@") .add_property("phi", &FeatureSpace::phi_py, "@DocString_feat_space_phi_py@") diff --git a/src/python/py_binding_cpp_def/feature_creation/FeatureSpace.cpp b/src/python/py_binding_cpp_def/feature_creation/FeatureSpace.cpp index f83954d965b11c2845343eac717f95fd27cfa0ec..685fbf6d23169159ab1633edafc86728d52c9d4a 100644 --- a/src/python/py_binding_cpp_def/feature_creation/FeatureSpace.cpp +++ b/src/python/py_binding_cpp_def/feature_creation/FeatureSpace.cpp @@ -56,6 +56,7 @@ FeatureSpace::FeatureSpace( mpi_reduce_op::set_op(_project_type, _cross_cor_max, _n_sis_select); std::vector<node_ptr> phi_temp = str2node::phi_from_file(feature_file, _phi_0); + phi_temp.insert(phi_temp.begin(), _phi_0.begin(), _phi_0.end()); _n_feat = phi_temp.size(); diff --git a/tests/exec_test/default/feature_space/phi.out b/tests/exec_test/default/feature_space/phi.out new file mode 100644 index 0000000000000000000000000000000000000000..acb70639c5479bcb39cdb585a6c124a8826cfc40 --- /dev/null +++ b/tests/exec_test/default/feature_space/phi.out @@ -0,0 +1,3492 @@ +# Number of Features: 3490 +# Maximum Rung of the Calculation: 2 +0 +1 +2 +3 +3|sp +2|abs +2|sin +2|cos +2|1|mult +2|1|div +2|3|div +3|0|mult +3|0|div +3|exp +3|inv +3|sq +3|cb +2|cbrt +3|cbrt +3|abs +3|sin +3|cos +3|1|mult +3|1|div +3|2|add +3|2|sub +3|2|abd +3|2|mult +3|2|div +1|cb +0|sq +0|cb +0|sp +0|cbrt +0|abs +0|1|div +0|2|div +0|3|div +1|0|mult +1|0|div +1|inv +1|sq +0|inv +1|sp +1|sqrt +1|cbrt +1|2|div +1|3|div +2|0|mult +2|0|div +2|inv +2|sq +2|cb +2|sp +0|3|div|cb +0|2|div|0|abs|mult +0|2|div|0|abs|div +0|2|div|1|sq|div +0|2|div|1|sp|div +0|2|div|1|sqrt|div +0|2|div|1|cbrt|div +0|2|div|2|sq|div +0|2|div|2|cb|div +0|3|div|0|add +0|3|div|0|sub +0|3|div|0|abd +0|3|div|0|mult +0|3|div|sq +0|2|div|0|abs|abd +0|3|div|sp +0|3|div|cbrt +0|3|div|abs +0|3|div|1|mult +0|3|div|1|div +0|3|div|2|mult +0|3|div|2|div +0|3|div|3|div +0|3|div|2|abs|mult +0|3|div|2|abs|div +0|3|div|2|sin|mult +0|3|div|2|sin|div +0|2|div|3|2|sub|mult +0|2|div|2|cbrt|div +0|2|div|3|cbrt|mult +0|2|div|3|cbrt|div +0|2|div|3|abs|mult +0|2|div|3|abs|div +0|2|div|3|sin|mult +0|2|div|3|sin|div +0|2|div|3|cos|mult +0|2|div|3|cos|div +0|2|div|3|1|mult|mult +0|2|div|3|1|mult|div +0|2|div|3|2|add|mult +0|2|div|3|2|add|div +0|3|div|2|cos|mult +0|2|div|3|2|sub|div +0|2|div|3|2|abd|mult +0|2|div|3|2|abd|div +0|2|div|3|2|mult|div +0|2|div|1|cb|mult +0|2|div|1|cb|div +0|2|div|0|sq|mult +0|2|div|0|cb|mult +0|2|div|0|sp|mult +0|2|div|0|cbrt|mult +0|2|div|0|abs|add +0|2|div|0|abs|sub +0|3|div|1|sp|div +0|3|div|0|sq|mult +0|3|div|0|cb|mult +0|3|div|0|sp|mult +0|3|div|0|cbrt|mult +0|3|div|0|abs|add +0|3|div|0|abs|sub +0|3|div|0|abs|abd +0|3|div|0|abs|mult +0|3|div|0|abs|div +0|3|div|0|2|div|add +0|3|div|0|2|div|sub +0|3|div|0|2|div|abd +0|3|div|1|sq|div +0|3|div|1|cb|div +0|3|div|1|sqrt|div +0|3|div|1|cbrt|div +0|3|div|2|sq|div +0|3|div|2|cb|div +1|0|mult|0|mult +1|0|mult|inv +1|0|mult|sq +1|0|mult|cb +1|0|mult|sp +1|0|mult|cbrt +1|0|mult|abs +1|0|mult|1|mult +0|3|div|3|sin|mult +0|3|div|2|cos|div +0|3|div|2|1|mult|mult +0|3|div|2|1|mult|div +0|3|div|3|0|mult|add +0|3|div|3|0|mult|sub +0|3|div|3|0|mult|abd +0|3|div|3|sq|div +0|3|div|3|cb|div +0|3|div|2|cbrt|mult +0|3|div|2|cbrt|div +0|3|div|3|cbrt|div +0|3|div|3|abs|mult +0|3|div|3|abs|div +0|2|div|3|cb|div +0|3|div|3|sin|div +0|3|div|3|cos|mult +0|3|div|3|cos|div +0|3|div|3|1|mult|div +0|3|div|3|2|add|mult +0|3|div|3|2|add|div +0|3|div|3|2|sub|mult +0|3|div|3|2|sub|div +0|3|div|3|2|abd|mult +0|3|div|3|2|abd|div +0|3|div|3|2|mult|div +0|3|div|1|cb|mult +0|1|div|3|0|mult|mult +0|1|div|1|div +0|1|div|2|mult +0|1|div|2|div +0|1|div|3|mult +0|1|div|3|div +0|1|div|3|sp|mult +0|1|div|2|abs|mult +0|1|div|2|abs|div +0|1|div|2|sin|mult +0|1|div|2|sin|div +0|1|div|2|cos|mult +0|1|div|2|cos|div +0|1|div|2|1|mult|div +0|1|div|abs +0|1|div|3|sq|mult +0|1|div|3|sq|div +0|1|div|3|cb|mult +0|1|div|3|cb|div +0|1|div|2|cbrt|mult +0|1|div|2|cbrt|div +0|1|div|3|cbrt|mult +0|1|div|3|cbrt|div +0|1|div|3|abs|mult +0|1|div|3|abs|div +0|1|div|3|sin|mult +0|1|div|3|sin|div +0|abs|1|0|mult|div +0|abs|3|2|abd|div +0|abs|3|2|mult|mult +0|abs|3|2|mult|div +0|abs|3|2|div|mult +0|abs|1|cb|mult +0|abs|1|cb|div +0|abs|0|sq|mult +0|abs|0|sq|div +0|abs|0|cb|mult +0|abs|0|cb|div +0|abs|0|sp|mult +0|abs|0|cbrt|mult +0|abs|0|cbrt|div +0|1|div|3|cos|mult +0|abs|1|sq|div +0|abs|1|sp|div +0|abs|1|sqrt|div +0|abs|1|cbrt|div +0|abs|2|0|mult|div +0|abs|2|sq|div +0|abs|2|cb|div +0|1|div|0|mult +0|1|div|sq +0|1|div|cb +0|1|div|sp +0|1|div|cbrt +0|2|div|2|abs|div +0|2|div|0|mult +0|2|div|sq +0|2|div|cb +0|2|div|sp +0|2|div|cbrt +0|2|div|abs +0|2|div|1|mult +0|2|div|1|div +0|2|div|2|div +0|2|div|3|mult +0|2|div|3|div +0|2|div|3|sp|mult +0|2|div|2|abs|mult +0|2|div|0|abd +0|2|div|2|sin|mult +0|2|div|2|sin|div +0|2|div|2|cos|mult +0|2|div|2|cos|div +0|2|div|2|1|mult|div +0|2|div|3|0|mult|add +0|2|div|3|0|mult|sub +0|2|div|3|0|mult|abd +0|2|div|3|0|mult|mult +0|2|div|3|sq|mult +0|2|div|3|sq|div +0|2|div|3|cb|mult +0|1|div|0|cb|mult +0|1|div|3|cos|div +0|1|div|3|1|mult|div +0|1|div|3|2|add|mult +0|1|div|3|2|add|div +0|1|div|3|2|sub|mult +0|1|div|3|2|sub|div +0|1|div|3|2|abd|mult +0|1|div|3|2|abd|div +0|1|div|3|2|mult|mult +0|1|div|3|2|mult|div +0|1|div|1|cb|div +0|1|div|0|sq|mult +1|0|mult|2|mult +0|1|div|0|sp|mult +0|1|div|0|cbrt|mult +0|1|div|0|abs|mult +0|1|div|0|abs|div +0|1|div|1|sq|div +0|1|div|1|sp|div +0|1|div|1|sqrt|div +0|1|div|1|cbrt|div +0|1|div|2|sq|div +0|1|div|2|cb|div +0|2|div|0|add +0|2|div|0|sub +1|sq|3|2|div|mult +1|sq|3|sin|mult +1|sq|3|sin|div +1|sq|3|cos|mult +1|sq|3|cos|div +1|sq|3|1|mult|mult +1|sq|3|2|add|mult +1|sq|3|2|add|div +1|sq|3|2|sub|mult +1|sq|3|2|sub|div +1|sq|3|2|abd|mult +1|sq|3|2|abd|div +1|sq|3|2|mult|mult +1|sq|3|2|mult|div +1|sq|3|abs|div +1|sq|0|sq|div +1|sq|0|cb|mult +1|sq|0|cb|div +1|sq|0|sp|mult +1|sq|0|cbrt|mult +1|sq|0|cbrt|div +1|sq|0|abs|mult +1|sq|0|abs|div +1|sq|0|2|div|mult +1|sq|0|3|div|mult +1|sq|1|0|mult|mult +1|sq|1|0|div|mult +1|sq|2|1|mult|mult +1|sq|inv +1|sq|sq +1|sq|2|mult +1|sq|2|div +1|sq|3|mult +1|sq|3|div +1|sq|3|sp|mult +1|sq|2|abs|mult +1|sq|2|abs|div +1|sq|2|sin|mult +1|sq|2|sin|div +1|sq|2|cos|mult +1|sq|2|cos|div +1|sq|2|0|mult|div +1|sq|2|3|div|mult +1|sq|3|0|mult|mult +1|sq|3|0|mult|div +1|sq|3|0|div|mult +1|sq|3|sq|div +1|sq|3|cb|mult +1|sq|3|cb|div +1|sq|2|cbrt|mult +1|sq|2|cbrt|div +1|sq|3|cbrt|mult +1|sq|3|cbrt|div +1|sq|3|abs|mult +1|sp|3|cos|div +1|sp|3|sq|mult +1|sp|3|sq|div +1|sp|3|cb|mult +1|sp|3|cb|div +1|sp|2|cbrt|mult +1|sp|2|cbrt|div +1|sp|3|cbrt|mult +1|sp|3|cbrt|div +1|sp|3|abs|mult +1|sp|3|abs|div +1|sp|3|sin|mult +1|sp|3|sin|div +1|sp|3|cos|mult +1|sp|3|0|div|mult +1|sp|3|1|mult|mult +1|sp|3|2|add|mult +1|sp|3|2|add|div +1|sp|3|2|sub|mult +1|sp|3|2|sub|div +1|sp|3|2|abd|mult +1|sp|3|2|abd|div +1|sp|3|2|mult|mult +1|sp|3|2|mult|div +1|sp|3|2|div|mult +1|sp|0|sq|mult +1|sp|0|sq|div +1|sp|3|mult +1|sq|2|sq|div +1|sq|2|cb|div +0|inv|abs +0|inv|3|0|div|add +0|inv|3|0|div|sub +0|inv|3|0|div|abd +1|sp|0|mult +1|sp|0|div +1|sp|inv +1|sp|sq +1|sp|cb +1|sp|2|mult +1|sp|2|div +1|sq|0|div +1|sp|3|div +1|sp|3|sp|div +1|sp|2|abs|mult +1|sp|2|abs|div +1|sp|2|sin|mult +1|sp|2|sin|div +1|sp|2|cos|mult +1|sp|2|cos|div +1|sp|2|1|mult|mult +1|sp|2|3|div|mult +1|sp|3|0|mult|mult +1|sp|3|0|mult|div +1|0|mult|0|cb|mult +1|0|mult|3|cos|div +1|0|mult|3|1|mult|mult +1|0|mult|3|2|add|mult +1|0|mult|3|2|add|div +1|0|mult|3|2|sub|mult +1|0|mult|3|2|sub|div +1|0|mult|3|2|abd|mult +1|0|mult|3|2|abd|div +1|0|mult|3|2|mult|mult +1|0|mult|3|2|mult|div +1|0|mult|3|2|div|mult +1|0|mult|1|cb|mult +1|0|mult|0|sq|mult +1|0|mult|3|cos|mult +1|0|mult|0|sp|mult +1|0|mult|0|cbrt|mult +1|0|mult|0|abs|mult +1|0|mult|0|abs|div +1|0|mult|0|2|div|mult +1|0|mult|0|3|div|mult +1|0|mult|2|sq|div +1|0|mult|2|cb|div +1|0|div|0|div +1|0|div|sq +1|0|div|cb +1|0|div|sp +1|0|mult|3|0|mult|mult +1|0|mult|2|div +1|0|mult|3|mult +1|0|mult|3|div +1|0|mult|3|sp|mult +1|0|mult|3|sp|div +1|0|mult|2|abs|mult +1|0|mult|2|abs|div +1|0|mult|2|sin|mult +1|0|mult|2|sin|div +1|0|mult|2|cos|mult +1|0|mult|2|cos|div +1|0|mult|2|1|mult|mult +1|0|mult|2|3|div|mult +1|0|div|cbrt +1|0|mult|3|sq|mult +1|0|mult|3|sq|div +1|0|mult|3|cb|mult +1|0|mult|3|cb|div +1|0|mult|2|cbrt|mult +1|0|mult|2|cbrt|div +1|0|mult|3|cbrt|mult +1|0|mult|3|cbrt|div +1|0|mult|3|abs|mult +1|0|mult|3|abs|div +1|0|mult|3|sin|mult +1|0|mult|3|sin|div +1|0|div|0|sq|div +1|0|div|3|sin|div +1|0|div|3|cos|mult +1|0|div|3|cos|div +1|0|div|3|1|mult|mult +1|0|div|3|2|add|mult +1|0|div|3|2|add|div +1|0|div|3|2|sub|mult +1|0|div|3|2|sub|div +1|0|div|3|2|abd|mult +1|0|div|3|2|abd|div +1|0|div|3|2|mult|mult +1|0|div|3|2|mult|div +1|0|div|1|cb|mult +1|0|div|3|sin|mult +1|0|div|0|cb|div +1|0|div|0|cbrt|div +1|0|div|0|abs|mult +1|0|div|0|abs|div +1|0|div|2|0|mult|div +1|0|div|2|sq|div +1|inv|2|1|div|add +1|inv|2|1|div|sub +1|inv|2|1|div|abd +1|inv|3|1|div|add +1|inv|3|1|div|sub +1|sq|0|mult +1|0|div|2|cos|div +1|0|div|abs +1|0|div|1|mult +1|0|div|2|mult +1|0|div|2|div +1|0|div|3|mult +1|0|div|3|div +1|0|div|3|sp|mult +1|0|div|2|abs|mult +1|0|div|2|abs|div +1|0|div|2|sin|mult +1|0|div|2|sin|div +1|0|div|2|cos|mult +0|abs|3|2|abd|mult +1|0|div|2|1|mult|mult +1|0|div|3|0|mult|div +1|0|div|3|sq|mult +1|0|div|3|sq|div +1|0|div|3|cb|mult +1|0|div|3|cb|div +1|0|div|2|cbrt|mult +1|0|div|2|cbrt|div +1|0|div|3|cbrt|mult +1|0|div|3|cbrt|div +1|0|div|3|abs|mult +1|0|div|3|abs|div +0|sq|inv +1|cb|3|2|abd|mult +1|cb|3|2|abd|div +1|cb|3|2|mult|mult +1|cb|3|2|mult|div +1|cb|3|2|div|mult +1|cb|0|sq|div +1|cb|0|cb|div +1|cb|0|sp|div +1|cb|0|cbrt|div +1|cb|0|abs|div +1|cb|2|0|mult|div +1|cb|2|sq|div +1|cb|2|cb|div +1|cb|3|2|sub|div +0|sq|sq +0|sq|1|mult +0|sq|1|div +0|sq|2|mult +0|sq|2|div +0|sq|3|mult +0|sq|3|div +0|sq|3|sp|mult +0|sq|3|sp|div +0|sq|2|abs|mult +0|sq|2|abs|div +0|sq|2|sin|mult +1|cb|2|cbrt|div +1|cb|2|sin|mult +1|cb|2|sin|div +1|cb|2|cos|mult +1|cb|2|cos|div +1|cb|2|1|mult|mult +1|cb|2|3|div|mult +1|cb|3|0|mult|mult +1|cb|3|0|mult|div +1|cb|3|0|div|mult +1|cb|3|sq|mult +1|cb|3|sq|div +1|cb|3|cb|div +1|cb|2|cbrt|mult +0|sq|2|sin|div +1|cb|3|cbrt|mult +1|cb|3|cbrt|div +1|cb|3|abs|mult +1|cb|3|abs|div +1|cb|3|sin|mult +1|cb|3|sin|div +1|cb|3|cos|mult +1|cb|3|cos|div +1|cb|3|1|mult|mult +1|cb|3|2|add|mult +1|cb|3|2|add|div +1|cb|3|2|sub|mult +0|sq|2|cb|div +0|sq|3|2|abd|mult +0|sq|3|2|abd|div +0|sq|3|2|mult|mult +0|sq|3|2|mult|div +0|sq|3|2|div|mult +0|sq|1|cb|mult +0|sq|1|cb|div +0|sq|0|abs|div +0|sq|1|sq|div +0|sq|1|sp|div +0|sq|1|sqrt|div +0|sq|1|cbrt|div +0|sq|2|sq|div +0|sq|3|2|sub|div +0|sq|2|sp|div +0|cb|inv +0|cb|sq +0|cb|cb +0|cb|abs +0|cb|1|mult +0|cb|1|div +0|cb|2|mult +0|cb|2|div +0|cb|3|mult +0|cb|3|div +0|cb|3|sp|mult +0|sq|3|cbrt|div +0|sq|2|cos|mult +0|sq|2|cos|div +0|sq|2|1|mult|mult +0|sq|2|1|mult|div +0|sq|2|1|div|mult +0|sq|2|3|div|mult +0|sq|3|0|mult|mult +0|sq|3|sq|div +0|sq|3|cb|mult +0|sq|3|cb|div +0|sq|2|cbrt|mult +0|sq|2|cbrt|div +0|sq|3|cbrt|mult +1|cb|2|abs|div +0|sq|3|abs|mult +0|sq|3|abs|div +0|sq|3|sin|mult +0|sq|3|sin|div +0|sq|3|cos|mult +0|sq|3|cos|div +0|sq|3|1|mult|mult +0|sq|3|1|mult|div +0|sq|3|1|div|mult +0|sq|3|2|add|mult +0|sq|3|2|add|div +0|sq|3|2|sub|mult +3|2|div|2|cbrt|add +3|2|div|3|exp|add +3|2|div|3|exp|sub +3|2|div|3|exp|abd +3|2|div|3|inv|add +3|2|div|3|inv|sub +3|2|div|3|inv|abd +3|2|div|3|sq|add +3|2|div|3|sq|sub +3|2|div|3|sq|abd +3|2|div|3|sq|mult +3|2|div|3|cb|add +3|2|div|3|cb|sub +3|2|div|3|cb|mult +3|2|div|3|0|mult|mult +3|2|div|2|cbrt|sub +3|2|div|2|cbrt|abd +3|2|div|2|cbrt|div +3|2|div|3|cbrt|add +3|2|div|3|cbrt|sub +3|2|div|3|cbrt|mult +3|2|div|3|abs|add +3|2|div|3|abs|sub +3|2|div|3|abs|abd +3|2|div|3|abs|mult +3|2|div|3|abs|div +3|2|div|3|sin|add +3|2|div|2|sin|sub +3|2|div|3|add +3|2|div|3|sub +3|2|div|3|mult +3|2|div|3|sp|add +3|2|div|3|sp|sub +3|2|div|3|sp|abd +3|2|div|3|sp|mult +3|2|div|2|abs|add +3|2|div|2|abs|sub +3|2|div|2|abs|abd +3|2|div|2|abs|mult +3|2|div|2|abs|div +3|2|div|2|sin|add +3|2|div|3|sin|sub +3|2|div|2|sin|abd +3|2|div|2|sin|mult +3|2|div|2|sin|div +3|2|div|2|cos|add +3|2|div|2|cos|sub +3|2|div|2|cos|abd +3|2|div|2|cos|mult +3|2|div|2|cos|div +3|2|div|2|1|mult|div +3|2|div|2|3|div|add +3|2|div|2|3|div|sub +3|2|div|2|3|div|abd +3|2|div|2|cb|div +3|2|div|3|2|mult|abd +3|2|div|1|cb|div +3|2|div|0|sq|div +3|2|div|0|cb|div +3|2|div|0|cbrt|div +3|2|div|0|abs|div +3|2|div|1|0|mult|div +3|2|div|1|sq|div +3|2|div|1|sp|div +3|2|div|1|sqrt|div +3|2|div|1|cbrt|div +3|2|div|2|0|mult|div +3|2|div|2|sq|div +3|2|div|3|2|mult|sub +1|cb|0|mult +1|cb|0|div +1|cb|inv +1|cb|sq +1|cb|cb +1|cb|2|mult +1|cb|2|div +1|cb|3|mult +1|cb|3|div +1|cb|3|sp|mult +1|cb|3|sp|div +1|cb|2|abs|mult +3|2|div|3|2|add|mult +3|2|div|3|sin|abd +3|2|div|3|sin|mult +3|2|div|3|sin|div +3|2|div|3|cos|add +3|2|div|3|cos|sub +3|2|div|3|cos|abd +3|2|div|3|cos|mult +3|2|div|3|cos|div +3|2|div|3|1|mult|mult +3|2|div|3|2|add|add +3|2|div|3|2|add|sub +3|2|div|3|2|add|abd +0|cb|3|sp|div +3|2|div|3|2|add|div +3|2|div|3|2|sub|add +3|2|div|3|2|sub|sub +3|2|div|3|2|sub|abd +3|2|div|3|2|sub|mult +3|2|div|3|2|sub|div +3|2|div|3|2|abd|add +3|2|div|3|2|abd|sub +3|2|div|3|2|abd|abd +3|2|div|3|2|abd|mult +3|2|div|3|2|abd|div +3|2|div|3|2|mult|add +0|cbrt|3|2|div|mult +0|cbrt|3|cos|mult +0|cbrt|3|cos|div +0|cbrt|3|1|mult|mult +0|cbrt|3|1|mult|div +0|cbrt|3|1|div|mult +0|cbrt|3|2|add|mult +0|cbrt|3|2|add|div +0|cbrt|3|2|sub|mult +0|cbrt|3|2|sub|div +0|cbrt|3|2|abd|mult +0|cbrt|3|2|abd|div +0|cbrt|3|2|mult|mult +0|cbrt|3|2|mult|div +0|cbrt|3|sin|div +0|cbrt|1|cb|mult +0|cbrt|1|cb|div +0|cbrt|0|abs|div +0|cbrt|1|sq|div +0|cbrt|1|sp|div +0|cbrt|1|sqrt|div +0|cbrt|1|cbrt|div +0|cbrt|2|sq|div +0|cbrt|2|cb|div +0|abs|0|add +0|abs|0|sub +0|abs|0|abd +0|cbrt|2|3|div|mult +0|cbrt|2|div +0|cbrt|3|mult +0|cbrt|3|div +0|cbrt|3|sp|mult +0|cbrt|2|abs|mult +0|cbrt|2|abs|div +0|cbrt|2|sin|mult +0|cbrt|2|sin|div +0|cbrt|2|cos|mult +0|cbrt|2|cos|div +0|cbrt|2|1|mult|mult +0|cbrt|2|1|mult|div +0|cbrt|2|1|div|mult +0|abs|0|mult +0|cbrt|3|0|mult|mult +0|cbrt|3|sq|mult +0|cbrt|3|sq|div +0|cbrt|3|cb|mult +0|cbrt|3|cb|div +0|cbrt|2|cbrt|mult +0|cbrt|2|cbrt|div +0|cbrt|3|cbrt|mult +0|cbrt|3|cbrt|div +0|cbrt|3|abs|mult +0|cbrt|3|abs|div +0|cbrt|3|sin|mult +0|abs|3|abs|mult +0|abs|3|0|mult|sub +0|abs|3|0|mult|abd +0|abs|3|0|mult|mult +0|abs|3|0|mult|div +0|abs|3|0|div|mult +0|abs|3|sq|mult +0|abs|3|sq|div +0|abs|3|cb|mult +0|abs|3|cb|div +0|abs|2|cbrt|mult +0|abs|2|cbrt|div +0|abs|3|cbrt|mult +0|abs|3|cbrt|div +0|abs|3|0|mult|add +0|abs|3|abs|div +0|abs|3|sin|mult +0|abs|3|sin|div +0|abs|3|cos|mult +0|abs|3|cos|div +0|abs|3|1|mult|mult +0|abs|3|1|mult|div +0|abs|3|1|div|mult +0|abs|3|2|add|mult +0|abs|3|2|add|div +0|abs|3|2|sub|mult +0|abs|3|2|sub|div +0|abs|3|div +0|abs|0|div +0|abs|inv +0|abs|sq +0|abs|cb +0|abs|sp +0|abs|sqrt +0|abs|cbrt +0|abs|1|mult +0|abs|1|div +0|abs|2|mult +0|abs|2|div +0|abs|3|mult +0|cbrt|2|mult +0|abs|3|sp|mult +0|abs|3|sp|div +0|abs|2|abs|mult +0|abs|2|abs|div +0|abs|2|sin|mult +0|abs|2|sin|div +0|abs|2|cos|mult +0|abs|2|cos|div +0|abs|2|1|mult|mult +0|abs|2|1|mult|div +0|abs|2|1|div|mult +0|abs|2|3|div|mult +0|cb|1|sqrt|div +0|cb|3|2|add|mult +0|cb|3|2|add|div +0|cb|3|2|sub|mult +0|cb|3|2|sub|div +0|cb|3|2|abd|mult +0|cb|3|2|abd|div +0|cb|3|2|mult|mult +0|cb|3|2|mult|div +0|cb|3|2|div|mult +0|cb|1|cb|div +0|cb|0|abs|div +0|cb|1|sq|div +0|cb|1|sp|div +0|cb|3|1|div|mult +0|cb|1|cbrt|div +0|cb|2|sq|div +0|cb|2|cb|div +0|cb|2|sp|div +0|sp|inv +0|sp|1|mult +0|sp|1|div +0|sp|2|mult +0|sp|2|div +0|sp|3|mult +0|sp|3|div +0|sp|3|sp|div +0|cb|3|cb|div +0|cb|2|abs|mult +0|cb|2|abs|div +0|cb|2|sin|mult +0|cb|2|sin|div +0|cb|2|cos|mult +0|cb|2|cos|div +0|cb|2|1|mult|mult +0|cb|2|1|mult|div +0|cb|2|1|div|mult +0|cb|2|3|div|mult +0|cb|3|0|mult|mult +0|cb|3|sq|mult +0|cb|3|sq|div +0|sp|2|abs|mult +0|cb|2|cbrt|mult +0|cb|2|cbrt|div +0|cb|3|cbrt|mult +0|cb|3|cbrt|div +0|cb|3|abs|mult +0|cb|3|abs|div +0|cb|3|sin|mult +0|cb|3|sin|div +0|cb|3|cos|mult +0|cb|3|cos|div +0|cb|3|1|mult|mult +0|cb|3|1|mult|div +0|sp|1|sq|div +0|sp|3|1|div|mult +0|sp|3|2|add|mult +0|sp|3|2|add|div +0|sp|3|2|sub|mult +0|sp|3|2|sub|div +0|sp|3|2|abd|mult +0|sp|3|2|abd|div +0|sp|3|2|mult|mult +0|sp|3|2|mult|div +0|sp|3|2|div|mult +0|sp|1|cb|mult +0|sp|1|cb|div +0|sp|0|abs|div +0|sp|3|1|mult|div +0|sp|1|sp|div +0|sp|1|sqrt|div +0|sp|1|cbrt|div +0|sp|2|sq|div +0|sp|2|cb|div +0|sp|2|sp|div +0|cbrt|inv +0|cbrt|sq +0|cbrt|cbrt +0|cbrt|abs +0|cbrt|1|mult +0|cbrt|1|div +0|sp|3|cb|mult +0|sp|2|abs|div +0|sp|2|sin|mult +0|sp|2|sin|div +0|sp|2|cos|mult +0|sp|2|cos|div +0|sp|2|1|mult|mult +0|sp|2|1|mult|div +0|sp|2|1|div|mult +0|sp|2|3|div|mult +0|sp|3|0|mult|mult +0|sp|3|sq|mult +0|sp|3|sq|div +1|sp|0|cb|mult +0|sp|3|cb|div +0|sp|2|cbrt|mult +0|sp|2|cbrt|div +0|sp|3|cbrt|mult +0|sp|3|cbrt|div +0|sp|3|abs|mult +0|sp|3|abs|div +0|sp|3|sin|mult +0|sp|3|sin|div +0|sp|3|cos|mult +0|sp|3|cos|div +0|sp|3|1|mult|mult +2|sq|0|cbrt|mult +2|sq|3|2|mult|add +2|sq|3|2|mult|sub +2|sq|3|2|mult|abd +2|sq|3|2|mult|mult +2|sq|3|2|div|add +2|sq|3|2|div|sub +2|sq|1|cb|mult +2|sq|1|cb|div +2|sq|0|sq|div +2|sq|0|cb|mult +2|sq|0|cb|div +2|sq|0|sp|mult +2|sq|0|sp|div +2|sq|3|2|abd|div +2|sq|0|cbrt|div +2|sq|0|abs|mult +2|sq|0|abs|div +2|sq|0|1|div|mult +2|sq|0|3|div|mult +2|sq|1|0|mult|mult +2|sq|1|0|mult|div +2|sq|1|0|div|mult +2|sq|1|sq|div +2|sq|1|sp|mult +2|sq|1|sp|div +2|sq|1|sqrt|mult +2|sq|3|1|mult|div +2|sq|3|abs|add +2|sq|3|abs|sub +2|sq|3|abs|mult +2|sq|3|abs|div +2|sq|3|sin|add +2|sq|3|sin|sub +2|sq|3|sin|mult +2|sq|3|sin|div +2|sq|3|cos|add +2|sq|3|cos|sub +2|sq|3|cos|mult +2|sq|3|cos|div +2|sq|3|1|mult|mult +2|sq|1|sqrt|div +2|sq|3|1|div|mult +2|sq|3|2|add|add +2|sq|3|2|add|sub +2|sq|3|2|add|mult +2|sq|3|2|add|div +2|sq|3|2|sub|add +2|sq|3|2|sub|sub +2|sq|3|2|sub|mult +2|sq|3|2|sub|div +2|sq|3|2|abd|add +2|sq|3|2|abd|sub +2|sq|3|2|abd|mult +2|cb|2|cos|add +2|cb|3|sp|abd +2|cb|3|sp|mult +2|cb|3|sp|div +2|cb|2|abs|add +2|cb|2|abs|sub +2|cb|2|abs|abd +2|cb|2|abs|mult +2|cb|2|abs|div +2|cb|2|sin|add +2|cb|2|sin|sub +2|cb|2|sin|abd +2|cb|2|sin|mult +2|cb|2|sin|div +2|cb|3|sp|sub +2|cb|2|cos|sub +2|cb|2|cos|abd +2|cb|2|cos|mult +2|cb|2|cos|div +2|cb|2|1|mult|mult +2|cb|2|1|div|mult +2|cb|2|3|div|add +2|cb|2|3|div|sub +2|cb|2|3|div|abd +2|cb|2|3|div|mult +2|cb|3|0|mult|mult +2|cb|3|0|mult|div +2|cb|sin +2|sq|1|cbrt|mult +2|sq|1|cbrt|div +2|sq|1|3|div|mult +2|sq|2|0|mult|mult +2|sq|2|0|div|mult +2|sq|2|inv|add +2|sq|2|inv|sub +2|cb|0|mult +2|cb|0|div +2|cb|inv +2|cb|sq +2|cb|cb +2|cb|abs +2|sq|3|cbrt|div +2|cb|cos +2|cb|1|mult +2|cb|1|div +2|cb|2|add +2|cb|2|sub +2|cb|2|abd +2|cb|3|add +2|cb|3|sub +2|cb|3|abd +2|cb|3|mult +2|cb|3|div +2|cb|3|sp|add +2|inv|3|2|sub|abd +2|inv|3|abs|sub +2|inv|3|abs|abd +2|inv|3|sin|add +2|inv|3|sin|sub +2|inv|3|sin|abd +2|inv|3|cos|add +2|inv|3|cos|sub +2|inv|3|cos|abd +2|inv|3|2|add|add +2|inv|3|2|add|sub +2|inv|3|2|add|abd +2|inv|3|2|sub|add +2|inv|3|2|sub|sub +2|inv|3|abs|add +2|inv|3|2|abd|add +2|inv|3|2|abd|sub +2|inv|3|2|abd|abd +2|inv|3|2|mult|add +2|inv|3|2|mult|sub +2|inv|3|2|mult|abd +2|inv|3|2|div|add +2|inv|3|2|div|sub +2|inv|3|2|div|abd +2|sq|0|mult +2|sq|0|div +2|sq|inv +2|inv|3|inv|add +2|inv|2|abs|abd +2|inv|2|sin|add +2|inv|2|sin|sub +2|inv|2|sin|abd +2|inv|2|cos|add +2|inv|2|cos|sub +2|inv|2|cos|abd +2|inv|2|3|div|add +2|inv|2|3|div|sub +2|inv|2|3|div|abd +2|inv|3|exp|add +2|inv|3|exp|sub +2|inv|3|exp|abd +2|sq|sq +2|inv|3|inv|sub +2|inv|3|inv|abd +2|inv|3|sq|add +2|inv|3|sq|sub +2|inv|3|sq|abd +2|inv|3|cb|add +2|inv|3|cb|sub +2|inv|2|cbrt|add +2|inv|2|cbrt|sub +2|inv|2|cbrt|abd +2|inv|3|cbrt|add +2|inv|3|cbrt|sub +2|sq|3|sq|add +2|sq|2|cos|div +2|sq|2|1|mult|mult +2|sq|2|1|div|mult +2|sq|2|3|div|add +2|sq|2|3|div|sub +2|sq|2|3|div|mult +2|sq|3|0|mult|mult +2|sq|3|0|mult|div +2|sq|3|0|div|mult +2|sq|3|exp|add +2|sq|3|exp|sub +2|sq|3|inv|add +2|sq|3|inv|sub +2|sq|2|cos|mult +2|sq|3|sq|sub +2|sq|3|sq|abd +2|sq|3|sq|div +2|sq|3|cb|add +2|sq|3|cb|sub +2|sq|3|cb|mult +2|sq|3|cb|div +2|sq|2|cbrt|add +2|sq|2|cbrt|sub +2|sq|3|cbrt|add +2|sq|3|cbrt|sub +2|sq|3|cbrt|mult +2|sq|3|sp|abd +2|sq|sin +2|sq|cos +2|sq|1|mult +2|sq|1|div +2|sq|2|add +2|sq|2|sub +2|sq|3|add +2|sq|3|sub +2|sq|3|mult +2|sq|3|div +2|sq|3|sp|add +2|sq|3|sp|sub +2|cb|3|0|div|mult +2|sq|3|sp|mult +2|sq|3|sp|div +2|sq|2|abs|add +2|sq|2|abs|sub +2|sq|2|abs|mult +2|sq|2|abs|div +2|sq|2|sin|add +2|sq|2|sin|sub +2|sq|2|sin|mult +2|sq|2|sin|div +2|sq|2|cos|add +2|sq|2|cos|sub +2|sp|3|cbrt|sub +2|sp|3|inv|add +2|sp|3|inv|sub +2|sp|3|sq|add +2|sp|3|sq|sub +2|sp|3|sq|mult +2|sp|3|sq|div +2|sp|3|cb|add +2|sp|3|cb|sub +2|sp|3|cb|mult +2|sp|3|cb|div +2|sp|2|cbrt|add +2|sp|2|cbrt|sub +2|sp|3|cbrt|add +2|sp|3|exp|sub +2|sp|3|cbrt|mult +2|sp|3|cbrt|div +2|sp|3|abs|add +2|sp|3|abs|sub +2|sp|3|abs|mult +2|sp|3|abs|div +2|sp|3|sin|add +2|sp|3|sin|sub +2|sp|3|sin|mult +2|sp|3|sin|div +2|sp|3|cos|add +2|sp|3|cos|sub +2|sp|2|cos|add +2|sp|3|div +2|sp|3|sp|add +2|sp|3|sp|sub +2|sp|3|sp|abd +2|sp|3|sp|div +2|sp|2|abs|add +2|sp|2|abs|sub +2|sp|2|abs|mult +2|sp|2|abs|div +2|sp|2|sin|add +2|sp|2|sin|sub +2|sp|2|sin|mult +2|sp|2|sin|div +2|sp|3|cos|mult +2|sp|2|cos|sub +2|sp|2|cos|mult +2|sp|2|cos|div +2|sp|2|1|mult|mult +2|sp|2|1|div|mult +2|sp|2|3|div|add +2|sp|2|3|div|sub +2|sp|2|3|div|mult +2|sp|3|0|mult|mult +2|sp|3|0|mult|div +2|sp|3|0|div|mult +2|sp|3|exp|add +2|sp|1|sqrt|mult +2|sp|0|sp|div +2|sp|0|cbrt|mult +2|sp|0|cbrt|div +2|sp|0|abs|mult +2|sp|0|abs|div +2|sp|0|1|div|mult +2|sp|0|3|div|mult +2|sp|1|0|mult|mult +2|sp|1|0|mult|div +2|sp|1|0|div|mult +2|sp|1|sq|mult +2|sp|1|sq|div +2|sp|1|sp|div +2|sp|0|cb|div +2|sp|1|sqrt|div +2|sp|1|cbrt|mult +2|sp|1|cbrt|div +2|sp|1|3|div|mult +2|sp|2|0|mult|mult +2|sp|2|0|div|mult +2|sp|2|inv|add +2|sp|2|inv|sub +2|sp|2|sq|add +2|sp|2|sq|sub +2|sp|2|cb|add +2|sp|2|cb|sub +2|sp|3|2|abd|sub +2|sp|3|cos|div +2|sp|3|1|mult|mult +2|sp|3|1|mult|div +2|sp|3|1|div|mult +2|sp|3|2|add|add +2|sp|3|2|add|sub +2|sp|3|2|add|mult +2|sp|3|2|add|div +2|sp|3|2|sub|add +2|sp|3|2|sub|sub +2|sp|3|2|sub|mult +2|sp|3|2|sub|div +2|sp|3|2|abd|add +2|sp|3|mult +2|sp|3|2|abd|mult +2|sp|3|2|abd|div +2|sp|3|2|mult|add +2|sp|3|2|mult|sub +2|sp|3|2|mult|mult +2|sp|3|2|div|add +2|sp|3|2|div|sub +2|sp|1|cb|mult +2|sp|1|cb|div +2|sp|0|sq|mult +2|sp|0|sq|div +2|sp|0|cb|mult +2|cb|3|1|div|mult +2|cb|3|abs|div +2|cb|3|sin|add +2|cb|3|sin|sub +2|cb|3|sin|abd +2|cb|3|sin|mult +2|cb|3|sin|div +2|cb|3|cos|add +2|cb|3|cos|sub +2|cb|3|cos|abd +2|cb|3|cos|mult +2|cb|3|cos|div +2|cb|3|1|mult|mult +2|cb|3|1|mult|div +2|cb|3|abs|mult +2|cb|3|2|add|add +2|cb|3|2|add|sub +2|cb|3|2|add|abd +2|cb|3|2|add|mult +2|cb|3|2|add|div +2|cb|3|2|sub|add +2|cb|3|2|sub|sub +2|cb|3|2|sub|abd +2|cb|3|2|sub|mult +2|cb|3|2|sub|div +2|cb|3|2|abd|add +2|cb|3|2|abd|sub +2|cb|3|cb|abd +2|cb|3|exp|add +2|cb|3|exp|sub +2|cb|3|exp|abd +2|cb|3|inv|add +2|cb|3|inv|sub +2|cb|3|inv|abd +2|cb|3|sq|add +2|cb|3|sq|sub +2|cb|3|sq|abd +2|cb|3|sq|mult +2|cb|3|sq|div +2|cb|3|cb|add +2|cb|3|cb|sub +2|cb|3|2|abd|abd +2|cb|3|cb|div +2|cb|2|cbrt|add +2|cb|2|cbrt|sub +2|cb|2|cbrt|abd +2|cb|3|cbrt|add +2|cb|3|cbrt|sub +2|cb|3|cbrt|abd +2|cb|3|cbrt|mult +2|cb|3|cbrt|div +2|cb|3|abs|add +2|cb|3|abs|sub +2|cb|3|abs|abd +2|cb|2|sq|sub +2|cb|1|sp|mult +2|cb|1|sp|div +2|cb|1|sqrt|mult +2|cb|1|sqrt|div +2|cb|1|cbrt|mult +2|cb|1|cbrt|div +2|cb|1|3|div|mult +2|cb|2|0|mult|mult +2|cb|2|0|div|mult +2|cb|2|inv|add +2|cb|2|inv|sub +2|cb|2|inv|abd +2|cb|2|sq|add +2|cb|1|sq|div +2|cb|2|sq|abd +2|sp|0|mult +2|sp|0|div +2|sp|inv +2|sp|sin +2|sp|cos +2|sp|1|mult +2|sp|1|div +2|sp|2|add +2|sp|2|sub +2|sp|3|add +2|sp|3|sub +2|cb|0|cb|div +2|cb|3|2|abd|mult +2|cb|3|2|abd|div +2|cb|3|2|mult|add +2|cb|3|2|mult|sub +2|cb|3|2|mult|abd +2|cb|3|2|mult|mult +2|cb|3|2|div|add +2|cb|3|2|div|sub +2|cb|3|2|div|abd +2|cb|1|cb|div +2|cb|0|sq|mult +2|cb|0|sq|div +2|inv|2|abs|sub +2|cb|0|sp|mult +2|cb|0|sp|div +2|cb|0|cbrt|mult +2|cb|0|cbrt|div +2|cb|0|abs|mult +2|cb|0|abs|div +2|cb|0|1|div|mult +2|cb|0|3|div|mult +2|cb|1|0|mult|mult +2|cb|1|0|mult|div +2|cb|1|0|div|mult +2|cb|1|sq|mult +1|2|div|1|mult +1|cbrt|2|0|mult|div +1|cbrt|2|sq|div +1|cbrt|2|cb|div +1|2|div|0|mult +1|2|div|0|div +1|2|div|sq +1|2|div|cb +1|2|div|sp +1|2|div|cbrt +1|2|div|abs +1|2|div|1|add +1|2|div|1|sub +1|2|div|1|abd +1|cbrt|1|0|div|mult +1|2|div|2|div +1|2|div|3|mult +1|2|div|3|div +1|2|div|3|sp|mult +1|2|div|2|abs|mult +1|2|div|2|abs|div +1|2|div|2|sin|mult +1|2|div|2|sin|div +1|2|div|2|cos|mult +1|2|div|2|cos|div +1|2|div|2|1|mult|add +1|2|div|2|1|mult|sub +1|cbrt|3|2|div|mult +1|cbrt|3|sin|mult +1|cbrt|3|sin|div +1|cbrt|3|cos|mult +1|cbrt|3|cos|div +1|cbrt|3|1|mult|mult +1|cbrt|3|2|add|mult +1|cbrt|3|2|add|div +1|cbrt|3|2|sub|mult +1|cbrt|3|2|sub|div +1|cbrt|3|2|abd|mult +1|cbrt|3|2|abd|div +1|cbrt|3|2|mult|mult +1|cbrt|3|2|mult|div +1|2|div|2|1|mult|abd +1|cbrt|0|sq|mult +1|cbrt|0|sq|div +1|cbrt|0|cb|mult +1|cbrt|0|cb|div +1|cbrt|0|sp|mult +1|cbrt|0|cbrt|mult +1|cbrt|0|cbrt|div +1|cbrt|0|abs|mult +1|cbrt|0|abs|div +1|cbrt|0|2|div|mult +1|cbrt|0|3|div|mult +1|cbrt|1|0|mult|mult +1|2|div|2|0|mult|div +1|2|div|0|sq|div +1|2|div|0|cb|mult +1|2|div|0|cb|div +1|2|div|0|sp|mult +1|2|div|0|cbrt|mult +1|2|div|0|cbrt|div +1|2|div|0|abs|mult +1|2|div|0|abs|div +1|2|div|1|0|mult|mult +1|2|div|1|sq|mult +1|2|div|1|sp|mult +1|2|div|1|sqrt|mult +1|2|div|1|cbrt|mult +1|2|div|0|sq|mult +1|2|div|2|sq|div +1|2|div|2|cb|div +1|3|div|0|mult +1|3|div|0|div +1|3|div|sq +1|3|div|cb +1|3|div|sp +1|3|div|cbrt +1|3|div|abs +1|3|div|1|add +1|3|div|1|sub +1|3|div|1|abd +1|2|div|3|cos|mult +1|2|div|3|0|mult|mult +1|2|div|3|0|mult|div +1|2|div|3|sq|mult +1|2|div|3|sq|div +1|2|div|3|cb|mult +1|2|div|3|cb|div +1|2|div|2|cbrt|div +1|2|div|3|cbrt|mult +1|2|div|3|cbrt|div +1|2|div|3|abs|mult +1|2|div|3|abs|div +1|2|div|3|sin|mult +1|2|div|3|sin|div +1|cbrt|3|abs|div +1|2|div|3|cos|div +1|2|div|3|1|mult|add +1|2|div|3|1|mult|sub +1|2|div|3|1|mult|mult +1|2|div|3|2|add|mult +1|2|div|3|2|add|div +1|2|div|3|2|sub|mult +1|2|div|3|2|sub|div +1|2|div|3|2|abd|mult +1|2|div|3|2|abd|div +1|2|div|3|2|mult|div +1|2|div|1|cb|mult +1|sqrt|2|cbrt|mult +1|sqrt|2|sin|mult +1|sqrt|2|sin|div +1|sqrt|2|cos|mult +1|sqrt|2|cos|div +1|sqrt|2|1|mult|mult +1|sqrt|2|3|div|mult +1|sqrt|3|0|mult|mult +1|sqrt|3|0|mult|div +1|sqrt|3|0|div|mult +1|sqrt|3|sq|mult +1|sqrt|3|sq|div +1|sqrt|3|cb|mult +1|sqrt|3|cb|div +1|sqrt|2|abs|div +1|sqrt|2|cbrt|div +1|sqrt|3|cbrt|mult +1|sqrt|3|cbrt|div +1|sqrt|3|abs|mult +1|sqrt|3|abs|div +1|sqrt|3|sin|mult +1|sqrt|3|sin|div +1|sqrt|3|cos|mult +1|sqrt|3|cos|div +1|sqrt|3|1|mult|mult +1|sqrt|3|2|add|mult +1|sqrt|3|2|add|div +1|sp|2|sp|div +1|sp|0|cb|div +1|sp|0|sp|div +1|sp|0|cbrt|mult +1|sp|0|cbrt|div +1|sp|0|abs|mult +1|sp|0|abs|div +1|sp|0|2|div|mult +1|sp|0|3|div|mult +1|sp|1|0|mult|mult +1|sp|1|0|div|mult +1|sp|2|0|mult|div +1|sp|2|sq|div +1|sp|2|cb|div +1|sqrt|3|2|sub|mult +1|sqrt|0|mult +1|sqrt|0|div +1|sqrt|inv +1|sqrt|cb +1|sqrt|sqrt +1|sqrt|cbrt +1|sqrt|2|mult +1|sqrt|2|div +1|sqrt|3|mult +1|sqrt|3|div +1|sqrt|3|sp|mult +1|sqrt|2|abs|mult +1|cbrt|2|3|div|mult +1|cbrt|cbrt +1|cbrt|2|mult +1|cbrt|2|div +1|cbrt|3|mult +1|cbrt|3|div +1|cbrt|3|sp|mult +1|cbrt|2|abs|mult +1|cbrt|2|abs|div +1|cbrt|2|sin|mult +1|cbrt|2|sin|div +1|cbrt|2|cos|mult +1|cbrt|2|cos|div +1|cbrt|2|1|mult|mult +1|cbrt|sq +1|cbrt|3|0|mult|mult +1|cbrt|3|0|mult|div +1|cbrt|3|0|div|mult +1|cbrt|3|sq|mult +1|cbrt|3|sq|div +1|cbrt|3|cb|mult +1|cbrt|3|cb|div +1|cbrt|2|cbrt|mult +1|cbrt|2|cbrt|div +1|cbrt|3|cbrt|mult +1|cbrt|3|cbrt|div +1|cbrt|3|abs|mult +1|sqrt|0|cbrt|div +1|sqrt|3|2|sub|div +1|sqrt|3|2|abd|mult +1|sqrt|3|2|abd|div +1|sqrt|3|2|mult|mult +1|sqrt|3|2|mult|div +1|sqrt|3|2|div|mult +1|sqrt|0|sq|mult +1|sqrt|0|sq|div +1|sqrt|0|cb|mult +1|sqrt|0|cb|div +1|sqrt|0|sp|mult +1|sqrt|0|cbrt|mult +1|3|div|1|mult +1|sqrt|0|abs|mult +1|sqrt|0|abs|div +1|sqrt|0|2|div|mult +1|sqrt|0|3|div|mult +1|sqrt|1|0|mult|mult +1|sqrt|1|0|div|mult +1|sqrt|2|0|mult|div +1|sqrt|2|sq|div +1|sqrt|2|cb|div +1|cbrt|0|mult +1|cbrt|0|div +1|cbrt|inv +2|0|div|2|abs|mult +2|0|mult|1|3|div|mult +2|0|div|0|div +2|0|div|sq +2|0|div|cb +2|0|div|sp +2|0|div|cbrt +2|0|div|abs +2|0|div|1|mult +2|0|div|1|div +2|0|div|2|mult +2|0|div|3|mult +2|0|div|3|div +2|0|div|3|sp|mult +2|0|mult|1|cbrt|div +2|0|div|2|abs|div +2|0|div|2|sin|mult +2|0|div|2|sin|div +2|0|div|2|cos|mult +2|0|div|2|cos|div +2|0|div|2|1|mult|mult +2|0|div|3|0|mult|div +2|0|div|3|0|div|add +2|0|div|3|0|div|sub +2|0|div|3|0|div|abd +2|0|div|3|sq|mult +2|0|div|3|sq|div +2|0|mult|0|2|div|abd +2|0|mult|1|cb|div +2|0|mult|0|sq|mult +2|0|mult|0|cb|mult +2|0|mult|0|sp|mult +2|0|mult|0|cbrt|mult +2|0|mult|0|abs|add +2|0|mult|0|abs|sub +2|0|mult|0|abs|abd +2|0|mult|0|abs|mult +2|0|mult|0|abs|div +2|0|mult|0|1|div|mult +2|0|mult|0|2|div|add +2|0|mult|0|2|div|sub +2|0|div|3|cb|mult +2|0|mult|0|3|div|add +2|0|mult|0|3|div|sub +2|0|mult|0|3|div|abd +2|0|mult|0|3|div|mult +2|0|mult|1|0|mult|mult +2|0|mult|1|sq|mult +2|0|mult|1|sq|div +2|0|mult|1|sp|mult +2|0|mult|1|sp|div +2|0|mult|1|sqrt|mult +2|0|mult|1|sqrt|div +2|0|mult|1|cbrt|mult +2|inv|nexp +2|0|div|1|0|mult|div +2|0|div|1|sq|mult +2|0|div|1|sq|div +2|0|div|0|inv|add +2|0|div|0|inv|sub +2|0|div|0|inv|abd +2|0|div|1|sp|mult +2|0|div|1|sp|div +2|0|div|1|sqrt|mult +2|0|div|1|sqrt|div +2|0|div|1|cbrt|mult +2|0|div|1|cbrt|div +2|inv|exp +2|0|div|0|abs|div +2|inv|abs +2|inv|sin +2|inv|cos +2|inv|2|add +2|inv|2|sub +2|inv|2|abd +2|inv|3|add +2|inv|3|sub +2|inv|3|sp|add +2|inv|3|sp|sub +2|inv|3|sp|abd +2|inv|2|abs|add +2|0|div|3|2|add|mult +2|0|div|3|cb|div +2|0|div|2|cbrt|mult +2|0|div|3|cbrt|mult +2|0|div|3|cbrt|div +2|0|div|3|abs|mult +2|0|div|3|abs|div +2|0|div|3|sin|mult +2|0|div|3|sin|div +2|0|div|3|cos|mult +2|0|div|3|cos|div +2|0|div|3|1|mult|mult +2|0|div|3|1|mult|div +2|0|mult|1|cb|mult +2|0|div|3|2|add|div +2|0|div|3|2|sub|mult +2|0|div|3|2|sub|div +2|0|div|3|2|abd|mult +2|0|div|3|2|abd|div +2|0|div|3|2|mult|mult +2|0|div|1|cb|mult +2|0|div|1|cb|div +2|0|div|0|sq|div +2|0|div|0|cb|div +2|0|div|0|cbrt|div +2|0|div|0|abs|mult +1|3|div|0|cbrt|mult +1|3|div|3|2|add|mult +1|3|div|3|2|add|div +1|3|div|3|2|sub|mult +1|3|div|3|2|sub|div +1|3|div|3|2|abd|mult +1|3|div|3|2|abd|div +1|3|div|3|2|mult|div +1|3|div|1|cb|mult +1|3|div|0|sq|mult +1|3|div|0|sq|div +1|3|div|0|cb|mult +1|3|div|0|cb|div +1|3|div|0|sp|mult +1|3|div|3|1|mult|sub +1|3|div|0|cbrt|div +1|3|div|0|abs|mult +1|3|div|0|abs|div +1|3|div|1|0|mult|mult +1|3|div|1|sq|mult +1|3|div|1|sp|mult +1|3|div|1|sqrt|mult +1|3|div|1|cbrt|mult +1|3|div|1|2|div|add +1|3|div|1|2|div|sub +1|3|div|1|2|div|abd +1|3|div|2|0|mult|div +1|3|div|3|0|mult|div +1|3|div|2|mult +1|3|div|2|div +1|3|div|3|div +1|3|div|2|abs|mult +1|3|div|2|abs|div +1|3|div|2|sin|mult +1|3|div|2|sin|div +1|3|div|2|cos|mult +1|3|div|2|cos|div +1|3|div|2|1|mult|add +1|3|div|2|1|mult|sub +1|3|div|2|1|mult|abd +1|3|div|2|1|mult|mult +1|3|div|2|sq|div +1|3|div|3|sq|div +1|3|div|3|cb|div +1|3|div|2|cbrt|mult +1|3|div|2|cbrt|div +1|3|div|3|cbrt|div +1|3|div|3|abs|mult +1|3|div|3|abs|div +1|3|div|3|sin|mult +1|3|div|3|sin|div +1|3|div|3|cos|mult +1|3|div|3|cos|div +1|3|div|3|1|mult|add +2|0|mult|3|sin|div +2|0|mult|3|0|mult|sub +2|0|mult|3|0|mult|abd +2|0|mult|3|0|mult|mult +2|0|mult|3|sq|mult +2|0|mult|3|sq|div +2|0|mult|3|cb|mult +2|0|mult|3|cb|div +2|0|mult|2|cbrt|mult +2|0|mult|3|cbrt|mult +2|0|mult|3|cbrt|div +2|0|mult|3|abs|mult +2|0|mult|3|abs|div +2|0|mult|3|sin|mult +2|0|mult|3|0|mult|add +2|0|mult|3|cos|mult +2|0|mult|3|cos|div +2|0|mult|3|1|mult|mult +2|0|mult|3|1|mult|div +2|0|mult|3|1|div|mult +2|0|mult|3|2|add|mult +2|0|mult|3|2|add|div +2|0|mult|3|2|sub|mult +2|0|mult|3|2|sub|div +2|0|mult|3|2|abd|mult +2|0|mult|3|2|abd|div +2|0|mult|3|2|mult|mult +2|0|mult|3|mult +2|0|mult|0|add +2|0|mult|0|sub +2|0|mult|0|abd +2|0|mult|0|mult +2|0|mult|inv +2|0|mult|sq +2|0|mult|cb +2|0|mult|cbrt +2|0|mult|abs +2|0|mult|1|mult +2|0|mult|1|div +2|0|mult|2|mult +3|2|div|2|div +2|0|mult|3|div +2|0|mult|3|sp|mult +2|0|mult|3|sp|div +2|0|mult|2|abs|mult +2|0|mult|2|abs|div +2|0|mult|2|sin|mult +2|0|mult|2|sin|div +2|0|mult|2|cos|mult +2|0|mult|2|cos|div +2|0|mult|2|1|mult|mult +2|0|mult|2|1|div|mult +2|0|mult|2|3|div|mult +3|inv|3|exp|sub +3|inv|2|abs|add +3|inv|2|abs|sub +3|inv|2|abs|abd +3|inv|2|sin|add +3|inv|2|sin|sub +3|inv|2|sin|abd +3|inv|2|cos|add +3|inv|2|cos|sub +3|inv|2|cos|abd +3|inv|2|3|div|add +3|inv|2|3|div|sub +3|inv|2|3|div|abd +3|inv|3|exp|add +3|inv|3|sp|abd +3|inv|3|exp|abd +3|sq|0|mult +3|sq|0|div +3|sq|inv +3|sq|sq +3|sq|sin +3|sq|cos +3|sq|1|mult +3|sq|1|div +3|sq|2|add +3|sq|2|sub +3|sq|2|abd +3|exp|2|3|div|abd +3|exp|3|sp|sub +3|exp|3|sp|abd +3|exp|2|abs|add +3|exp|2|abs|sub +3|exp|2|abs|abd +3|exp|2|sin|add +3|exp|2|sin|sub +3|exp|2|sin|abd +3|exp|2|cos|add +3|exp|2|cos|sub +3|exp|2|cos|abd +3|exp|2|3|div|add +3|exp|2|3|div|sub +3|sq|2|mult +3|inv|exp +3|inv|nexp +3|inv|abs +3|inv|sin +3|inv|cos +3|inv|2|add +3|inv|2|sub +3|inv|2|abd +3|inv|3|add +3|inv|3|sub +3|inv|3|sp|add +3|inv|3|sp|sub +3|sq|0|sp|div +3|sq|3|exp|sub +3|sq|3|inv|add +3|sq|3|inv|sub +3|sq|2|cbrt|div +3|sq|3|abs|div +3|sq|3|sin|div +3|sq|3|cos|div +3|sq|3|2|add|div +3|sq|3|2|sub|div +3|sq|3|2|abd|div +3|sq|1|cb|div +3|sq|0|sq|div +3|sq|0|cb|div +3|sq|3|exp|add +3|sq|0|cbrt|div +3|sq|0|abs|div +3|sq|1|0|mult|div +3|sq|1|sq|div +3|sq|1|sp|div +3|sq|1|sqrt|div +3|sq|1|cbrt|div +3|sq|2|0|mult|div +3|sq|2|sq|div +3|sq|2|cb|div +3|cb|0|mult +3|cb|0|div +3|sq|2|sin|mult +3|sq|2|div +3|sq|3|add +3|sq|3|sub +3|sq|3|sp|add +3|sq|3|sp|sub +3|sq|3|sp|abd +3|sq|2|abs|add +3|sq|2|abs|sub +3|sq|2|abs|abd +3|sq|2|abs|mult +3|sq|2|abs|div +3|sq|2|sin|add +3|sq|2|sin|sub +3|exp|3|sp|add +3|sq|2|sin|div +3|sq|2|cos|add +3|sq|2|cos|sub +3|sq|2|cos|mult +3|sq|2|cos|div +3|sq|2|1|mult|mult +3|sq|2|1|mult|div +3|sq|2|1|div|mult +3|sq|2|3|div|add +3|sq|2|3|div|sub +3|sq|3|0|mult|mult +3|sq|3|0|div|mult +3|0|mult|2|cos|mult +3|0|mult|sp +3|0|mult|cbrt +3|0|mult|abs +3|0|mult|1|mult +3|0|mult|1|div +3|0|mult|2|mult +3|0|mult|2|div +3|0|mult|3|mult +3|0|mult|3|sp|mult +3|0|mult|2|abs|mult +3|0|mult|2|abs|div +3|0|mult|2|sin|mult +3|0|mult|2|sin|div +3|0|mult|cb +3|0|mult|2|cos|div +3|0|mult|2|1|mult|mult +3|0|mult|2|1|mult|div +3|0|mult|2|1|div|mult +3|0|mult|2|cbrt|div +3|0|mult|3|abs|div +3|0|mult|3|sin|div +3|0|mult|3|cos|div +3|0|mult|3|2|add|div +3|0|mult|3|2|sub|div +3|0|mult|3|2|abd|div +3|0|mult|1|cb|div +2|3|div|0|cbrt|div +2|3|div|3|sq|div +2|3|div|3|cb|div +2|3|div|3|cbrt|div +2|3|div|3|abs|div +2|3|div|3|sin|div +2|3|div|3|cos|div +2|3|div|3|1|mult|div +2|3|div|3|2|add|div +2|3|div|3|2|sub|div +2|3|div|3|2|abd|div +2|3|div|1|cb|div +2|3|div|0|sq|div +2|3|div|0|cb|div +3|0|mult|0|abs|div +2|3|div|0|abs|div +2|3|div|1|0|mult|div +2|3|div|1|sq|div +2|3|div|1|sp|div +2|3|div|1|sqrt|div +2|3|div|1|cbrt|div +3|0|mult|0|add +3|0|mult|0|sub +3|0|mult|0|abd +3|0|mult|0|mult +3|0|mult|inv +3|0|mult|sq +3|0|div|1|0|mult|div +3|0|div|2|1|mult|div +3|0|div|2|cbrt|div +3|0|div|3|abs|div +3|0|div|3|sin|div +3|0|div|3|cos|div +3|0|div|3|2|add|div +3|0|div|3|2|sub|div +3|0|div|3|2|abd|div +3|0|div|1|cb|div +3|0|div|0|sq|div +3|0|div|0|cb|div +3|0|div|0|cbrt|div +3|0|div|0|abs|div +3|0|div|2|1|mult|mult +3|0|div|1|sq|div +3|0|div|1|sp|div +3|0|div|1|sqrt|div +3|0|div|1|cbrt|div +3|0|div|2|0|mult|div +3|0|div|2|sq|div +3|0|div|2|cb|div +3|exp|2|add +3|exp|2|sub +3|exp|2|abd +3|exp|3|add +3|exp|3|sub +3|0|div|abs +3|0|mult|1|sq|div +3|0|mult|1|sp|div +3|0|mult|1|sqrt|div +3|0|mult|1|cbrt|div +3|0|mult|2|sq|div +3|0|mult|2|cb|div +3|0|mult|2|sp|div +3|0|div|0|div +3|0|div|sq +3|0|div|cb +3|0|div|sp +3|0|div|cbrt +3|cb|inv +3|0|div|1|mult +3|0|div|1|div +3|0|div|2|mult +3|0|div|2|div +3|0|div|3|mult +3|0|div|3|sp|mult +3|0|div|2|abs|mult +3|0|div|2|abs|div +3|0|div|2|sin|mult +3|0|div|2|sin|div +3|0|div|2|cos|mult +3|0|div|2|cos|div +2|cbrt|1|0|mult|div +2|cbrt|3|cbrt|div +2|cbrt|3|abs|div +2|cbrt|3|sin|div +2|cbrt|3|cos|div +2|cbrt|3|1|mult|div +2|cbrt|3|2|add|div +2|cbrt|3|2|sub|div +2|cbrt|3|2|abd|div +2|cbrt|1|cb|div +2|cbrt|0|sq|div +2|cbrt|0|cb|div +2|cbrt|0|cbrt|div +2|cbrt|0|abs|div +2|cbrt|3|cb|div +2|cbrt|1|sq|div +2|cbrt|1|sp|div +2|cbrt|1|sqrt|div +2|cbrt|1|cbrt|div +3|cbrt|0|mult +3|cbrt|0|div +3|cbrt|exp +3|cbrt|nexp +3|cbrt|inv +3|cbrt|sq +3|cbrt|cbrt +3|cbrt|abs +2|cbrt|3|exp|sub +2|cbrt|2|cos|abd +2|cbrt|2|cos|mult +2|cbrt|2|cos|div +2|cbrt|2|1|mult|mult +2|cbrt|2|1|div|mult +2|cbrt|2|3|div|add +2|cbrt|2|3|div|sub +2|cbrt|2|3|div|abd +2|cbrt|2|3|div|mult +2|cbrt|3|0|mult|mult +2|cbrt|3|0|mult|div +2|cbrt|3|0|div|mult +2|cbrt|3|exp|add +3|cbrt|sin +2|cbrt|3|exp|abd +2|cbrt|3|inv|add +2|cbrt|3|inv|sub +2|cbrt|3|inv|abd +2|cbrt|3|sq|add +2|cbrt|3|sq|sub +2|cbrt|3|sq|abd +2|cbrt|3|sq|mult +2|cbrt|3|sq|div +2|cbrt|3|cb|add +2|cbrt|3|cb|sub +2|cbrt|3|cb|mult +3|cbrt|3|inv|sub +3|cbrt|2|cos|div +3|cbrt|2|1|mult|mult +3|cbrt|2|1|mult|div +3|cbrt|2|1|div|mult +3|cbrt|2|3|div|add +3|cbrt|2|3|div|sub +3|cbrt|2|3|div|abd +3|cbrt|3|0|mult|mult +3|cbrt|3|0|div|mult +3|cbrt|3|exp|add +3|cbrt|3|exp|sub +3|cbrt|3|exp|abd +3|cbrt|3|inv|add +3|cbrt|2|cos|mult +3|cbrt|3|inv|abd +3|cbrt|3|sq|add +3|cbrt|3|sq|sub +3|cbrt|3|sq|abd +3|cbrt|3|cb|add +3|cbrt|3|cb|sub +3|cbrt|2|cbrt|add +3|cbrt|2|cbrt|sub +3|cbrt|2|cbrt|abd +3|cbrt|2|cbrt|mult +3|cbrt|2|cbrt|div +3|cbrt|3|abs|div +3|cbrt|2|abs|add +3|cbrt|cos +3|cbrt|1|mult +3|cbrt|1|div +3|cbrt|2|add +3|cbrt|2|sub +3|cbrt|2|abd +3|cbrt|2|mult +3|cbrt|2|div +3|cbrt|3|add +3|cbrt|3|sub +3|cbrt|3|sp|add +3|cbrt|3|sp|sub +3|cbrt|3|sp|abd +2|cbrt|2|cos|sub +3|cbrt|2|abs|sub +3|cbrt|2|abs|abd +3|cbrt|2|abs|mult +3|cbrt|2|abs|div +3|cbrt|2|sin|add +3|cbrt|2|sin|sub +3|cbrt|2|sin|abd +3|cbrt|2|sin|mult +3|cbrt|2|sin|div +3|cbrt|2|cos|add +3|cbrt|2|cos|sub +3|cbrt|2|cos|abd +3|cb|3|0|div|mult +3|cb|2|sin|div +3|cb|2|cos|add +3|cb|2|cos|sub +3|cb|2|cos|abd +3|cb|2|cos|mult +3|cb|2|cos|div +3|cb|2|1|mult|mult +3|cb|2|1|mult|div +3|cb|2|1|div|mult +3|cb|2|3|div|add +3|cb|2|3|div|sub +3|cb|2|3|div|abd +3|cb|3|0|mult|mult +3|cb|2|sin|mult +3|cb|3|exp|add +3|cb|3|exp|sub +3|cb|3|exp|abd +3|cb|3|inv|add +3|cb|3|inv|sub +3|cb|3|inv|abd +3|cb|3|sq|add +3|cb|3|sq|sub +3|cb|3|sq|abd +3|cb|2|cbrt|div +3|cb|3|abs|div +3|cb|3|sin|div +3|cb|3|sub +3|cb|sq +3|cb|cb +3|cb|abs +3|cb|sin +3|cb|cos +3|cb|1|mult +3|cb|1|div +3|cb|2|add +3|cb|2|sub +3|cb|2|abd +3|cb|2|mult +3|cb|2|div +3|cb|3|add +3|cb|3|cos|div +3|cb|3|abd +3|cb|3|sp|add +3|cb|3|sp|sub +3|cb|3|sp|abd +3|cb|2|abs|add +3|cb|2|abs|sub +3|cb|2|abs|abd +3|cb|2|abs|mult +3|cb|2|abs|div +3|cb|2|sin|add +3|cb|2|sin|sub +3|cb|2|sin|abd +2|cbrt|3|sp|abd +2|cbrt|sin +2|cbrt|cos +2|cbrt|1|mult +2|cbrt|1|div +2|cbrt|2|add +2|cbrt|2|sub +2|cbrt|2|abd +2|cbrt|3|add +2|cbrt|3|sub +2|cbrt|3|mult +2|cbrt|3|div +2|cbrt|3|sp|add +2|cbrt|3|sp|sub +2|cbrt|abs +2|cbrt|3|sp|mult +2|cbrt|2|abs|add +2|cbrt|2|abs|sub +2|cbrt|2|abs|abd +2|cbrt|2|abs|mult +2|cbrt|2|abs|div +2|cbrt|2|sin|add +2|cbrt|2|sin|sub +2|cbrt|2|sin|abd +2|cbrt|2|sin|mult +2|cbrt|2|sin|div +2|cbrt|2|cos|add +3|cb|1|sqrt|div +3|cb|3|2|add|div +3|cb|3|2|sub|div +3|cb|3|2|abd|div +3|cb|1|cb|div +3|cb|0|sq|div +3|cb|0|cb|div +3|cb|0|sp|div +3|cb|0|cbrt|div +3|cb|0|abs|div +3|cb|1|0|mult|div +3|cb|1|sq|div +3|cb|1|sp|div +2|3|div|3|0|mult|div +3|cb|1|cbrt|div +3|cb|2|0|mult|div +3|cb|2|sq|div +3|cb|2|cb|div +3|cb|2|sp|div +2|cbrt|0|mult +2|cbrt|0|div +2|cbrt|exp +2|cbrt|nexp +2|cbrt|inv +2|cbrt|sq +2|cbrt|cbrt +2|abs|1|div +3|sp|2|sp|div +2|abs|0|mult +2|abs|0|div +2|abs|inv +2|abs|sq +2|abs|cb +2|abs|sp +2|abs|sqrt +2|abs|cbrt +2|abs|log +2|abs|sin +2|abs|cos +2|abs|1|mult +3|sp|2|cb|div +2|abs|2|add +2|abs|2|sub +2|abs|2|abd +2|abs|2|mult +2|abs|2|div +2|abs|3|add +2|abs|3|sub +2|abs|3|mult +2|abs|3|div +2|abs|3|sp|add +2|abs|3|sp|sub +2|abs|3|sp|abd +3|sp|1|cb|div +3|sp|3|add +3|sp|3|sub +3|sp|2|abs|div +3|sp|2|sin|div +3|sp|2|cos|div +3|sp|2|1|mult|div +3|sp|2|cbrt|div +3|sp|3|abs|div +3|sp|3|sin|div +3|sp|3|cos|div +3|sp|3|2|add|div +3|sp|3|2|sub|div +3|sp|3|2|abd|div +2|abs|3|sp|mult +3|sp|0|sq|div +3|sp|0|cb|div +3|sp|0|sp|div +3|sp|0|cbrt|div +3|sp|0|abs|div +3|sp|1|0|mult|div +3|sp|1|sq|div +3|sp|1|sp|div +3|sp|1|sqrt|div +3|sp|1|cbrt|div +3|sp|2|0|mult|div +3|sp|2|sq|div +2|sin|abs +2|abs|1|cbrt|div +2|abs|2|0|mult|div +2|abs|2|sq|div +2|abs|2|cb|div +2|sin|0|mult +2|sin|0|div +2|sin|exp +2|sin|nexp +2|sin|inv +2|sin|sq +2|sin|cb +2|sin|sp +2|sin|cbrt +2|abs|1|sqrt|div +2|sin|1|mult +2|sin|1|div +2|sin|2|add +2|sin|2|sub +2|sin|2|abd +2|sin|2|mult +2|sin|2|div +2|sin|3|add +2|sin|3|sub +2|sin|3|mult +2|sin|3|div +2|sin|3|sp|add +2|abs|3|2|add|div +2|abs|3|sp|div +2|abs|2|sin|div +2|abs|2|cos|div +2|abs|2|1|mult|div +2|abs|3|0|mult|div +2|abs|3|sq|div +2|abs|3|cb|div +2|abs|2|cbrt|div +2|abs|3|cbrt|div +2|abs|3|abs|div +2|abs|3|sin|div +2|abs|3|cos|div +2|abs|3|1|mult|div +3|sp|2|div +2|abs|3|2|sub|div +2|abs|3|2|abd|div +2|abs|3|2|mult|div +2|abs|1|cb|div +2|abs|0|sq|div +2|abs|0|cb|div +2|abs|0|sp|div +2|abs|0|cbrt|div +2|abs|0|abs|div +2|abs|1|0|mult|div +2|abs|1|sq|div +2|abs|1|sp|div +1|0|cb|div +1|3|0|mult|div +1|3|sq|div +1|3|cb|div +1|2|cbrt|div +1|3|cbrt|div +1|3|abs|div +1|3|sin|div +1|3|cos|div +1|3|2|add|div +1|3|2|sub|div +1|3|2|abd|div +1|3|2|mult|div +1|0|sq|div +1|2|cos|div +1|0|cbrt|div +1|0|abs|div +1|2|0|mult|div +1|2|sq|div +1|2|cb|div +2|3|sp|div +2|2|abs|div +2|2|sin|div +2|2|cos|div +2|3|0|mult|div +2|3|sq|div +2|3|cb|div +0|3|2|sub|div +0|2|abs|div +0|2|sin|div +0|2|cos|div +0|2|1|mult|div +0|3|sq|div +0|3|cb|div +0|2|cbrt|div +0|3|cbrt|div +0|3|abs|div +0|3|sin|div +0|3|cos|div +0|3|1|mult|div +0|3|2|add|div +2|3|cbrt|div +0|3|2|abd|div +0|3|2|mult|div +0|1|cb|div +0|0|abs|div +0|1|sq|div +0|1|sp|div +0|1|sqrt|div +0|1|cbrt|div +0|2|sq|div +0|2|cb|div +1|2|abs|div +1|2|sin|div +3|2|sq|div +3|3|2|sub|div +3|3|2|abd|div +3|1|cb|div +3|0|sq|div +3|0|cb|div +3|0|cbrt|div +3|0|abs|div +3|1|0|mult|div +3|1|sq|div +3|1|sp|div +3|1|sqrt|div +3|1|cbrt|div +3|2|0|mult|div +3|3|2|add|div +3|2|cb|div +3|sp|0|mult +3|sp|0|div +3|sp|inv +3|sp|sq +3|sp|sin +3|sp|cos +3|sp|1|mult +3|sp|1|div +3|sp|2|add +3|sp|2|sub +3|sp|2|mult +2|0|abs|div +2|3|abs|div +2|3|sin|div +2|3|cos|div +2|3|1|mult|div +2|3|2|add|div +2|3|2|sub|div +2|3|2|abd|div +2|1|cb|div +2|0|sq|div +2|0|cb|div +2|0|sp|div +2|0|cbrt|div +2|sin|3|sp|sub +2|1|0|mult|div +2|1|sq|div +2|1|sp|div +2|1|sqrt|div +2|1|cbrt|div +3|2|abs|div +3|2|sin|div +3|2|cos|div +3|2|1|mult|div +3|2|cbrt|div +3|3|sin|div +3|3|cos|div +2|1|div|2|abs|mult +2|1|mult|0|abs|div +2|1|div|0|mult +2|1|div|0|div +2|1|div|sq +2|1|div|cb +2|1|div|sp +2|1|div|cbrt +2|1|div|abs +2|1|div|1|div +2|1|div|2|mult +2|1|div|3|mult +2|1|div|3|div +2|1|div|3|sp|mult +2|1|mult|0|cbrt|div +2|1|div|2|abs|div +2|1|div|2|sin|mult +2|1|div|2|sin|div +2|1|div|2|cos|mult +2|1|div|2|cos|div +2|1|div|3|0|mult|div +2|1|div|3|sq|div +2|1|div|3|cb|div +2|1|div|3|cbrt|div +2|1|div|3|abs|div +2|1|div|3|sin|div +2|1|div|3|cos|div +2|1|mult|3|0|mult|div +2|1|mult|1|abd +2|1|mult|1|mult +2|1|mult|2|mult +2|1|mult|3|mult +2|1|mult|3|div +2|1|mult|3|sp|mult +2|1|mult|3|sp|div +2|1|mult|2|abs|mult +2|1|mult|2|abs|div +2|1|mult|2|sin|mult +2|1|mult|2|sin|div +2|1|mult|2|cos|mult +2|1|mult|2|cos|div +2|1|div|3|1|mult|div +2|1|mult|3|sq|div +2|1|mult|3|cb|div +2|1|mult|3|cbrt|div +2|1|mult|3|abs|div +2|1|mult|3|sin|div +2|1|mult|3|cos|div +2|1|mult|3|2|add|div +2|1|mult|3|2|sub|div +2|1|mult|3|2|abd|div +2|1|mult|0|sq|div +2|1|mult|0|cb|div +2|1|mult|0|sp|div +2|3|div|2|abs|mult +2|3|div|2|sub +2|3|div|2|abd +2|3|div|2|mult +2|3|div|3|add +2|3|div|3|sub +2|3|div|3|abd +2|3|div|3|div +2|3|div|3|sp|add +2|3|div|3|sp|sub +2|3|div|3|sp|abd +2|3|div|2|abs|add +2|3|div|2|abs|sub +2|3|div|2|abs|abd +2|3|div|2|add +2|3|div|2|abs|div +2|3|div|2|sin|add +2|3|div|2|sin|sub +2|3|div|2|sin|abd +2|3|div|2|sin|mult +2|3|div|2|sin|div +2|3|div|2|cos|add +2|3|div|2|cos|sub +2|3|div|2|cos|abd +2|3|div|2|cos|mult +2|3|div|2|cos|div +2|3|div|2|1|mult|mult +2|1|div|1|cbrt|div +2|1|div|3|2|add|div +2|1|div|3|2|sub|div +2|1|div|3|2|abd|div +2|1|div|1|cb|div +2|1|div|0|sq|div +2|1|div|0|cb|div +2|1|div|0|cbrt|div +2|1|div|0|abs|div +2|1|div|1|0|mult|div +2|1|div|1|sq|div +2|1|div|1|sp|div +2|1|div|1|sqrt|div +2|1|mult|1|sub +2|3|div|0|mult +2|3|div|0|div +2|3|div|exp +2|3|div|sq +2|3|div|cb +2|3|div|sp +2|3|div|cbrt +2|3|div|abs +2|3|div|sin +2|3|div|cos +2|3|div|1|mult +2|3|div|1|div +2|cos|sq +2|sin|1|0|mult|div +2|sin|1|sq|div +2|sin|1|sp|div +2|sin|1|sqrt|div +2|sin|1|cbrt|div +2|sin|2|0|mult|div +2|sin|2|sq|div +2|sin|2|cb|div +2|cos|0|mult +2|cos|0|div +2|cos|exp +2|cos|nexp +2|cos|inv +2|sin|0|abs|div +2|cos|cb +2|cos|sp +2|cos|cbrt +2|cos|abs +2|cos|1|mult +2|cos|1|div +2|cos|2|add +2|cos|2|sub +2|cos|2|abd +2|cos|2|mult +2|cos|2|div +2|cos|3|add +2|sin|3|cbrt|div +2|sin|3|sp|abd +2|sin|3|sp|mult +2|sin|2|abs|add +2|sin|2|abs|sub +2|sin|2|abs|abd +2|sin|2|abs|mult +2|sin|2|abs|div +2|sin|2|cos|div +2|sin|2|1|mult|div +2|sin|3|0|mult|div +2|sin|3|sq|div +2|sin|3|cb|div +2|sin|2|cbrt|div +2|cos|3|sub +2|sin|3|abs|div +2|sin|3|sin|div +2|sin|3|cos|div +2|sin|3|1|mult|div +2|sin|3|2|add|div +2|sin|3|2|sub|div +2|sin|3|2|abd|div +2|sin|3|2|mult|div +2|sin|1|cb|div +2|sin|0|sq|div +2|sin|0|cb|div +2|sin|0|cbrt|div +2|cos|1|cbrt|div +2|cos|3|2|add|div +2|cos|3|2|sub|div +2|cos|3|2|abd|div +2|cos|3|2|mult|div +2|cos|1|cb|div +2|cos|0|sq|div +2|cos|0|cb|div +2|cos|0|cbrt|div +2|cos|0|abs|div +2|cos|1|0|mult|div +2|cos|1|sq|div +2|cos|1|sp|div +2|cos|1|sqrt|div +2|cos|3|1|mult|div +2|cos|2|0|mult|div +2|cos|2|sq|div +2|cos|2|cb|div +2|1|mult|0|mult +2|1|mult|0|div +2|1|mult|inv +2|1|mult|sq +2|1|mult|cb +2|1|mult|sp +2|1|mult|cbrt +2|1|mult|abs +2|1|mult|1|add +2|cos|2|sin|sub +2|cos|3|mult +2|cos|3|div +2|cos|3|sp|add +2|cos|3|sp|sub +2|cos|3|sp|abd +2|cos|3|sp|mult +2|cos|2|abs|add +2|cos|2|abs|sub +2|cos|2|abs|abd +2|cos|2|abs|mult +2|cos|2|abs|div +2|cos|2|sin|add +3|cbrt|3|sin|div +2|cos|2|sin|abd +2|cos|2|sin|mult +2|cos|2|sin|div +2|cos|2|1|mult|div +2|cos|3|0|mult|div +2|cos|3|sq|div +2|cos|3|cb|div +2|cos|2|cbrt|div +2|cos|3|cbrt|div +2|cos|3|abs|div +2|cos|3|sin|div +2|cos|3|cos|div +3|2|sub|2|cbrt|add +3|2|sub|3|exp|abd +3|2|sub|3|inv|add +3|2|sub|3|inv|sub +3|2|sub|3|inv|abd +3|2|sub|3|sq|add +3|2|sub|3|sq|sub +3|2|sub|3|sq|abd +3|2|sub|3|sq|mult +3|2|sub|3|sq|div +3|2|sub|3|cb|add +3|2|sub|3|cb|sub +3|2|sub|3|cb|mult +3|2|sub|3|cb|div +3|2|sub|3|exp|sub +3|2|sub|2|cbrt|sub +3|2|sub|2|cbrt|abd +3|2|sub|2|cbrt|mult +3|2|sub|2|cbrt|div +3|2|sub|3|cbrt|add +3|2|sub|3|cbrt|sub +3|2|sub|3|cbrt|abd +3|2|sub|3|cbrt|mult +3|2|sub|3|cbrt|div +3|2|sub|3|abs|add +3|2|sub|3|abs|sub +3|2|sub|3|abs|abd +3|2|sub|2|cos|mult +3|2|sub|2|abs|add +3|2|sub|2|abs|sub +3|2|sub|2|abs|abd +3|2|sub|2|abs|mult +3|2|sub|2|abs|div +3|2|sub|2|sin|add +3|2|sub|2|sin|sub +3|2|sub|2|sin|abd +3|2|sub|2|sin|mult +3|2|sub|2|sin|div +3|2|sub|2|cos|add +3|2|sub|2|cos|sub +3|2|sub|2|cos|abd +3|2|sub|3|abs|mult +3|2|sub|2|cos|div +3|2|sub|2|1|mult|mult +3|2|sub|2|1|mult|div +3|2|sub|2|1|div|mult +3|2|sub|2|3|div|add +3|2|sub|2|3|div|sub +3|2|sub|2|3|div|abd +3|2|sub|2|3|div|mult +3|2|sub|3|0|mult|mult +3|2|sub|3|0|mult|div +3|2|sub|3|0|div|mult +3|2|sub|3|exp|add +3|2|abd|log +3|2|sub|1|sqrt|div +3|2|sub|1|cbrt|div +3|2|sub|2|0|mult|div +3|2|sub|2|sq|div +3|2|sub|2|cb|div +3|2|abd|0|mult +3|2|abd|0|div +3|2|abd|inv +3|2|abd|sq +3|2|abd|cb +3|2|abd|sp +3|2|abd|sqrt +3|2|abd|cbrt +3|2|sub|1|sp|div +3|2|abd|sin +3|2|abd|cos +3|2|abd|1|mult +3|2|abd|1|div +3|2|abd|2|add +3|2|abd|2|sub +3|2|abd|2|mult +3|2|abd|2|div +3|2|abd|3|add +3|2|abd|3|sub +3|2|abd|3|mult +3|2|abd|3|div +3|2|sub|3|1|div|mult +3|2|sub|3|abs|div +3|2|sub|3|sin|add +3|2|sub|3|sin|sub +3|2|sub|3|sin|abd +3|2|sub|3|sin|mult +3|2|sub|3|sin|div +3|2|sub|3|cos|add +3|2|sub|3|cos|sub +3|2|sub|3|cos|abd +3|2|sub|3|cos|mult +3|2|sub|3|cos|div +3|2|sub|3|1|mult|mult +3|2|sub|3|1|mult|div +3|2|sub|3|sp|div +3|2|sub|3|2|add|mult +3|2|sub|3|2|add|div +3|2|sub|3|2|abd|div +3|2|sub|3|2|mult|div +3|2|sub|1|cb|div +3|2|sub|0|sq|div +3|2|sub|0|cb|div +3|2|sub|0|sp|div +3|2|sub|0|cbrt|div +3|2|sub|0|abs|div +3|2|sub|1|0|mult|div +3|2|sub|1|sq|div +3|2|add|2|cbrt|sub +3|2|add|3|inv|add +3|2|add|3|inv|sub +3|2|add|3|inv|abd +3|2|add|3|sq|add +3|2|add|3|sq|sub +3|2|add|3|sq|abd +3|2|add|3|sq|mult +3|2|add|3|sq|div +3|2|add|3|cb|add +3|2|add|3|cb|sub +3|2|add|3|cb|mult +3|2|add|3|cb|div +3|2|add|2|cbrt|add +3|2|add|3|exp|abd +3|2|add|2|cbrt|abd +3|2|add|2|cbrt|mult +3|2|add|2|cbrt|div +3|2|add|3|cbrt|add +3|2|add|3|cbrt|sub +3|2|add|3|cbrt|abd +3|2|add|3|cbrt|mult +3|2|add|3|cbrt|div +3|2|add|3|abs|add +3|2|add|3|abs|sub +3|2|add|3|abs|abd +3|2|add|3|abs|mult +3|2|add|2|cos|div +3|2|add|2|abs|sub +3|2|add|2|abs|abd +3|2|add|2|abs|mult +3|2|add|2|abs|div +3|2|add|2|sin|add +3|2|add|2|sin|sub +3|2|add|2|sin|abd +3|2|add|2|sin|mult +3|2|add|2|sin|div +3|2|add|2|cos|add +3|2|add|2|cos|sub +3|2|add|2|cos|abd +3|2|add|2|cos|mult +3|2|add|3|abs|div +3|2|add|2|1|mult|mult +3|2|add|2|1|mult|div +3|2|add|2|1|div|mult +3|2|add|2|3|div|add +3|2|add|2|3|div|sub +3|2|add|2|3|div|abd +3|2|add|2|3|div|mult +3|2|add|3|0|mult|mult +3|2|add|3|0|mult|div +3|2|add|3|0|div|mult +3|2|add|3|exp|add +3|2|add|3|exp|sub +3|2|sub|1|mult +3|2|add|2|0|mult|div +3|2|add|2|sq|div +3|2|add|2|cb|div +3|2|sub|0|mult +3|2|sub|0|div +3|2|sub|inv +3|2|sub|sq +3|2|sub|cb +3|2|sub|sp +3|2|sub|cbrt +3|2|sub|abs +3|2|sub|sin +3|2|sub|cos +3|2|add|1|cbrt|div +3|2|sub|1|div +3|2|sub|2|sub +3|2|sub|2|abd +3|2|sub|2|mult +3|2|sub|2|div +3|2|sub|3|add +3|2|sub|3|mult +3|2|sub|3|div +3|2|sub|3|sp|add +3|2|sub|3|sp|sub +3|2|sub|3|sp|abd +3|2|sub|3|sp|mult +3|2|add|3|1|div|mult +3|2|add|3|sin|add +3|2|add|3|sin|sub +3|2|add|3|sin|abd +3|2|add|3|sin|mult +3|2|add|3|sin|div +3|2|add|3|cos|add +3|2|add|3|cos|sub +3|2|add|3|cos|abd +3|2|add|3|cos|mult +3|2|add|3|cos|div +3|2|add|3|1|mult|mult +3|2|add|3|1|mult|div +3|2|abd|3|sp|add +3|2|add|3|2|sub|div +3|2|add|3|2|abd|div +3|2|add|3|2|mult|div +3|2|add|1|cb|div +3|2|add|0|sq|div +3|2|add|0|cb|div +3|2|add|0|cbrt|div +3|2|add|0|abs|div +3|2|add|1|0|mult|div +3|2|add|1|sq|div +3|2|add|1|sp|div +3|2|add|1|sqrt|div +3|2|mult|2|cbrt|add +3|2|mult|3|exp|sub +3|2|mult|3|exp|abd +3|2|mult|3|inv|add +3|2|mult|3|inv|sub +3|2|mult|3|inv|abd +3|2|mult|3|sq|add +3|2|mult|3|sq|sub +3|2|mult|3|sq|abd +3|2|mult|3|sq|mult +3|2|mult|3|cb|add +3|2|mult|3|cb|sub +3|2|mult|3|cb|abd +3|2|mult|3|cb|mult +3|2|mult|3|exp|add +3|2|mult|2|cbrt|sub +3|2|mult|2|cbrt|abd +3|2|mult|2|cbrt|mult +3|2|mult|3|cbrt|add +3|2|mult|3|cbrt|sub +3|2|mult|3|cbrt|abd +3|2|mult|3|cbrt|mult +3|2|mult|3|abs|add +3|2|mult|3|abs|sub +3|2|mult|3|abs|abd +3|2|mult|3|abs|mult +3|2|mult|3|abs|div +3|2|mult|2|sin|div +3|2|mult|3|sp|add +3|2|mult|3|sp|sub +3|2|mult|3|sp|abd +3|2|mult|3|sp|mult +3|2|mult|2|abs|add +3|2|mult|2|abs|sub +3|2|mult|2|abs|abd +3|2|mult|2|abs|mult +3|2|mult|2|abs|div +3|2|mult|2|sin|add +3|2|mult|2|sin|sub +3|2|mult|2|sin|abd +3|2|mult|2|sin|mult +3|2|mult|3|sin|add +3|2|mult|2|cos|add +3|2|mult|2|cos|sub +3|2|mult|2|cos|abd +3|2|mult|2|cos|mult +3|2|mult|2|cos|div +3|2|mult|2|1|mult|mult +3|2|mult|2|1|div|mult +3|2|mult|2|3|div|add +3|2|mult|2|3|div|sub +3|2|mult|2|3|div|abd +3|2|mult|3|0|mult|mult +3|2|mult|3|0|div|mult +3|2|div|nexp +3|2|mult|0|sq|div +3|2|mult|0|cb|div +3|2|mult|0|sp|div +3|2|mult|0|cbrt|div +3|2|mult|0|abs|div +3|2|mult|1|0|mult|div +3|2|mult|1|sq|div +3|2|mult|1|sp|div +3|2|mult|1|sqrt|div +3|2|mult|1|cbrt|div +3|2|div|0|mult +3|2|div|0|div +3|2|div|exp +3|2|mult|1|cb|div +3|2|div|sq +3|2|div|cb +3|2|div|sp +3|2|div|cbrt +3|2|div|abs +3|2|div|sin +3|2|div|cos +3|2|div|1|mult +3|2|div|1|div +3|2|div|2|add +3|2|div|2|sub +3|2|div|2|abd +3|2|mult|3|2|add|abd +3|2|mult|3|sin|sub +3|2|mult|3|sin|abd +3|2|mult|3|sin|mult +3|2|mult|3|sin|div +3|2|mult|3|cos|add +3|2|mult|3|cos|sub +3|2|mult|3|cos|abd +3|2|mult|3|cos|mult +3|2|mult|3|cos|div +3|2|mult|3|1|mult|mult +3|2|mult|3|1|div|mult +3|2|mult|3|2|add|add +3|2|mult|3|2|add|sub +3|2|mult|3|mult +3|2|mult|3|2|add|mult +3|2|mult|3|2|add|div +3|2|mult|3|2|sub|add +3|2|mult|3|2|sub|sub +3|2|mult|3|2|sub|abd +3|2|mult|3|2|sub|mult +3|2|mult|3|2|sub|div +3|2|mult|3|2|abd|add +3|2|mult|3|2|abd|sub +3|2|mult|3|2|abd|abd +3|2|mult|3|2|abd|mult +3|2|mult|3|2|abd|div +3|2|abd|2|cbrt|sub +3|2|abd|3|exp|sub +3|2|abd|3|inv|add +3|2|abd|3|inv|sub +3|2|abd|3|sq|add +3|2|abd|3|sq|sub +3|2|abd|3|sq|abd +3|2|abd|3|sq|mult +3|2|abd|3|sq|div +3|2|abd|3|cb|add +3|2|abd|3|cb|sub +3|2|abd|3|cb|mult +3|2|abd|3|cb|div +3|2|abd|2|cbrt|add +3|2|abd|3|exp|add +3|2|abd|2|cbrt|mult +3|2|abd|2|cbrt|div +3|2|abd|3|cbrt|add +3|2|abd|3|cbrt|sub +3|2|abd|3|cbrt|mult +3|2|abd|3|cbrt|div +3|2|abd|3|abs|add +3|2|abd|3|abs|sub +3|2|abd|3|abs|abd +3|2|abd|3|abs|mult +3|2|abd|3|abs|div +3|2|abd|3|sin|add +3|2|abd|2|cos|add +3|2|abd|3|sp|sub +3|2|abd|3|sp|abd +3|2|abd|3|sp|mult +3|2|abd|3|sp|div +3|2|abd|2|abs|add +3|2|abd|2|abs|sub +3|2|abd|2|abs|abd +3|2|abd|2|abs|mult +3|2|abd|2|abs|div +3|2|abd|2|sin|add +3|2|abd|2|sin|sub +3|2|abd|2|sin|mult +3|2|abd|2|sin|div +3|2|abd|3|sin|sub +3|2|abd|2|cos|sub +3|2|abd|2|cos|mult +3|2|abd|2|cos|div +3|2|abd|2|1|mult|mult +3|2|abd|2|1|mult|div +3|2|abd|2|1|div|mult +3|2|abd|2|3|div|add +3|2|abd|2|3|div|sub +3|2|abd|2|3|div|mult +3|2|abd|3|0|mult|mult +3|2|abd|3|0|mult|div +3|2|abd|3|0|div|mult +3|2|mult|cbrt +3|2|abd|1|sq|div +3|2|abd|1|sp|div +3|2|abd|1|sqrt|div +3|2|abd|1|cbrt|div +3|2|abd|2|0|mult|div +3|2|abd|2|sq|div +3|2|abd|2|cb|div +3|2|mult|0|mult +3|2|mult|0|div +3|2|mult|inv +3|2|mult|sq +3|2|mult|cb +3|2|mult|sp +3|2|abd|1|0|mult|div +3|2|mult|abs +3|2|mult|sin +3|2|mult|cos +3|2|mult|1|mult +3|2|mult|1|div +3|2|mult|2|add +3|2|mult|2|sub +3|2|mult|2|abd +3|2|mult|2|mult +3|2|mult|3|add +3|2|mult|3|sub +3|2|mult|3|abd +3|2|abd|3|2|add|div +3|2|abd|3|sin|mult +3|2|abd|3|sin|div +3|2|abd|3|cos|add +3|2|abd|3|cos|sub +3|2|abd|3|cos|mult +3|2|abd|3|cos|div +3|2|abd|3|1|mult|mult +3|2|abd|3|1|mult|div +3|2|abd|3|1|div|mult +3|2|abd|3|2|add|add +3|2|abd|3|2|add|sub +3|2|abd|3|2|add|mult +3|2|add|2|abs|add +3|2|abd|3|2|sub|add +3|2|abd|3|2|sub|sub +3|2|abd|3|2|sub|abd +3|2|abd|3|2|sub|mult +3|2|abd|3|2|sub|div +3|2|abd|3|2|mult|div +3|2|abd|1|cb|div +3|2|abd|0|sq|div +3|2|abd|0|cb|div +3|2|abd|0|sp|div +3|2|abd|0|cbrt|div +3|2|abd|0|abs|div +3|sin|2|1|div|mult +3|sin|2|abs|div +3|sin|2|sin|add +3|sin|2|sin|sub +3|sin|2|sin|abd +3|sin|2|sin|mult +3|sin|2|sin|div +3|sin|2|cos|add +3|sin|2|cos|sub +3|sin|2|cos|abd +3|sin|2|cos|mult +3|sin|2|cos|div +3|sin|2|1|mult|mult +3|sin|2|1|mult|div +3|sin|2|abs|mult +3|sin|2|3|div|add +3|sin|2|3|div|sub +3|sin|2|3|div|abd +3|sin|2|3|div|mult +3|sin|3|0|mult|mult +3|sin|3|0|mult|div +3|sin|3|0|div|mult +3|sin|3|exp|add +3|sin|3|exp|sub +3|sin|3|exp|abd +3|sin|3|inv|add +3|sin|3|inv|sub +3|sin|2|mult +3|sin|exp +3|sin|nexp +3|sin|inv +3|sin|sq +3|sin|cb +3|sin|sp +3|sin|cbrt +3|sin|abs +3|sin|1|mult +3|sin|1|div +3|sin|2|add +3|sin|2|sub +3|sin|2|abd +3|sin|3|inv|abd +3|sin|2|div +3|sin|3|add +3|sin|3|sub +3|sin|3|mult +3|sin|3|div +3|sin|3|sp|add +3|sin|3|sp|sub +3|sin|3|sp|abd +3|sin|3|sp|mult +3|sin|2|abs|add +3|sin|2|abs|sub +3|sin|2|abs|abd +3|sin|2|sq|div +3|sin|3|2|abd|div +3|sin|3|2|mult|div +3|sin|1|cb|div +3|sin|0|sq|div +3|sin|0|cb|div +3|sin|0|cbrt|div +3|sin|0|abs|div +3|sin|1|0|mult|div +3|sin|1|sq|div +3|sin|1|sp|div +3|sin|1|sqrt|div +3|sin|1|cbrt|div +3|sin|2|0|mult|div +3|sin|3|2|sub|div +3|sin|2|cb|div +3|cos|0|mult +3|cos|0|div +3|cos|exp +3|cos|nexp +3|cos|inv +3|cos|sq +3|cos|cb +3|cos|sp +3|cos|cbrt +3|cos|abs +3|cos|1|mult +3|sin|2|cbrt|div +3|sin|3|sq|add +3|sin|3|sq|sub +3|sin|3|sq|abd +3|sin|3|sq|mult +3|sin|3|sq|div +3|sin|3|cb|add +3|sin|3|cb|sub +3|sin|3|cb|mult +3|sin|3|cb|div +3|sin|2|cbrt|add +3|sin|2|cbrt|sub +3|sin|2|cbrt|abd +3|sin|2|cbrt|mult +3|sin|0|div +3|sin|3|cbrt|add +3|sin|3|cbrt|sub +3|sin|3|cbrt|mult +3|sin|3|cbrt|div +3|sin|3|abs|add +3|sin|3|abs|sub +3|sin|3|abs|abd +3|sin|3|abs|mult +3|sin|3|abs|div +3|sin|3|cos|div +3|sin|3|1|mult|div +3|sin|3|2|add|div +3|abs|3|sp|abd +3|abs|sin +3|abs|cos +3|abs|1|mult +3|abs|1|div +3|abs|2|add +3|abs|2|sub +3|abs|2|abd +3|abs|2|mult +3|abs|2|div +3|abs|3|sub +3|abs|3|mult +3|abs|3|sp|add +3|abs|3|sp|sub +3|abs|log +3|abs|3|sp|mult +3|abs|2|abs|add +3|abs|2|abs|sub +3|abs|2|abs|abd +3|abs|2|abs|mult +3|abs|2|abs|div +3|abs|2|sin|add +3|abs|2|sin|sub +3|abs|2|sin|mult +3|abs|2|sin|div +3|abs|2|cos|add +3|abs|2|cos|sub +3|cbrt|1|cbrt|div +3|cbrt|3|cos|div +3|cbrt|3|2|add|div +3|cbrt|3|2|sub|div +3|cbrt|3|2|abd|div +3|cbrt|1|cb|div +3|cbrt|0|sq|div +3|cbrt|0|cb|div +3|cbrt|0|cbrt|div +3|cbrt|0|abs|div +3|cbrt|1|0|mult|div +3|cbrt|1|sq|div +3|cbrt|1|sp|div +3|cbrt|1|sqrt|div +3|abs|2|cos|mult +3|cbrt|2|0|mult|div +3|cbrt|2|sq|div +3|cbrt|2|cb|div +3|abs|0|mult +3|abs|0|div +3|abs|nexp +3|abs|inv +3|abs|sq +3|abs|cb +3|abs|sp +3|abs|sqrt +3|abs|cbrt +3|abs|0|sq|div +3|abs|2|cbrt|div +3|abs|3|cbrt|add +3|abs|3|cbrt|sub +3|abs|3|cbrt|mult +3|abs|3|cbrt|div +3|abs|3|sin|div +3|abs|3|cos|div +3|abs|3|1|mult|div +3|abs|3|2|add|div +3|abs|3|2|sub|div +3|abs|3|2|abd|div +3|abs|3|2|mult|div +3|abs|1|cb|div +3|abs|2|cbrt|mult +3|abs|0|cb|div +3|abs|0|cbrt|div +3|abs|0|abs|div +3|abs|1|0|mult|div +3|abs|1|sq|div +3|abs|1|sp|div +3|abs|1|sqrt|div +3|abs|1|cbrt|div +3|abs|2|0|mult|div +3|abs|2|sq|div +3|abs|2|cb|div +3|sin|0|mult +3|abs|3|inv|add +3|abs|2|cos|div +3|abs|2|1|mult|mult +3|abs|2|1|mult|div +3|abs|2|1|div|mult +3|abs|2|3|div|add +3|abs|2|3|div|sub +3|abs|2|3|div|mult +3|abs|3|0|mult|mult +3|abs|3|0|mult|div +3|abs|3|0|div|mult +3|abs|3|exp|add +3|abs|3|exp|sub +3|cos|1|div +3|abs|3|inv|sub +3|abs|3|sq|add +3|abs|3|sq|sub +3|abs|3|sq|abd +3|abs|3|sq|mult +3|abs|3|sq|div +3|abs|3|cb|add +3|abs|3|cb|sub +3|abs|3|cb|mult +3|abs|3|cb|div +3|abs|2|cbrt|add +3|abs|2|cbrt|sub +3|1|div|1|div +3|1|mult|0|sp|div +3|1|mult|0|cbrt|div +3|1|mult|0|abs|div +3|1|mult|2|0|mult|div +3|1|mult|2|sq|div +3|1|mult|2|cb|div +3|1|div|0|mult +3|1|div|0|div +3|1|div|sq +3|1|div|cb +3|1|div|sp +3|1|div|cbrt +3|1|div|abs +3|1|mult|0|cb|div +3|1|div|2|mult +3|1|div|2|div +3|1|div|3|mult +3|1|div|3|sp|mult +3|1|div|2|abs|mult +3|1|div|2|abs|div +3|1|div|2|sin|mult +3|1|div|2|sin|div +3|1|div|2|cos|mult +3|1|div|2|cos|div +3|1|div|2|1|mult|div +3|1|div|2|1|div|add +3|1|mult|2|cbrt|mult +3|1|mult|2|abs|div +3|1|mult|2|sin|mult +3|1|mult|2|sin|div +3|1|mult|2|cos|mult +3|1|mult|2|cos|div +3|1|mult|2|1|mult|add +3|1|mult|2|1|mult|sub +3|1|mult|2|1|mult|abd +3|1|mult|2|1|mult|mult +3|1|mult|3|0|mult|mult +3|1|mult|3|0|div|mult +3|1|mult|3|sq|mult +3|1|mult|3|cb|mult +3|1|div|2|1|div|sub +3|1|mult|2|cbrt|div +3|1|mult|3|cbrt|mult +3|1|mult|3|abs|mult +3|1|mult|3|abs|div +3|1|mult|3|sin|mult +3|1|mult|3|sin|div +3|1|mult|3|cos|mult +3|1|mult|3|cos|div +3|1|mult|3|2|add|div +3|1|mult|3|2|sub|div +3|1|mult|3|2|abd|div +3|1|mult|0|sq|div +3|2|add|1|mult +3|1|div|2|0|mult|div +3|1|div|2|sq|div +3|1|div|2|cb|div +3|2|add|0|mult +3|2|add|0|div +3|2|add|inv +3|2|add|sq +3|2|add|cb +3|2|add|sp +3|2|add|cbrt +3|2|add|abs +3|2|add|sin +3|2|add|cos +3|1|div|1|cbrt|div +3|2|add|1|div +3|2|add|2|add +3|2|add|2|mult +3|2|add|2|div +3|2|add|3|add +3|2|add|3|mult +3|2|add|3|div +3|2|add|3|sp|add +3|2|add|3|sp|sub +3|2|add|3|sp|abd +3|2|add|3|sp|mult +3|2|add|3|sp|div +3|1|div|3|cos|div +3|1|div|2|1|div|abd +3|1|div|3|0|mult|mult +3|1|div|3|sq|mult +3|1|div|3|cb|mult +3|1|div|2|cbrt|mult +3|1|div|2|cbrt|div +3|1|div|3|cbrt|mult +3|1|div|3|abs|mult +3|1|div|3|abs|div +3|1|div|3|sin|mult +3|1|div|3|sin|div +3|1|div|3|cos|mult +3|1|mult|2|abs|mult +3|1|div|3|2|add|div +3|1|div|3|2|sub|div +3|1|div|3|2|abd|div +3|1|div|1|cb|div +3|1|div|0|sq|div +3|1|div|0|cb|div +3|1|div|0|cbrt|div +3|1|div|0|abs|div +3|1|div|1|0|mult|div +3|1|div|1|sq|div +3|1|div|1|sp|div +3|1|div|1|sqrt|div +3|cos|3|exp|abd +3|cos|2|cos|div +3|cos|2|1|mult|mult +3|cos|2|1|mult|div +3|cos|2|1|div|mult +3|cos|2|3|div|add +3|cos|2|3|div|sub +3|cos|2|3|div|abd +3|cos|2|3|div|mult +3|cos|3|0|mult|mult +3|cos|3|0|mult|div +3|cos|3|0|div|mult +3|cos|3|exp|add +3|cos|3|exp|sub +3|cos|2|cos|mult +3|cos|3|inv|add +3|cos|3|inv|sub +3|cos|3|inv|abd +3|cos|3|sq|add +3|cos|3|sq|sub +3|cos|3|sq|abd +3|cos|3|sq|mult +3|cos|3|sq|div +3|cos|3|cb|add +3|cos|3|cb|sub +3|cos|3|cb|mult +3|cos|3|cb|div +3|cos|2|abs|add +3|cos|2|add +3|cos|2|sub +3|cos|2|abd +3|cos|2|mult +3|cos|2|div +3|cos|3|add +3|cos|3|sub +3|cos|3|mult +3|cos|3|div +3|cos|3|sp|add +3|cos|3|sp|sub +3|cos|3|sp|abd +3|cos|3|sp|mult +3|cos|2|cbrt|add +3|cos|2|abs|sub +3|cos|2|abs|abd +3|cos|2|abs|mult +3|cos|2|abs|div +3|cos|2|sin|add +3|cos|2|sin|sub +3|cos|2|sin|abd +3|cos|2|sin|mult +3|cos|2|sin|div +3|cos|2|cos|add +3|cos|2|cos|sub +3|cos|2|cos|abd +3|1|mult|sq +3|cos|0|cbrt|div +3|cos|0|abs|div +3|cos|1|0|mult|div +3|cos|1|sq|div +3|cos|1|sp|div +3|cos|1|sqrt|div +3|cos|1|cbrt|div +3|cos|2|0|mult|div +3|cos|2|sq|div +3|cos|2|cb|div +3|1|mult|0|mult +3|1|mult|0|div +3|1|mult|inv +3|cos|0|cb|div +3|1|mult|cb +3|1|mult|sp +3|1|mult|cbrt +3|1|mult|abs +3|1|mult|1|add +3|1|mult|1|sub +3|1|mult|1|abd +3|1|mult|1|mult +3|1|mult|2|mult +3|1|mult|2|div +3|1|mult|3|mult +3|1|mult|3|sp|mult +3|cos|3|abs|div +3|cos|2|cbrt|sub +3|cos|2|cbrt|abd +3|cos|2|cbrt|mult +3|cos|2|cbrt|div +3|cos|3|cbrt|add +3|cos|3|cbrt|sub +3|cos|3|cbrt|mult +3|cos|3|cbrt|div +3|cos|3|abs|add +3|cos|3|abs|sub +3|cos|3|abs|abd +3|cos|3|abs|mult +0|3|sp|div +3|cos|3|sin|add +3|cos|3|sin|sub +3|cos|3|sin|abd +3|cos|3|sin|mult +3|cos|3|sin|div +3|cos|3|1|mult|div +3|cos|3|2|add|div +3|cos|3|2|sub|div +3|cos|3|2|abd|div +3|cos|3|2|mult|div +3|cos|1|cb|div +3|cos|0|sq|div diff --git a/tests/exec_test/default/sisso.json b/tests/exec_test/default/sisso.json index 9fe148caf9549e644c9545c52894dbcd7874eaee..32f03e6a802f677052f974bc3401afa1a98252ee 100644 --- a/tests/exec_test/default/sisso.json +++ b/tests/exec_test/default/sisso.json @@ -11,5 +11,5 @@ "n_models_store": 1, "leave_out_inds": [0, 1, 2, 60, 61], "fix_intercept": false, - "phi_out_file": "feature_space/phi.out" + "phi_out_file": "feature_space/phi.txt" } diff --git a/tests/pytest/test_feature_creation/test_feature_space/test_feature_space.py b/tests/pytest/test_feature_creation/test_feature_space/test_feature_space.py index 9a7dfe9a689351b44fd0e55ec047d218a0ca4c97..26df7a1a83a0c248861ac00bbc10c21b2e543c15 100644 --- a/tests/pytest/test_feature_creation/test_feature_space/test_feature_space.py +++ b/tests/pytest/test_feature_creation/test_feature_space/test_feature_space.py @@ -22,6 +22,10 @@ from sissopp import ( initialize_values_arr, ) +import pathlib + +parent = pathlib.Path(__file__).parent.absolute() + def test_feature_space(): task_sizes_train = [90] @@ -49,6 +53,7 @@ def test_feature_space(): inputs.calc_type = "regression" inputs.max_rung = 2 inputs.n_sis_select = 10 + inputs.phi_out_file = "feature_space/phi.txt" try: inputs.n_rung_generate = 2 @@ -81,8 +86,6 @@ def test_feature_space(): feat_space = FeatureSpace(inputs) feat_space.sis(inputs.prop_train) - shutil.rmtree("feature_space/") - assert feat_space.phi_selected[0].postfix_expr == "1|0|add|sq" feat_space.sis(list(inputs.prop_train)) @@ -123,6 +126,26 @@ def test_feature_space(): inputs.max_param_depth = 0 pass + feat_space.output_phi() + feat_space_2 = FeatureSpace( + f"{parent}/feature_space/phi.txt", + inputs.phi_0, + inputs.prop_train, + inputs.task_sizes_train, + inputs.calc_type, + inputs.n_sis_select, + inputs.cross_cor_max, + ) + + # shutil.rmtree("feature_space/") + assert feat_space.n_feat == feat_space_2.n_feat + + feat_space_2.sis(inputs.prop_train) + assert ( + feat_space.phi_selected[0].postfix_expr + == feat_space_2.phi_selected[0].postfix_expr + ) + if __name__ == "__main__": test_feature_space()