neurolang.NeurolangPDL¶
- class neurolang.NeurolangPDL(chase_class: ~typing.Type[~neurolang.datalog.chase.Chase] = <class 'neurolang.datalog.chase.Chase'>, probabilistic_solvers: ~typing.Tuple[~typing.Callable] = (<function solve_succ_query>, <function solve_succ_query>, <function solve_succ_query_sdd_direct>), probabilistic_marg_solvers: ~typing.Tuple[~typing.Callable] = (<function solve_marg_query>, <function solve_marg_query>, <function solve_marg_query>), check_qbased_pfact_tuple_unicity=False)¶
Complements QueryBuilderDatalog class with probabilistic capabilities 1- add extensional probabilistic facts and choices 2- sove probabilistic queries
- Attributes:
current_program
Returns the list of Front End Expressions that have
environment
Dynamic context that can be used to create symbols to write a Datalog program.
functions
Returns the list of symbols corresponding to callables
region_names
Returns the list of symbol names with Region type
region_set_names
Returns the list of symbol names with set_type
scope
Dynamic context that can be used to create symbols to write a Datalog program.
symbol_table
Projector to the program_ir’s symbol_table
symbols
Iterator through the symbol’s names
types
Returns a list of the types of the symbols currently
Methods
add_atlas_set
(name, atlas_labels, spatial_image)Creates an atlas set: 1- for each region specified by a label and name in atlas_labels, creates associated ExplicitVBR and symbols Tuple[region_name: str, Region] 2- groups regions in an AbstractSet[Tuple[str, Region]] symbol with specified name
add_constraint
(antecedent, consequent)Creates an right implication of the consequent by the antecedent and adds the rule to the current program: antecedent -> consequent
add_probabilistic_choice_from_tuples
(iterable)Add probabilistic choice from tuples whose first element contains the probability label attached to that tuple.
add_probabilistic_facts_from_tuples
(iterable)Add probabilistic facts from tuples whose first element contains the probability label attached to that tuple.
add_region
(region[, name])Adds region fe.Symbol to symbol_table
add_region_set
(region_set[, name])Creates an AbstractSet fe.Symbol containing the elements specified in the iterable with a List[Tuple[Region]] format
add_symbol
(value[, name, type_])Creates a symbol with given value and adds it to the current symbol_table.
add_tuple_set
(iterable[, type_, name])Creates an AbstractSet fe.Symbol containing the elements specified in the iterable with a List[Tuple[Any, ...]] format (see examples).
Add uniform probabilistic choice over values in the iterable.
all
(quantified_variable, body)Universal predicate on the body.
create_region
(spatial_image[, label, ...])Creates an ExplicitVBR out of the voxels of a dense spatial_image with specified label
del_symbol
(name)Deletes the symbol with parameter name from the symbol_table
execute_datalog_program
(code)Execute a Datalog program in classical syntax.
exists
(quantified_variable, body)Existential predicate on the body.
get_symbol
(symbol_name)Retrieves symbol via its name, either providing a fe.Expression with the correct name or the name itself
load_neurosynth_mni_peaks_reported
(data_dir)Load the coordinates for the peaks reported by studies in the Neurosynth dataset.
load_neurosynth_study_ids
(data_dir[, name, ...])Load all study ids (PMIDs) that are part of the Neurosynth database.
load_neurosynth_term_study_associations
(data_dir)Load TF-IDF values for each (term, study) association within the Neurosynth database.
load_ontology
(paths[, connector_symbol_name])Loads and parses ontology stored at the specified paths, and store them into attributes
make_implicit_regions_explicit
(affine, dim)Raises NotImplementedError for now
new_region_symbol
([name])Returns symbol with type Region
new_symbol
([type_, name])Creates a symbol and associated expression, optionally specifying it's type and/or name
predicate_parameter_names
(predicate_name)Get the names of the parameters for the given predicate
query
(*args)Performs an inferential query on the database.
reset_program
()Clears current symbol table
Returns a dictionary of "predicate_name": "Content" for all elements in the solution of the Datalog program.
sphere
(center, radius[, name])Creates a Region symbol associated with the spherical volume described by its center and volume
magic_sets_rewrite_program
- __init__(chase_class: ~typing.Type[~neurolang.datalog.chase.Chase] = <class 'neurolang.datalog.chase.Chase'>, probabilistic_solvers: ~typing.Tuple[~typing.Callable] = (<function solve_succ_query>, <function solve_succ_query>, <function solve_succ_query_sdd_direct>), probabilistic_marg_solvers: ~typing.Tuple[~typing.Callable] = (<function solve_marg_query>, <function solve_marg_query>, <function solve_marg_query>), check_qbased_pfact_tuple_unicity=False) NeurolangPDL ¶
Query builder with probabilistic capabilities
- Parameters:
- chase_classType[Chase], optional
used to compute deterministic solutions, by default Chase
- probabilistic_solversTuple[Callable], optional
used to compute probabilistic solutions, the order of the elements indicates the priority of usage of the solver. by default (lifted_solve_succ_query, wmc_solve_succ_query)
- probabilistic_marg_solversTuple[Callable], optional
used to compute probabilistic solutions, by default (lifted_solve_marg_query, wmc_solve_marg_query)
- Returns:
- NeurolangPDL
see description
Methods
__init__
([chase_class, ...])Query builder with probabilistic capabilities
add_atlas_set
(name, atlas_labels, spatial_image)Creates an atlas set: 1- for each region specified by a label and name in atlas_labels, creates associated ExplicitVBR and symbols Tuple[region_name: str, Region] 2- groups regions in an AbstractSet[Tuple[str, Region]] symbol with specified name
add_constraint
(antecedent, consequent)Creates an right implication of the consequent by the antecedent and adds the rule to the current program: antecedent -> consequent
add_probabilistic_choice_from_tuples
(iterable)Add probabilistic choice from tuples whose first element contains the probability label attached to that tuple.
add_probabilistic_facts_from_tuples
(iterable)Add probabilistic facts from tuples whose first element contains the probability label attached to that tuple.
add_region
(region[, name])Adds region fe.Symbol to symbol_table
add_region_set
(region_set[, name])Creates an AbstractSet fe.Symbol containing the elements specified in the iterable with a List[Tuple[Region]] format
add_symbol
(value[, name, type_])Creates a symbol with given value and adds it to the current symbol_table.
add_tuple_set
(iterable[, type_, name])Creates an AbstractSet fe.Symbol containing the elements specified in the iterable with a List[Tuple[Any, ...]] format (see examples).
Add uniform probabilistic choice over values in the iterable.
all
(quantified_variable, body)Universal predicate on the body.
create_region
(spatial_image[, label, ...])Creates an ExplicitVBR out of the voxels of a dense spatial_image with specified label
del_symbol
(name)Deletes the symbol with parameter name from the symbol_table
execute_datalog_program
(code)Execute a Datalog program in classical syntax.
exists
(quantified_variable, body)Existential predicate on the body.
get_symbol
(symbol_name)Retrieves symbol via its name, either providing a fe.Expression with the correct name or the name itself
load_neurosynth_mni_peaks_reported
(data_dir)Load the coordinates for the peaks reported by studies in the Neurosynth dataset.
load_neurosynth_study_ids
(data_dir[, name, ...])Load all study ids (PMIDs) that are part of the Neurosynth database.
load_neurosynth_term_study_associations
(data_dir)Load TF-IDF values for each (term, study) association within the Neurosynth database.
load_ontology
(paths[, connector_symbol_name])Loads and parses ontology stored at the specified paths, and store them into attributes
magic_sets_rewrite_program
(query_expression)make_implicit_regions_explicit
(affine, dim)Raises NotImplementedError for now
new_region_symbol
([name])Returns symbol with type Region
new_symbol
([type_, name])Creates a symbol and associated expression, optionally specifying it's type and/or name
predicate_parameter_names
(predicate_name)Get the names of the parameters for the given predicate
query
(*args)Performs an inferential query on the database.
reset_program
()Clears current symbol table
Returns a dictionary of "predicate_name": "Content" for all elements in the solution of the Datalog program.
sphere
(center, radius[, name])Creates a Region symbol associated with the spherical volume described by its center and volume
Attributes
Returns the list of Front End Expressions that have currently been declared in the program, or through the program's constraints
environment
Dynamic context that can be used to create symbols to write a Datalog program.
functions
Returns the list of symbols corresponding to callables
region_names
Returns the list of symbol names with Region type
region_set_names
Returns the list of symbol names with set_type
scope
Dynamic context that can be used to create symbols to write a Datalog program.
symbol_table
Projector to the program_ir's symbol_table
symbols
Iterator through the symbol's names
types
Returns a list of the types of the symbols currently in the table (type can be Unknown)