neurolang.frontend.deterministic_frontend module

class neurolang.frontend.deterministic_frontend.ExplicitVBR(voxels, affine_matrix, image_dim=None, prebuild_tree=False)

Bases: VolumetricBrainRegion

Attributes:
aabb_tree
bounding_box
center
width

Methods

to_ijk(affine)

return ijk voxels coordinates corresponding to the affine matrix transform

to_xyz([affine])

return world coordinates of the region corresponding to the affine matrix transform

build_tree

from_spatial_image_label

generate_bounding_box

remove_empty_bounding_boxes

spatial_image

to_explicit_vbr

to_ijk_set

to_xyz_set

property aabb_tree
property bounding_box
build_tree()
generate_bounding_box(voxels_ijk)
spatial_image(out=None, value=1)
to_ijk(affine)

return ijk voxels coordinates corresponding to the affine matrix transform

to_xyz(affine=None)

return world coordinates of the region corresponding to the affine matrix transform

class neurolang.frontend.deterministic_frontend.ExplicitVBROverlay(voxels, affine_matrix, overlay, image_dim=None, prebuild_tree=False)

Bases: ExplicitVBR

Attributes:
aabb_tree
bounding_box
center
width

Methods

to_ijk(affine)

return ijk voxels coordinates corresponding to the affine matrix transform

to_xyz([affine])

return world coordinates of the region corresponding to the affine matrix transform

build_tree

from_spatial_image_label

generate_bounding_box

remove_empty_bounding_boxes

spatial_image

to_explicit_vbr

to_ijk_set

to_xyz_set

spatial_image(out=None, background_value=0)
class neurolang.frontend.deterministic_frontend.NeurolangDL(program_ir=None)

Bases: QueryBuilderDatalog

Deterministic Datalog Frontend for Neurolang. QueryBuilderDatalog with a RegionFrontendDatalogSolver program intermediate representation

Attributes:
current_program

Returns the list of expressions that have currently been

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_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).

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.

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

solve_all()

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

class neurolang.frontend.deterministic_frontend.Symbol(query_builder: QueryBuilderBase, symbol_name: str)

Bases: Expression

A Symbol represents an atomic Expression. Its is the most recurrent element of queries

Attributes:
expression

Projects to symbol property

neurolang_symbol

Returns backend symbol

symbol

Returns backend symbol from symbol_table

type

Returns expression’s type

value

If any, returns value corresponding to the symbol

Methods

__call__(*args, **kwargs)

Returns a FunctionApplication expression, applied to the *args cast as Constant if not Symbol or Expression **kwargs are ignored

help()

Returns help based on Expression's subclass

do

property expression: Symbol

Projects to symbol property

property neurolang_symbol: Symbol

Returns backend symbol

property symbol: Symbol

Returns backend symbol from symbol_table

property value: Any

If any, returns value corresponding to the symbol

Returns:
Any

see description

Raises:
ValueError

if Symbol doesn’t have a python value