- load_tpl(+File)
- Loads a translated Bousi-Prolog (TPL) file directly into memory,
unloading the last file loaded with this predicate first. If File
is an empty string, the current loaded file will be removed from
the database but no file will be loaded afterwards.
- load_tpls(+File)
- Loads a translated Bousi-Prolog state (TPLS) file directly into memory,
unloading the last file loaded with this predicate first. If File
is an empty string, the current loaded file will be removed from
the database but no file will be loaded afterwards.
- solve_goal(:Goal)
- Executes the specified Goal under this module, using the rules
and relations of the currently loaded program. Formally, this
predicate succeeds if there's a refutation for Goal with a
certain approximation degree.
- get_sim_equations(-Equations)
- Unifies Equations with the list of currently defined
proximity/similarity equations, that is, sim/3 terms.
Equations are ordered
- add_sim_equations(+Equations)
- Asserts a list of proximity/similarity equations, that is, sim/3
terms. Equations that are already defined or aren't sim/3 terms
won't be added to the database.
- update_sim_equations(+Equations)
- Asserts a list of proximity/similarity equations sim/3 using
add_sim_equations, and recomputes sim/4 for the weak unification
algorithm a3.
Closures for sim/3 are not computed.
- build_block_equations(+Equations, -BlockEquations)
- If the flag weak_unification is set to 'a3', it builds the
corresponding block equations from the input list of sim
equations. Otherwise, it returns no block equations.
The block equations can be built either with Prolog code
(flag ext_block_equs set to false) or C code (flag set to true)
The relation sim/3 is expected to be already generated and
stored in the dynamic database.
The relation sim/4 (for the weak unification algorithm a3) is
not expected to be stored in the dynamic database.
Upon completion of this predicate, both relations sim/3 and
sim/4 will be stored in the dynamic database.