# {py:mod}`pyirk.ruleengine` ```{py:module} pyirk.ruleengine ``` ```{autodoc2-docstring} pyirk.ruleengine :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`PremiseType ` - * - {py:obj}`LiteralWrapper ` - ```{autodoc2-docstring} pyirk.ruleengine.LiteralWrapper :summary: ``` * - {py:obj}`RuleApplicator ` - ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicator :summary: ``` * - {py:obj}`RuleApplicatorWorker ` - ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker :summary: ``` * - {py:obj}`ReportingRuleResult ` - ```{autodoc2-docstring} pyirk.ruleengine.ReportingRuleResult :summary: ``` * - {py:obj}`ReportingMultiRuleResult ` - ```{autodoc2-docstring} pyirk.ruleengine.ReportingMultiRuleResult :summary: ``` * - {py:obj}`AlgorithmicRuleApplicationWorker ` - ```{autodoc2-docstring} pyirk.ruleengine.AlgorithmicRuleApplicationWorker :summary: ``` * - {py:obj}`HypothesisReasoner ` - ```{autodoc2-docstring} pyirk.ruleengine.HypothesisReasoner :summary: ``` ```` ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`apply_all_semantic_rules ` - ```{autodoc2-docstring} pyirk.ruleengine.apply_all_semantic_rules :summary: ``` * - {py:obj}`apply_semantic_rules ` - ```{autodoc2-docstring} pyirk.ruleengine.apply_semantic_rules :summary: ``` * - {py:obj}`apply_semantic_rule ` - ```{autodoc2-docstring} pyirk.ruleengine.apply_semantic_rule :summary: ``` * - {py:obj}`get_all_rules ` - ```{autodoc2-docstring} pyirk.ruleengine.get_all_rules :summary: ``` * - {py:obj}`filter_relevant_stms ` - ```{autodoc2-docstring} pyirk.ruleengine.filter_relevant_stms :summary: ``` * - {py:obj}`edge_matcher ` - ```{autodoc2-docstring} pyirk.ruleengine.edge_matcher :summary: ``` * - {py:obj}`crpr ` - ```{autodoc2-docstring} pyirk.ruleengine.crpr :summary: ``` * - {py:obj}`compare_relation_statements ` - ```{autodoc2-docstring} pyirk.ruleengine.compare_relation_statements :summary: ``` * - {py:obj}`is_node_for_simple_graph ` - ```{autodoc2-docstring} pyirk.ruleengine.is_node_for_simple_graph :summary: ``` * - {py:obj}`get_simple_properties ` - ```{autodoc2-docstring} pyirk.ruleengine.get_simple_properties :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`LITERAL_BASE_URI ` - ```{autodoc2-docstring} pyirk.ruleengine.LITERAL_BASE_URI :summary: ``` * - {py:obj}`VERBOSITY ` - ```{autodoc2-docstring} pyirk.ruleengine.VERBOSITY :summary: ``` * - {py:obj}`wildcard_relation_uri ` - ```{autodoc2-docstring} pyirk.ruleengine.wildcard_relation_uri :summary: ``` * - {py:obj}`AtlasView ` - ```{autodoc2-docstring} pyirk.ruleengine.AtlasView :summary: ``` ```` ### API ````{py:data} LITERAL_BASE_URI :canonical: pyirk.ruleengine.LITERAL_BASE_URI :value: > 'irk:/tmp/literals' ```{autodoc2-docstring} pyirk.ruleengine.LITERAL_BASE_URI ``` ```` ````{py:data} VERBOSITY :canonical: pyirk.ruleengine.VERBOSITY :value: > False ```{autodoc2-docstring} pyirk.ruleengine.VERBOSITY ``` ```` ````{py:function} apply_all_semantic_rules(mod_context_uri=None) -> typing.List[pyirk.core.Statement] :canonical: pyirk.ruleengine.apply_all_semantic_rules ```{autodoc2-docstring} pyirk.ruleengine.apply_all_semantic_rules ``` ```` ````{py:function} apply_semantic_rules(*rules: typing.List, mod_context_uri: str = None, exhaust=False) -> ReportingMultiRuleResult :canonical: pyirk.ruleengine.apply_semantic_rules ```{autodoc2-docstring} pyirk.ruleengine.apply_semantic_rules ``` ```` ````{py:function} apply_semantic_rule(rule: pyirk.core.Item, mod_context_uri: str = None) -> ReportingRuleResult :canonical: pyirk.ruleengine.apply_semantic_rule ```{autodoc2-docstring} pyirk.ruleengine.apply_semantic_rule ``` ```` ````{py:function} get_all_rules() :canonical: pyirk.ruleengine.get_all_rules ```{autodoc2-docstring} pyirk.ruleengine.get_all_rules ``` ```` ````{py:function} filter_relevant_stms(re_list: typing.List[pyirk.core.Statement], return_items=True) -> typing.List[pyirk.core.Statement] :canonical: pyirk.ruleengine.filter_relevant_stms ```{autodoc2-docstring} pyirk.ruleengine.filter_relevant_stms ``` ```` `````{py:class} PremiseType(*args, **kwds) :canonical: pyirk.ruleengine.PremiseType Bases: {py:obj}`enum.Enum` ````{py:attribute} GRAPH :canonical: pyirk.ruleengine.PremiseType.GRAPH :value: > 0 ```{autodoc2-docstring} pyirk.ruleengine.PremiseType.GRAPH ``` ```` ````{py:attribute} SPARQL :canonical: pyirk.ruleengine.PremiseType.SPARQL :value: > 1 ```{autodoc2-docstring} pyirk.ruleengine.PremiseType.SPARQL ``` ```` ````` ````{py:class} LiteralWrapper(value) :canonical: pyirk.ruleengine.LiteralWrapper ```{autodoc2-docstring} pyirk.ruleengine.LiteralWrapper ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} pyirk.ruleengine.LiteralWrapper.__init__ ``` ```` `````{py:class} RuleApplicator(rule: pyirk.core.Entity, mod_context_uri: typing.Optional[str] = None) :canonical: pyirk.ruleengine.RuleApplicator ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicator ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicator.__init__ ``` ````{py:method} get_premise_type() -> pyirk.ruleengine.PremiseType :canonical: pyirk.ruleengine.RuleApplicator.get_premise_type ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicator.get_premise_type ``` ```` ````{py:method} extract_premise_stm_lists() :canonical: pyirk.ruleengine.RuleApplicator.extract_premise_stm_lists ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicator.extract_premise_stm_lists ``` ```` ````{py:method} apply() -> pyirk.core.RuleResult :canonical: pyirk.ruleengine.RuleApplicator.apply ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicator.apply ``` ```` ````{py:method} _apply() -> pyirk.core.RuleResult :canonical: pyirk.ruleengine.RuleApplicator._apply ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicator._apply ``` ```` ````{py:method} create_prototypes_for_variable_literals() :canonical: pyirk.ruleengine.RuleApplicator.create_prototypes_for_variable_literals ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicator.create_prototypes_for_variable_literals ``` ```` ````{py:method} create_prototypes_for_fiat_entities() :canonical: pyirk.ruleengine.RuleApplicator.create_prototypes_for_fiat_entities ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicator.create_prototypes_for_fiat_entities ``` ```` ````{py:method} create_simple_graph() -> networkx.DiGraph :canonical: pyirk.ruleengine.RuleApplicator.create_simple_graph ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicator.create_simple_graph ``` ```` ````{py:method} get_all_node_relations() -> dict :canonical: pyirk.ruleengine.RuleApplicator.get_all_node_relations ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicator.get_all_node_relations ``` ```` ````{py:method} _make_literal(value) -> str :canonical: pyirk.ruleengine.RuleApplicator._make_literal ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicator._make_literal ``` ```` ````` `````{py:class} RuleApplicatorWorker(parent: pyirk.ruleengine.RuleApplicator, premise_stms: typing.List[pyirk.core.Statement], premise_items: typing.List[pyirk.core.Item]) :canonical: pyirk.ruleengine.RuleApplicatorWorker ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.__init__ ``` ````{py:attribute} max_subgraph_monomorphisms :canonical: pyirk.ruleengine.RuleApplicatorWorker.max_subgraph_monomorphisms :value: > 3000 ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.max_subgraph_monomorphisms ``` ```` ````{py:property} rule :canonical: pyirk.ruleengine.RuleApplicatorWorker.rule ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.rule ``` ```` ````{py:method} apply_sparql_premise() -> pyirk.core.RuleResult :canonical: pyirk.ruleengine.RuleApplicatorWorker.apply_sparql_premise ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.apply_sparql_premise ``` ```` ````{py:method} _resolve_local_node(node=None, uri=None) :canonical: pyirk.ruleengine.RuleApplicatorWorker._resolve_local_node ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._resolve_local_node ``` ```` ````{py:method} _get_understandable_local_nodes() :canonical: pyirk.ruleengine.RuleApplicatorWorker._get_understandable_local_nodes ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._get_understandable_local_nodes ``` ```` ````{py:method} _get_understandable_result_maps(result_maps: typing.List[dict]) -> typing.List[list] :canonical: pyirk.ruleengine.RuleApplicatorWorker._get_understandable_result_maps ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._get_understandable_result_maps ``` ```` ````{py:method} apply_graph_premise() -> pyirk.core.RuleResult :canonical: pyirk.ruleengine.RuleApplicatorWorker.apply_graph_premise ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.apply_graph_premise ``` ```` ````{py:method} _process_result_map(result_maps) -> pyirk.core.RuleResult :canonical: pyirk.ruleengine.RuleApplicatorWorker._process_result_map ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._process_result_map ``` ```` ````{py:method} get_extended_result_map(result_map: dict) -> dict :canonical: pyirk.ruleengine.RuleApplicatorWorker.get_extended_result_map ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.get_extended_result_map ``` ```` ````{py:method} _get_all_edge_predicate_relations(uri1, uri2, ensure_length1=False) :canonical: pyirk.ruleengine.RuleApplicatorWorker._get_all_edge_predicate_relations ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._get_all_edge_predicate_relations ``` ```` ````{py:method} get_condition_funcs_and_args() -> typing.Tuple[typing.List[callable], typing.List[typing.Tuple[int]]] :canonical: pyirk.ruleengine.RuleApplicatorWorker.get_condition_funcs_and_args ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.get_condition_funcs_and_args ``` ```` ````{py:method} prepare_consequent_functions() -> typing.Tuple[typing.List[callable], typing.List[typing.Tuple[int]], typing.List[str]] :canonical: pyirk.ruleengine.RuleApplicatorWorker.prepare_consequent_functions ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.prepare_consequent_functions ``` ```` ````{py:method} get_asserted_relation_templates() -> typing.List[typing.Tuple[int, pyirk.core.Relation, int]] :canonical: pyirk.ruleengine.RuleApplicatorWorker.get_asserted_relation_templates ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.get_asserted_relation_templates ``` ```` ````{py:method} _fill_extended_local_nodes(force=False) :canonical: pyirk.ruleengine.RuleApplicatorWorker._fill_extended_local_nodes ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._fill_extended_local_nodes ``` ```` ````{py:method} match_subgraph_P() -> typing.List[dict] :canonical: pyirk.ruleengine.RuleApplicatorWorker.match_subgraph_P ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.match_subgraph_P ``` ```` ````{py:method} _get_by_uri(uri) :canonical: pyirk.ruleengine.RuleApplicatorWorker._get_by_uri ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._get_by_uri ``` ```` ````{py:method} _node_matcher(n1d: dict, n2d: dict) -> bool :canonical: pyirk.ruleengine.RuleApplicatorWorker._node_matcher ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._node_matcher ``` ```` ````{py:method} _is_subjectivized_predicate(itm: pyirk.builtin_entities.Item) -> bool :canonical: pyirk.ruleengine.RuleApplicatorWorker._is_subjectivized_predicate :staticmethod: ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._is_subjectivized_predicate ``` ```` ````{py:method} _ignore_item(itm: pyirk.builtin_entities.Item) -> bool :canonical: pyirk.ruleengine.RuleApplicatorWorker._ignore_item :staticmethod: ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._ignore_item ``` ```` ````{py:method} get_premise_type() -> pyirk.ruleengine.PremiseType :canonical: pyirk.ruleengine.RuleApplicatorWorker.get_premise_type ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.get_premise_type ``` ```` ````{py:method} create_prototype_subgraph_from_rule() -> None :canonical: pyirk.ruleengine.RuleApplicatorWorker.create_prototype_subgraph_from_rule ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.create_prototype_subgraph_from_rule ``` ```` ````{py:method} _create_psg_nodes() -> None :canonical: pyirk.ruleengine.RuleApplicatorWorker._create_psg_nodes ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._create_psg_nodes ``` ```` ````{py:method} _create_psg_edges() -> None :canonical: pyirk.ruleengine.RuleApplicatorWorker._create_psg_edges ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._create_psg_edges ``` ```` ````{py:method} ensure_node_of_P(i) :canonical: pyirk.ruleengine.RuleApplicatorWorker.ensure_node_of_P ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.ensure_node_of_P ``` ```` ````{py:method} _get_weakly_connected_components(P) -> addict.Addict :canonical: pyirk.ruleengine.RuleApplicatorWorker._get_weakly_connected_components ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker._get_weakly_connected_components ``` ```` ````{py:method} unlink_unwanted_statements(stm_list: typing.List[pyirk.core.Statement]) :canonical: pyirk.ruleengine.RuleApplicatorWorker.unlink_unwanted_statements ```{autodoc2-docstring} pyirk.ruleengine.RuleApplicatorWorker.unlink_unwanted_statements ``` ```` ````` ````{py:data} wildcard_relation_uri :canonical: pyirk.ruleengine.wildcard_relation_uri :value: > None ```{autodoc2-docstring} pyirk.ruleengine.wildcard_relation_uri ``` ```` ````{py:data} AtlasView :canonical: pyirk.ruleengine.AtlasView :value: > None ```{autodoc2-docstring} pyirk.ruleengine.AtlasView ``` ```` ````{py:function} edge_matcher(e1d: pyirk.ruleengine.AtlasView, e2d: pyirk.ruleengine.AtlasView) -> bool :canonical: pyirk.ruleengine.edge_matcher ```{autodoc2-docstring} pyirk.ruleengine.edge_matcher ``` ```` `````{py:class} ReportingRuleResult(raworker: pyirk.ruleengine.RuleApplicatorWorker, raw_result_count: int = None, rule: pyirk.core.Item = None) :canonical: pyirk.ruleengine.ReportingRuleResult Bases: {py:obj}`pyirk.core.RuleResult` ```{autodoc2-docstring} pyirk.ruleengine.ReportingRuleResult ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} pyirk.ruleengine.ReportingRuleResult.__init__ ``` ````{py:method} get_new_instance(res: pyirk.core.RuleResult) :canonical: pyirk.ruleengine.ReportingRuleResult.get_new_instance :classmethod: ```{autodoc2-docstring} pyirk.ruleengine.ReportingRuleResult.get_new_instance ``` ```` ````{py:method} add_bound_statement(stm: pyirk.core.Statement, raw_binding_info: dict) :canonical: pyirk.ruleengine.ReportingRuleResult.add_bound_statement ```{autodoc2-docstring} pyirk.ruleengine.ReportingRuleResult.add_bound_statement ``` ```` ````{py:method} _add_statement_report(stm: pyirk.core.Statement, raw_binding_info: dict) :canonical: pyirk.ruleengine.ReportingRuleResult._add_statement_report ```{autodoc2-docstring} pyirk.ruleengine.ReportingRuleResult._add_statement_report ``` ```` ````{py:method} extend_with_binding_info(part: pyirk.core.RuleResult, raw_binding_info: dict) :canonical: pyirk.ruleengine.ReportingRuleResult.extend_with_binding_info ```{autodoc2-docstring} pyirk.ruleengine.ReportingRuleResult.extend_with_binding_info ``` ```` ````{py:method} report(max=None, sep='') :canonical: pyirk.ruleengine.ReportingRuleResult.report ```{autodoc2-docstring} pyirk.ruleengine.ReportingRuleResult.report ``` ```` ````{py:method} report_str(max=None, sep='') :canonical: pyirk.ruleengine.ReportingRuleResult.report_str ```{autodoc2-docstring} pyirk.ruleengine.ReportingRuleResult.report_str ``` ```` ````{py:method} get_explanation(bindinfo: typing.List[typing.Tuple[pyirk.Entity]]) :canonical: pyirk.ruleengine.ReportingRuleResult.get_explanation ```{autodoc2-docstring} pyirk.ruleengine.ReportingRuleResult.get_explanation ``` ```` ````{py:method} _get_statement_report_count() :canonical: pyirk.ruleengine.ReportingRuleResult._get_statement_report_count ```{autodoc2-docstring} pyirk.ruleengine.ReportingRuleResult._get_statement_report_count ``` ```` ````{py:method} _get_stm_container_list() :canonical: pyirk.ruleengine.ReportingRuleResult._get_stm_container_list ```{autodoc2-docstring} pyirk.ruleengine.ReportingRuleResult._get_stm_container_list ``` ```` ````` `````{py:class} ReportingMultiRuleResult(rule_list: typing.List[pyirk.core.Item]) :canonical: pyirk.ruleengine.ReportingMultiRuleResult Bases: {py:obj}`pyirk.ruleengine.ReportingRuleResult` ```{autodoc2-docstring} pyirk.ruleengine.ReportingMultiRuleResult ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} pyirk.ruleengine.ReportingMultiRuleResult.__init__ ``` ````{py:property} rule :canonical: pyirk.ruleengine.ReportingMultiRuleResult.rule ```{autodoc2-docstring} pyirk.ruleengine.ReportingMultiRuleResult.rule ``` ```` ````{py:method} save_html_report(fpath: str, write_file=True, verbose=False) :canonical: pyirk.ruleengine.ReportingMultiRuleResult.save_html_report ```{autodoc2-docstring} pyirk.ruleengine.ReportingMultiRuleResult.save_html_report ``` ```` ````{py:method} get_report_content() :canonical: pyirk.ruleengine.ReportingMultiRuleResult.get_report_content ```{autodoc2-docstring} pyirk.ruleengine.ReportingMultiRuleResult.get_report_content ``` ```` ````{py:method} _get_report_title() :canonical: pyirk.ruleengine.ReportingMultiRuleResult._get_report_title ```{autodoc2-docstring} pyirk.ruleengine.ReportingMultiRuleResult._get_report_title ``` ```` ````{py:method} _get_rule_res_list() :canonical: pyirk.ruleengine.ReportingMultiRuleResult._get_rule_res_list ```{autodoc2-docstring} pyirk.ruleengine.ReportingMultiRuleResult._get_rule_res_list ``` ```` ````` ````{py:function} crpr(obj) :canonical: pyirk.ruleengine.crpr ```{autodoc2-docstring} pyirk.ruleengine.crpr ``` ```` ````{py:function} compare_relation_statements(rel1: pyirk.core.Relation, stm_list: typing.List[pyirk.core.Statement], stm_data: addict.Addict = None) :canonical: pyirk.ruleengine.compare_relation_statements ```{autodoc2-docstring} pyirk.ruleengine.compare_relation_statements ``` ```` ````{py:function} is_node_for_simple_graph(entity: pyirk.core.Entity) -> bool :canonical: pyirk.ruleengine.is_node_for_simple_graph ```{autodoc2-docstring} pyirk.ruleengine.is_node_for_simple_graph ``` ```` ````{py:function} get_simple_properties(item: pyirk.core.Item) -> dict :canonical: pyirk.ruleengine.get_simple_properties ```{autodoc2-docstring} pyirk.ruleengine.get_simple_properties ``` ```` `````{py:class} AlgorithmicRuleApplicationWorker() :canonical: pyirk.ruleengine.AlgorithmicRuleApplicationWorker ```{autodoc2-docstring} pyirk.ruleengine.AlgorithmicRuleApplicationWorker ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} pyirk.ruleengine.AlgorithmicRuleApplicationWorker.__init__ ``` ````{py:method} hardcoded_I810(zb, consequent_function: callable) :canonical: pyirk.ruleengine.AlgorithmicRuleApplicationWorker.hardcoded_I810 :staticmethod: ```{autodoc2-docstring} pyirk.ruleengine.AlgorithmicRuleApplicationWorker.hardcoded_I810 ``` ```` ````{py:method} hardcoded_I830(zb, consequent_function: callable, *args) :canonical: pyirk.ruleengine.AlgorithmicRuleApplicationWorker.hardcoded_I830 :staticmethod: ```{autodoc2-docstring} pyirk.ruleengine.AlgorithmicRuleApplicationWorker.hardcoded_I830 ``` ```` ````{py:method} hardcoded_I840(zb, consequent_function: callable, *args) :canonical: pyirk.ruleengine.AlgorithmicRuleApplicationWorker.hardcoded_I840 :staticmethod: ```{autodoc2-docstring} pyirk.ruleengine.AlgorithmicRuleApplicationWorker.hardcoded_I840 ``` ```` ````{py:method} get_single_predicate_report(pred) :canonical: pyirk.ruleengine.AlgorithmicRuleApplicationWorker.get_single_predicate_report ```{autodoc2-docstring} pyirk.ruleengine.AlgorithmicRuleApplicationWorker.get_single_predicate_report ``` ```` ````{py:method} get_predicates_report(predicate_list) :canonical: pyirk.ruleengine.AlgorithmicRuleApplicationWorker.get_predicates_report ```{autodoc2-docstring} pyirk.ruleengine.AlgorithmicRuleApplicationWorker.get_predicates_report ``` ```` ````` `````{py:class} HypothesisReasoner(zb, base_uri) :canonical: pyirk.ruleengine.HypothesisReasoner ```{autodoc2-docstring} pyirk.ruleengine.HypothesisReasoner ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} pyirk.ruleengine.HypothesisReasoner.__init__ ``` ````{py:attribute} uri_suffix :canonical: pyirk.ruleengine.HypothesisReasoner.uri_suffix :value: > 'HYPOTHESIS' ```{autodoc2-docstring} pyirk.ruleengine.HypothesisReasoner.uri_suffix ``` ```` ````{py:method} register_module() :canonical: pyirk.ruleengine.HypothesisReasoner.register_module ```{autodoc2-docstring} pyirk.ruleengine.HypothesisReasoner.register_module ``` ```` ````{py:method} hypothesis_reasoning_step(rule_list) :canonical: pyirk.ruleengine.HypothesisReasoner.hypothesis_reasoning_step ```{autodoc2-docstring} pyirk.ruleengine.HypothesisReasoner.hypothesis_reasoning_step ``` ```` `````