m.def("parse_formulas_for_program",&storm::parseFormulasForProgram,"Parse formulas for program",py::arg("formula_string"),py::arg("program"));
m.def("build_model",&buildModel,"Build the model");
m.def("build_model_from_prism_program",&storm::buildSymbolicModel<double>,"Build the model");
m.def("build_parametric_model_from_prism_program",&storm::buildSymbolicModel<storm::RationalFunction>,"Build the parametric model");
m.def("build_model",&buildModel,"Build the model",py::arg("program"),py::arg("formula"));
m.def("build_model_from_prism_program",&storm::buildSymbolicModel<double>,"Build the model",py::arg("program"),py::arg("formulas"));
m.def("build_parametric_model_from_prism_program",&storm::buildSymbolicModel<storm::RationalFunction>,"Build the parametric model",py::arg("program"),py::arg("formulas"));
//m.def("perform_state_elimination", &performStateElimination, "Perform state elimination");
//m.def("perform_state_elimination", &performStateElimination, "Perform state elimination");
@ -46,9 +46,9 @@ void define_formulae(py::module& m) {
py::class_<storm::logic::UnaryStateFormula,std::shared_ptr<storm::logic::UnaryStateFormulaconst>>(m,"UnaryStateFormula","State formula with one operand",py::base<storm::logic::StateFormula>());
py::class_<storm::logic::UnaryStateFormula,std::shared_ptr<storm::logic::UnaryStateFormulaconst>>(m,"UnaryStateFormula","State formula with one operand",py::base<storm::logic::StateFormula>());
py::class_<storm::logic::UnaryBooleanStateFormula,std::shared_ptr<storm::logic::UnaryBooleanStateFormulaconst>>(m,"UnaryBooleanStateFormula","Unary boolean state formula",py::base<storm::logic::UnaryStateFormula>());
py::class_<storm::logic::UnaryBooleanStateFormula,std::shared_ptr<storm::logic::UnaryBooleanStateFormulaconst>>(m,"UnaryBooleanStateFormula","Unary boolean state formula",py::base<storm::logic::UnaryStateFormula>());
.def("has_bound",&storm::logic::OperatorFormula::hasBound,"Check if formula is bounded")
.def_property("threshold",&storm::logic::OperatorFormula::getThreshold,&storm::logic::OperatorFormula::setThreshold,"Threshold of bound")
.def_property("comparison_type",&storm::logic::OperatorFormula::getComparisonType,&storm::logic::OperatorFormula::setComparisonType,"Comparison type of bound")
;
;
py::class_<storm::logic::TimeOperatorFormula,std::shared_ptr<storm::logic::TimeOperatorFormulaconst>>(m,"TimeOperator","The time operator",py::base<storm::logic::OperatorFormula>());
py::class_<storm::logic::TimeOperatorFormula,std::shared_ptr<storm::logic::TimeOperatorFormulaconst>>(m,"TimeOperator","The time operator",py::base<storm::logic::OperatorFormula>());
py::class_<storm::logic::LongRunAverageOperatorFormula,std::shared_ptr<storm::logic::LongRunAverageOperatorFormulaconst>>(m,"LongRunAvarageOperator","Long run average operator",py::base<storm::logic::OperatorFormula>());
py::class_<storm::logic::LongRunAverageOperatorFormula,std::shared_ptr<storm::logic::LongRunAverageOperatorFormulaconst>>(m,"LongRunAvarageOperator","Long run average operator",py::base<storm::logic::OperatorFormula>());