aggregate.pl -- Aggregation operators on backtrackable predicates |
ansi_term.pl -- Print decorated text to ANSI consoles |
apply.pl -- Apply predicates on a list |
apply_macros.pl -- Goal expansion rules to avoid meta-calling |
arithmetic.pl -- Extensible arithmetic |
assoc.pl |
| assoc_to_keys/2 | True if Keys is the list of keys in Assoc. |  |
| assoc_to_list/2 | Translate Assoc to a list Pairs of Key-Value pairs. |  |
| assoc_to_values/2 | True if Values is the list of values in Assoc. |  |
| del_assoc/4 | True if Key-Value is in Assoc0. |  |
| del_max_assoc/4 | True if Key-Value is in Assoc0 and Key is the greatest key. |  |
| del_min_assoc/4 | True if Key-Value is in Assoc0 and Key is the smallest key. |  |
| empty_assoc/1 | Is true if Assoc is the empty association list. |  |
| gen_assoc/3 | True if Key-Value is an association in Assoc. |  |
| get_assoc/3 | True if Key-Value is an association in Assoc. |  |
| get_assoc/5 | True if Key-Val0 is in Assoc0 and Key-Val is in Assoc. |  |
| is_assoc/1 | True if Assoc is an association list. |  |
| list_to_assoc/2 | Create an association from a list Pairs of Key-Value pairs. |  |
| map_assoc/2 | True if Pred(Value) is true for all values in Assoc. |  |
| map_assoc/3 | Map corresponding values. |  |
| max_assoc/3 | True if Key-Value is in Assoc and Key is the largest key. |  |
| min_assoc/3 | True if Key-Value is in assoc and Key is the smallest key. |  |
| ord_list_to_assoc/2 | Assoc is created from an ordered list Pairs of Key-Value pairs. |  |
| put_assoc/4 | Assoc is Assoc0, except that Key is associated with Value. |  |
atom.pl -- Operations on atoms |
backcomp.pl |
| $apropos_match/2 | True if Needle is a sub atom of Haystack. |  |
| $arch/2 | |  |
| $argv/1 | |  |
| $declare_module/3 | Used in triple20 particle library. |  |
| $home/1 | |  |
| $module/2 | |  |
| $set_prompt/1 | Set the prompt for the toplevel. |  |
| $sig_atomic/1 | Execute Goal without processing signals. |  |
| $strip_module/3 | This used to be an internal predicate. |  |
| $version/1 | |  |
| C/3 | Used to be generated by DCG. |  |
| at_initialization/1 | Register goal only to be run if a saved state is restored. |  |
| call_cleanup/3 | Call Cleanup with an indication of the reason unified to Catcher. |  |
| checklist/2 | |  |
| concat/3 | |  |
| concat_atom/2 | Concatenate a list of atomic values to an atom. |  |
| concat_atom/3 | Concatenate a list of atomic values to an atom, inserting Separator between each consecutive elements. |  |
| convert_time/2 | Convert a time-stamp as obtained though get_time/1 into a textual representation using the C-library function ctime(). |  |
| convert_time/8 | Convert a time stamp, provided by get_time/1, time_file/2, etc. |  |
| current_module/2 | True if Module is a module loaded from File. |  |
| current_mutex/3 | |  |
| current_thread/2 | |  |
| displayq/1 | Write term ignoring operators and quote atoms. |  |
| displayq/2 | Write term ignoring operators and quote atoms. |  |
| eval_license/0 | |  |
| export_list/2 | Module exports the predicates of List. |  |
| feature/2 | Control Prolog flags. |  |
| flush/0 | |  |
| free_variables/2 | Return a list of unbound variables in Term. |  |
| hash/1 | Demands PredInd to be indexed using a hash-table. |  |
| hash_term/2 | If Term is ground, Hash is unified to an integer representing a hash for Term. |  |
| index/1 | Prepare the predicate indicated by Head for multi-argument indexing. |  |
| lock_predicate/2 | |  |
| merge/3 | Merge the ordered sets List1 and List2 into a new ordered list. |  |
| merge_set/3 | Merge the ordered sets Set1 and Set2 into a new ordered set without duplicates. |  |
| message_queue_size/2 | True if Queue holds Size terms. |  |
| proper_list/1 | Old SWI-Prolog predicate to check for a list that really ends in a []. |  |
| read_clause/1 | |  |
| read_clause/2 | |  |
| read_history/6 | |  |
| read_pending_input/3 | |  |
| read_variables/2 | |  |
| read_variables/3 | |  |
| set_base_module/1 | Set the default module from which we inherit. |  |
| set_feature/2 | Control Prolog flags. |  |
| setup_and_call_cleanup/3 | Call Cleanup once after Goal is finished. |  |
| setup_and_call_cleanup/4 | Call Cleanup once after Goal is finished, with Catcher unified to the reason. |  |
| sformat/2 | |  |
| sformat/3 | |  |
| string_to_atom/2 | Bi-directional conversion between string and atom. |  |
| string_to_list/2 | Bi-directional conversion between a string and a list of character codes. |  |
| sublist/3 | Succeeds if List2 unifies with a list holding those terms for which call(Goal, Elem) succeeds. |  |
| substring/4 | Predecessor of sub_string using 1-based Offset. |  |
| sumlist/2 | True when Sum is the list of all numbers in List. |  |
| thread_at_exit/1 | Register Goal to be called when the calling thread exits. |  |
| trie_insert_new/3 | |  |
| unlock_predicate/2 | |  |
| write_ln/1 | |  |
base32.pl -- Base32 encoding and decoding |
base64.pl -- Base64 encoding and decoding |
broadcast.pl |
| broadcast/1 | Broadcast given event. |  |
| broadcast_request/1 | Broadcast given event till accepted. |  |
| listen/2 | Open a channel for listening for events of the given `Templ'. |  |
| listen/3 | Open a channel for listening for events of the given `Templ'. |  |
| listening/3 | returns currently open channels. |  |
| unlisten/1 | Destroy a channel. |  |
| unlisten/2 | Destroy a channel. |  |
| unlisten/3 | Destroy a channel. |  |
charsio.pl |
| atom_to_chars/2 | Convert Atom into a list of character codes. |  |
| atom_to_chars/3 | Convert Atom into a difference list of character codes. |  |
| format_to_chars/3 | Use format/2 to write to a list of character codes. |  |
| format_to_chars/4 | Use format/2 to write to a difference list of character codes. |  |
| number_to_chars/2 | Convert Atom into a list of character codes. |  |
| number_to_chars/3 | Convert Number into a difference list of character codes. |  |
| open_chars_stream/2 | Open Codes as an input stream. |  |
| read_from_chars/2 | Read Codes into Term. |  |
| read_term_from_chars/3 | Read Codes into Term. |  |
| with_output_to_chars/2 | Run Goal as with once/1. |  |
| with_output_to_chars/3 | Run Goal as with once/1. |  |
| with_output_to_chars/4 | Same as with_output_to_chars/3 using an explicit stream. |  |
| write_to_chars/2 | Write a term to a code list. |  |
| write_to_chars/3 | Write a term to a code list. |  |
check.pl -- Consistency checking |
codesio.pl -- I/O on Lists of Character Codes |
coinduction.pl -- Co-Logic Programming |
csv.pl -- Process CSV (Comma-Separated Values) data |
ctypes.pl -- Character code classification |
date.pl -- Process dates and times |
debug.pl -- Print debug messages and test assertions |
dialect.pl -- Support multiple Prolog dialects |
dicts.pl -- Dict utilities |
dif.pl -- The dif/2 constraint |
edinburgh.pl -- Some traditional Edinburgh predicates |
edit.pl -- Editor interface |
error.pl |
| current_encoding/1 | True if Name is the name of a supported encoding. |  |
| current_type/3 | True when Type is a currently defined type and Var satisfies Type of the body term Body succeeds. |  |
| domain_error/2 | The argument is of the proper type, but has a value that is outside the supported values. |  |
| existence_error/2 | Culprit is of the correct type and correct domain, but there is no existing (external) resource of type ObjectType that is represented by it. |  |
| existence_error/3 | Culprit is of the correct type and correct domain, but there is no existing (external) resource of type ObjectType that is represented by it in the provided set. |  |
| has_type/2 | True if Term satisfies Type. |  |
| instantiation_error/1 | An argument is under-instantiated. |  |
| is_of_type/2 | True if Term satisfies Type. |  |
| must_be/2 | True if Term satisfies the type constraints for Type. |  |
| permission_error/3 | It is not allowed to perform Operation on (whatever is represented by) Culprit that is of the given PermissionType (in fact, the ISO Standard is confusing and vague about these terms' meaning). |  |
| representation_error/1 | A representation error indicates a limitation of the implementation. |  |
| resource_error/1 | A goal cannot be completed due to lack of resources. |  |
| syntax_error/1 | A text has invalid syntax. |  |
| type_error/2 | Tell the user that Culprit is not of the expected ValidType. |  |
| uninstantiation_error/1 | An argument is over-instantiated. |  |
exceptions.pl |
| catch/4 | As catch/3, only catching exceptions for which exception(ErrorType,Ball) is true. |  |
| error_term/2 | Describe the formal part of error(Formal,ImplDefined) exceptions. |  |
| exception/2 | If Ball is unbound, adds a delayed goal that tests the error belongs to Type when Ball is instantiated (by catch/3). |  |
| exception_term/2 | Describe exceptions that are not error(Formal, _) terms. |  |
| exception_type/2 | Declare all exceptions subsumed by Term to be an exception of Type. |  |
explain.pl -- Describe Prolog Terms |
fastrw.pl |
| fast_read/1 | The next term is read from current standard input and is unified with Term. |  |
| fast_write/1 | Output Term in a way that fast_read/1 and fast_read/2 will be able to read it back. |  |
| fast_write_to_string/3 | Perform a fast-write to the difference-slist String\Tail. |  |
files.pl |
| can_open_file/2 | Succeeds if the user has access to `File' in mode `Mode'. |  |
| chdir/1 | Change Working Directory. |  |
gensym.pl |
| gensym/2 | Generate <Base>1, <Base>2, etc atoms on each subsequent call. |  |
| reset_gensym/0 | Reset gensym for all registered keys. |  |
| reset_gensym/1 | Restart generation of identifiers from Base at <Base>1. |  |
git.pl -- Run GIT commands |
hashtable.pl -- Hash tables |
heaps.pl |
| add_to_heap/4 | Adds Key with priority Priority to Heap0, constructing a new heap in Heap. |  |
| delete_from_heap/4 | Deletes Key from Heap0, leaving its priority in Priority and the resulting data structure in Heap. |  |
| empty_heap/1 | True if Heap is an empty heap. |  |
| get_from_heap/4 | Retrieves the minimum-priority pair Priority-Key from Heap0. |  |
| heap_size/2 | Determines the number of elements in Heap. |  |
| heap_to_list/2 | Constructs a list List of Priority-Element terms, ordered by (ascending) priority. |  |
| is_heap/1 | Returns true if X is a heap. |  |
| list_to_heap/2 | If List is a list of Priority-Element terms, constructs a heap out of List. |  |
| merge_heaps/3 | Merge the two heaps Heap0 and Heap1 in Heap. |  |
| min_of_heap/3 | Unifies Key with the minimum-priority element of Heap and Priority with its priority value. |  |
| min_of_heap/5 | Gets the two minimum-priority elements from Heap. |  |
| singleton_heap/3 | True if Heap is a heap with the single element Priority-Key. |  |
help.pl |
| apropos/1 | Print objects from the manual whose name or summary match with Query. |  |
| help/0 | Show help for What. |  |
| help/1 | Show help for What. |  |
| help_text/2 | When Predicate is a term of the form Name/Arity for which documentation exists, HelpText is the documentation in textual format (parsed from the HTML help). |  |
| show_html_hook/1 | Hook called to display the extracted HTML document. |  |
increval.pl -- Incremental dynamic predicate modification |
intercept.pl |
| intercept/3 | Run Goal as call/1. |  |
| intercept/4 | Similar to intercept/3, but the copy of Handler is called as call(Copy,Arg), which allows passing large context arguments or arguments subject to unification or destructive assignment. |  |
| intercept_all/4 | True when List contains all instances of Template that have been sent using send_signal/1 where the argument unifies with Ball. |  |
| nb_intercept_all/4 | As intercept_all/4, but backtracing inside Goal does not reset List. |  |
| send_signal/1 | If this predicate is called from a sub-goal of intercept/3, execute the associated Handler of the intercept/3 environment. |  |
| send_silent_signal/1 | As send_signal/1, but succeed silently if there is no matching intercept environment. |  |
iostream.pl -- Utilities to deal with streams |
lazy_lists.pl -- Lazy list handling |
listing.pl |
| listing/0 | Lists all predicates defined in the calling module. |  |
| listing/1 | List matching clauses. |  |
| listing/2 | List matching clauses. |  |
| portray_clause/1 | Portray `Clause' on the current output stream. |  |
| portray_clause/2 | Portray `Clause' on the current output stream. |  |
| portray_clause/3 | Portray `Clause' on the current output stream. |  |
lists.pl -- List Manipulation |
macros.pl |
| expand_macros/5 | Perform macro expansion on TermIn with layout PosIn to produce TermOut with layout PosOut. |  |
| include_macros/3 | Include macros from another module. |  |
| macro_position/1 | True when Position is the position of the macro. |  |
main.pl -- Provide entry point for scripts |
make.pl |
| make/0 | Reload all source files that have been changed since they were loaded. |  |
| make_reload_file/1 | Reload file into the proper module. |  |
modules.pl |
| current_temporary_module/1 | True when we are executing in the given temporary module context. |  |
| in_temporary_module/3 | Run Goal on temporary loaded sources and discard the module and loaded predicates after completion. |  |
nb_set.pl -- Non-backtrackable sets |
occurs.pl -- Finding and counting sub-terms |
operators.pl -- Manage operators |
option.pl -- Option list processing |
optparse.pl |
| opt_arguments/3 | Extract commandline options according to a specification. |  |
| opt_help/2 | True when Help is a help string synthesized from OptsSpec. |  |
| opt_parse/4 | Equivalent to opt_parse(OptsSpec, ApplArgs, Opts, PositionalArgs, []). |  |
| opt_parse/5 | Parse the arguments Args (as list of atoms) according to OptsSpec. |  |
| parse_type/3 | Hook to parse option text Codes to an object of type Type. |  |
ordsets.pl |
| is_ordset/1 | True if Term is an ordered set. |  |
| list_to_ord_set/2 | Transform a list into an ordered set. |  |
| ord_add_element/3 | Insert an element into the set. |  |
| ord_del_element/3 | Delete an element from an ordered set. |  |
| ord_disjoint/2 | True if Set1 and Set2 have no common elements. |  |
| ord_empty/1 | True when List is the empty ordered set. |  |
| ord_intersect/2 | True if both ordered sets have a non-empty intersection. |  |
| ord_intersect/3 | Intersection holds the common elements of Set1 and Set2. |  |
| ord_intersection/2 | Intersection of a powerset. |  |
| ord_intersection/3 | Intersection holds the common elements of Set1 and Set2. |  |
| ord_intersection/4 | Intersection and difference between two ordered sets. |  |
| ord_memberchk/2 | True if Element is a member of OrdSet, compared using ==. |  |
| ord_selectchk/3 | Selectchk/3, specialised for ordered sets. |  |
| ord_seteq/2 | True if Set1 and Set2 have the same elements. |  |
| ord_subset/2 | Is true if all elements of Sub are in Super. |  |
| ord_subtract/3 | Diff is the set holding all elements of InOSet that are not in NotInOSet. |  |
| ord_symdiff/3 | Is true when Difference is the symmetric difference of Set1 and Set2. |  |
| ord_union/2 | True if Union is the union of all elements in the superset SetOfSets. |  |
| ord_union/3 | Union is the union of Set1 and Set2. |  |
| ord_union/4 | True iff ord_union(Set1, Set2, Union) and ord_subtract(Set2, Set1, New). |  |
oset.pl |
| oset_addel/3 | Ordered set element addition. |  |
| oset_delel/3 | Ordered set element deletion. |  |
| oset_diff/3 | Ordered set difference. |  |
| oset_dint/2 | Distributed intersection. |  |
| oset_dunion/2 | Distributed union. |  |
| oset_int/3 | ordered set intersection. |  |
| oset_is/1 | check that OSet in correct format (standard order). |  |
| oset_power/2 | True when PSet is the powerset of Set. |  |
| oset_union/3 | Union is the union of OSet1 and OSet2. |  |
pairs.pl -- Operations on key-value lists |
persistency.pl |
| current_persistent_predicate/1 | True if PI is a predicate that provides access to the persistent database DB. |  |
| db_assert/1 | Assert Term into the database and record it for persistency. |  |
| db_attach/2 | Use File as persistent database for the calling module. |  |
| db_attached/1 | True if the context module attached to the persistent database File. |  |
| db_detach/0 | Detach persistency from the calling module and delete all persistent clauses from the Prolog database. |  |
| db_retract/1 | Retract terms from the database one-by-one. |  |
| db_retractall/1 | Retract all matching facts and do the same in the database. |  |
| db_sync/1 | Synchronise database with the associated file. |  |
| db_sync_all/1 | Sync all registered databases. |  |
| persistent/1 | Declare dynamic database terms. |  |
pio.pl -- Pure I/O |
portray_text.pl -- Portray text |
pprint.pl -- Pretty Print Prolog terms |
predicate_options.pl -- Access and analyse predicate options |
prolog_autoload.pl -- Autoload all dependencies |
| autoload_all/0 | Force all necessary autoloading to be done now. |  |
| autoload_all/1 | Force all necessary autoloading to be done now. |  |
prolog_breakpoints.pl -- Manage Prolog break-points |
prolog_clause.pl |
| clause_info/4 | Fetches source information for the given clause. |  |
| clause_info/5 | Fetches source information for the given clause. |  |
| clause_name/2 | Provide a suitable description of the indicated clause. |  |
| initialization_layout/4 | Find term-layout of :- initialization directives. |  |
| make_varnames/5 | Create a Term varnames(...) where each argument contains the name of the variable at that offset. |  |
| open_source/2 | Hook into clause_info/5 that opens the stream holding the source for a specific clause. |  |
| predicate_name/2 | Describe a predicate as [Module:]Name/Arity. |  |
| unify_goal/5 | This hook is called to fix up source code manipulations that result from goal expansions. |  |
| unify_term/2 | Unify the two terms, where T2 is created by writing the term and reading it back in, but be aware that rounding problems may cause floating point numbers not to unify. |  |
prolog_code.pl |
| body_term_calls/2 | True when BodyTerm calls Goal. |  |
| comma_list/2 | True if CommaList is a nested term over the ','/2 (';'/2) functor and List is a list expressing the elements of the conjunction. |  |
| extend_goal/3 | Extend the possibly qualified Goal0 with additional arguments from Extra. |  |
| head_name_arity/3 | Similar to functor/3, but deals with SWI-Prolog's zero-argument callable terms and avoids creating a non-callable term if Name is not an atom and Arity is zero. |  |
| is_control_goal/1 | True if Goal is a compiled Prolog control structure. |  |
| is_predicate_indicator/1 | True when Term is a predicate indicator. |  |
| mkconj/3 | Create a conjunction or disjunction from two terms. |  |
| mkdisj/3 | Create a conjunction or disjunction from two terms. |  |
| most_general_goal/2 | General is the most general version of Goal. |  |
| pi_head/2 | Translate between a PredicateIndicator and a Goal term. |  |
| predicate_label/2 | Create a human-readable label for the given predicate indicator. |  |
| predicate_sort_key/2 | Key is the (module-free) name of the predicate for sorting purposes. |  |
| semicolon_list/2 | True if CommaList is a nested term over the ','/2 (';'/2) functor and List is a list expressing the elements of the conjunction. |  |
prolog_codewalk.pl |
| prolog_program_clause/2 | True when ClauseRef is a reference for clause in the program. |  |
| prolog_walk_code/1 | Walk over all loaded (user) Prolog code. |  |
| subterm_pos/5 | True when SubTerm is a sub term of Term, compared using Cmp, TermPosition describes the term layout of Term and SubTermPos describes the term layout of SubTerm. |  |
prolog_colour.pl -- Prolog syntax colouring support. |
prolog_coverage.pl -- Coverage analysis tool |
prolog_debug.pl |
| debug_control_hook/1 | Allow user-hooks in the Prolog debugger interaction. | |
| debugging/0 | Report current status of the debugger. |  |
| debugging_hook/1 | Multifile hook that is called as forall(debugging_hook(DebugMode), true) and that may be used to extend the information printed from other debugging libraries. |  |
| exception_hook/5 | Trap exceptions and consider whether or not to start the tracer. |  |
| nospy/1 | Set/clear spy-points. |  |
| nospyall/0 | Set/clear spy-points. |  |
| notrap/1 | Install a trap on error(Formal, Context) exceptions that unify. |  |
| spy/1 | Set/clear spy-points. |  |
| trap/1 | Install a trap on error(Formal, Context) exceptions that unify. |  |
| trap_alias/2 | Define short hands for commonly used exceptions. |  |
prolog_format.pl -- Analyse format specifications |
prolog_jiti.pl |
| jiti_list/0 | List the JITI (Just In Time Indexes) of selected predicates. |  |
| jiti_list/1 | List the JITI (Just In Time Indexes) of selected predicates. |  |
| jiti_suggest_modes/0 | Propose modes for the predicates referenced by Spec. |  |
| jiti_suggest_modes/1 | Propose modes for the predicates referenced by Spec. |  |
prolog_metainference.pl |
| infer_meta_predicate/2 | True when MetaSpec is a meta-predicate specifier for the predicate Head. |  |
| inferred_meta_predicate/2 | True when MetaSpec is an inferred meta-predicate specification for Head. |  |
prolog_pack.pl |
| pack_info/1 | Print more detailed information about Pack. |  |
| pack_install/1 | Install one or more packs from SpecOrList. |  |
| pack_install/2 | Install one or more packs from SpecOrList. |  |
| pack_install_local/3 | Install a number of packages in a local directory. |  |
| pack_list/1 | Query package server and installed packages and display results. |  |
| pack_list/2 | Query package server and installed packages and display results. |  |
| pack_list_installed/0 | List currently installed packages and report possible dependency issues. |  |
| pack_property/2 | True when Property is a property of an installed Pack. |  |
| pack_publish/2 | Publish a package. |  |
| pack_rebuild/0 | Rebuild possible foreign components of Pack. |  |
| pack_rebuild/1 | Rebuild possible foreign components of Pack. |  |
| pack_remove/1 | Remove the indicated package. |  |
| pack_remove/2 | Remove the indicated package. |  |
| pack_search/1 | Query package server and installed packages and display results. |  |
| pack_upgrade/1 | Upgrade Pack. |  |
| pack_url_file/2 | True if File is a unique id for the referenced pack and version. |  |
prolog_profile.pl |
| profile/1 | Run once(Goal) under the execution profiler. |  |
| profile/2 | Run once(Goal) under the execution profiler. |  |
| profile_data/1 | Gather all relevant data from profiler. |  |
| profile_procedure_data/2 | Collect data for Pred. |  |
| show_profile/1 | Display last collected profiling data. |  |
prolog_source.pl -- Examine Prolog source-files |
prolog_stack.pl -- Examine the Prolog stack |
prolog_trace.pl |
| list_tracing/0 | List predicates we are currently tracing. |  |
| notraceall/0 | Remove all trace points. |  |
| trace/1 | Print passes through ports of specified predicates. |  |
| trace/2 | Print passes through ports of specified predicates. |  |
| tracing/2 | True if Spec is traced using Ports. |  |
prolog_versions.pl |
| cmp_versions/3 | Compare to versions. |  |
| require_prolog_version/2 | Claim that the running Prolog version is at least version Required and provides the requested Features. |  |
| require_version/3 | Require Component to have version CmpRequired, while Component is know to have version Available. |  |
prolog_wrap.pl |
| current_predicate_wrapper/4 | True if Head is wrapped with Body. |  |
| unwrap_predicate/2 | Remove the outermost wrapper whose name unifies with Name. | |
| wrap_predicate/4 | Wrap the predicate referenced by Head using Body. |  |
prolog_xref.pl -- Prolog cross-referencer data collection |
pure_input.pl -- Pure Input from files and streams |
qsave.pl -- Save current program as a state or executable |
quasi_quotations.pl |
| phrase_from_quasi_quotation/2 | Process the quasi quotation using the DCG Grammar. |  |
| quasi_quotation_syntax/1 | Declare the predicate SyntaxName/4 to implement the the quasi quote syntax SyntaxName. |  |
| quasi_quotation_syntax_error/1 | Report syntax_error(Error) using the current location in the quasi quoted input parser. |  |
| with_quasi_quotation_input/3 | Process the quasi-quoted Content using Stream parsed by Goal. |  |
quintus.pl -- Quintus compatibility |
random.pl -- Random numbers |
rbtrees.pl |
| is_rbtree/1 | True if Term is a valid Red-Black tree. |  |
| list_to_rbtree/2 | Tree is the red-black tree corresponding to the mapping in List, which should be a list of Key-Value pairs. |  |
| ord_list_to_rbtree/2 | Tree is the red-black tree corresponding to the mapping in list List, which should be a list of Key-Value pairs. |  |
| rb_apply/4 | If the value associated with key Key is Val0 in Tree, and if call(G,Val0,ValF) holds, then NewTree differs from Tree only in that Key is associated with value ValF in tree NewTree. |  |
| rb_clone/3 | `Clone' the red-back tree TreeIn into a new tree TreeOut with the same keys as the original but with all values set to unbound values. |  |
| rb_del_max/4 | Delete the largest element from the tree Tree, returning the key Key, the value Val associated with the key and a new tree NewTree. |  |
| rb_del_min/4 | Delete the least element from the tree Tree, returning the key Key, the value Val associated with the key and a new tree NewTree. |  |
| rb_delete/3 | Delete element with key Key from the tree Tree, returning the value Val associated with the key and a new tree NewTree. |  |
| rb_delete/4 | Same as rb_delete(Tree, Key, NewTree), but also unifies Val with the value associated with Key in Tree. |  |
| rb_empty/1 | Succeeds if Tree is an empty Red-Black tree. |  |
| rb_fold/4 | Fold the given predicate over all the key-value pairs in Tree, starting with initial state State0 and returning the final state State. |  |
| rb_in/3 | True when Key-Value is a key-value pair in red-black tree Tree. |  |
| rb_insert/4 | Add an element with key Key and Value to the tree Tree creating a new red-black tree NewTree. |  |
| rb_insert_new/4 | Add a new element with key Key and Value to the tree Tree creating a new red-black tree NewTree. |  |
| rb_keys/2 | Keys is unified with an ordered list of all keys in the Red-Black tree Tree. |  |
| rb_lookup/3 | True when Value is associated with Key in the Red-Black tree Tree. |  |
| rb_map/2 | True if call(Goal, Value) is true for all nodes in T. |  |
| rb_map/3 | For all nodes Key in the tree Tree, if the value associated with key Key is Val0 in tree Tree, and if call(G,Val0,ValF) holds, then the value associated with Key in NewTree is ValF. |  |
| rb_max/3 | Key is the maximal key in Tree, and is associated with Val. |  |
| rb_min/3 | Key is the minimum key in Tree, and is associated with Val. |  |
| rb_new/1 | Create a new Red-Black tree Tree. |  |
| rb_next/4 | Next is the next element after Key in Tree, and is associated with Val. |  |
| rb_partial_map/4 | For all nodes Key in Keys, if the value associated with key Key is Val0 in tree Tree, and if call(G,Val0,ValF) holds, then the value associated with Key in NewTree is ValF, otherwise it is the value associated with the key in Tree. |  |
| rb_previous/4 | Previous is the previous element after Key in Tree, and is associated with Val. |  |
| rb_size/2 | Size is the number of elements in Tree. |  |
| rb_update/4 | Tree NewTree is tree Tree, but with value for Key associated with NewVal. |  |
| rb_update/5 | Same as rb_update(Tree, Key, NewVal, NewTree) but also unifies OldVal with the value associated with Key in Tree. |  |
| rb_visit/2 | Pairs is an infix visit of tree Tree, where each element of Pairs is of the form Key-Value. |  |
readln.pl |
readutil.pl -- Read utilities |
record.pl -- Access compound arguments by name |
sandbox.pl |
| sandbox_allowed_directive/1 | Throws an exception if G is not considered a safe directive. |  |
| sandbox_allowed_expansion/1 | Throws an exception if G is not considered a safe expansion goal. |  |
| sandbox_allowed_goal/1 | Throw an exception if it is not safe to call G. |  |
| format_calls/3 | Find ~@ calls from Format and Args. |  |
| safe_call/1 | Call Goal if it complies with the sandboxing rules. |  |
| safe_directive/1 | Hook to declare additional directives as safe. |  |
| safe_global_variable/1 | Declare the given global variable safe to write to. |  |
| safe_goal/1 | True if calling Goal provides no security risc. |  |
| safe_meta/2 | Hook. |  |
| safe_primitive/1 | True if Goal is safe to call (i.e., cannot access dangerous system-resources and cannot upset other parts of the Prolog process). |  |
| safe_prolog_flag/2 | True if it is safe to set the flag Flag to Value. |  |
settings.pl |
| convert_setting_text/3 | Converts from textual form to Prolog Value. |  |
| current_setting/1 | True if Setting is a currently defined setting. |  |
| env/2 | Evaluate environment variables on behalf of arithmetic expressions. |  |
| env/3 | Evaluate environment variables on behalf of arithmetic expressions. |  |
| list_settings/0 | List settings to current_output. |  |
| list_settings/1 | List settings to current_output. |  |
| load_settings/1 | Load local settings from File. |  |
| load_settings/2 | Load local settings from File. |  |
| restore_setting/1 | Restore the value of setting Name to its default. |  |
| save_settings/0 | Save modified settings to File. |  |
| save_settings/1 | Save modified settings to File. |  |
| set_setting/2 | Change a setting. |  |
| set_setting_default/2 | Change the default for a setting. |  |
| setting/2 | True when Name is a currently defined setting with Value. |  |
| setting/4 | Define a setting. |  |
| setting_property/2 | Query currently defined settings. |  |
shell.pl |
| cd/0 | Change working directory. |  |
| cd/1 | Change working directory. |  |
| dirs/0 | Manage the directory stack:. |  |
| file_style/2 | True when File should be listed as a terminal hyperlink. |  |
| ls/0 | Listing similar to Unix =ls -F=, flagging directories with =/=. |  |
| ls/1 | Listing similar to Unix =ls -F=, flagging directories with =/=. |  |
| mv/2 | Move (Rename) a file. |  |
| popd/0 | Manage the directory stack:. |  |
| pushd/0 | Manage the directory stack:. |  |
| pushd/1 | Manage the directory stack:. |  |
| pwd/0 | Print current working directory. |  |
| rm/1 | Remove (unlink) a file. |  |
| shell/0 | Execute an interactive shell. |  |
shlib.pl |
| compat_arch/2 | User definable hook to establish if Arch1 is compatible with Arch2 when running a shared object. |  |
| current_foreign_library/2 | Query currently loaded shared libraries. |  |
| load_foreign_library/1 | Load a shared object or DLL. |  |
| load_foreign_library/2 | Load a shared object or DLL. |  |
| reload_foreign_libraries/0 | Reload all foreign libraries loaded (after restore of a state created using qsave_program/2. |  |
| unload_foreign_library/1 | Unload a shared object or DLL. |  |
| unload_foreign_library/2 | Unload a shared object or DLL. |  |
| use_foreign_library/1 | Load and install a foreign library as load_foreign_library/1,2 and register the installation using initialization/2 with the option now. |  |
| use_foreign_library/2 | Load and install a foreign library as load_foreign_library/1,2 and register the installation using initialization/2 with the option now. |  |
solution_sequences.pl -- Modify solution sequences |
sort.pl |
| locale_sort/2 | Sort a list of atoms using the current locale. |  |
| predsort/3 | Sorts similar to sort/2, but determines the order of two terms by calling Compare(-Delta, +E1, +E2). |  |
statistics.pl -- Get information about resource usage |
streams.pl -- Manage Prolog streams |
| with_output_to/3 | Run Goal and once/1 while capturing all output to all streams (current_output, user_output and user_error) in the string Output. |  |
strings.pl -- String utilities |
system.pl -- System utilities |
tables.pl -- XSB interface to tables |
terms.pl -- Term manipulation |
thread.pl |
| call_in_thread/2 | Run Goal as an interrupt in the context of Thread. |  |
| concurrent/3 | Run Goals in parallel using N threads. |  |
| concurrent_and/2 | Concurrent version of (Generator,Test). |  |
| concurrent_and/3 | Concurrent version of (Generator,Test). |  |
| concurrent_forall/2 | True when Action is true for all solutions of Generate. |  |
| concurrent_forall/3 | True when Action is true for all solutions of Generate. |  |
| concurrent_maplist/2 | Concurrent version of maplist/2. |  |
| concurrent_maplist/3 | Concurrent version of maplist/2. |  |
| concurrent_maplist/4 | Concurrent version of maplist/2. |  |
| first_solution/3 | Try alternative solvers concurrently, returning the first answer. |  |
thread_pool.pl -- Resource bounded thread management |
threadutil.pl -- Interactive thread utilities |
ugraphs.pl |
| add_edges/3 | Unify NewGraph with a new graph obtained by adding the list of Edges to Graph. |  |
| add_vertices/3 | Unify NewGraph with a new graph obtained by adding the list of Vertices to Graph. |  |
| complement/2 | UGraphOut is a ugraph with an edge between all vertices that are not connected in UGraphIn and all edges from UGraphIn removed. |  |
| compose/3 | Compose NewGraph by connecting the drains of LeftGraph to the sources of RightGraph. |  |
| connect_ugraph/3 | Adds Start as an additional vertex that is connected to all vertices in UGraphIn. |  |
| del_edges/3 | Unify NewGraph with a new graph obtained by removing the list of Edges from Graph. |  |
| del_vertices/3 | Unify NewGraph with a new graph obtained by deleting the list of Vertices and all the edges that start from or go to a vertex in Vertices to the Graph. |  |
| edges/2 | Unify Edges with all edges appearing in Graph. |  |
| neighbors/3 | Neigbours is a sorted list of the neighbours of Vertex in Graph. |  |
| neighbours/3 | Neigbours is a sorted list of the neighbours of Vertex in Graph. |  |
| reachable/3 | True when Vertices is an ordered set of vertices reachable in UGraph, including Vertex. |  |
| top_sort/2 | Sort vertices topologically. |  |
| transitive_closure/2 | Generate the graph Closure as the transitive closure of Graph. |  |
| transpose_ugraph/2 | Unify NewGraph with a new graph obtained from Graph by replacing all edges of the form V1-V2 by edges of the form V2-V1. |  |
| ugraph_layers/2 | Sort vertices topologically. |  |
| ugraph_union/3 | NewGraph is the union of Graph1 and Graph2. |  |
| vertices/2 | Unify Vertices with all vertices appearing in Graph. |  |
| vertices_edges_to_ugraph/3 | Create a UGraph from Vertices and Edges. |  |
url.pl -- Analysing and constructing URL |
utf8.pl |
| utf8_codes/3 | DCG translating between a Unicode code-list and its UTF-8 encoded byte-string. |  |
varnumbers.pl |
| max_var_number/3 | True when Max is the max of Start and the highest numbered $VAR(N) term. |  |
| numbervars/1 | Number variables in Term using $VAR(N). |  |
| varnumbers/2 | Inverse of numbervars/1. |  |
| varnumbers/3 | Inverse of numbervars/3. |  |
| varnumbers_names/3 | If Term is a term with numbered and named variables using the reserved term '$VAR'(X), Copy is a copy of Term where each '$VAR'(X) is consistently replaced by a fresh variable and Bindings is a list X = Var, relating the X terms with the variable it is mapped to. |  |
wfs.pl -- Well Founded Semantics interface |
when.pl |
| when/2 | Execute Goal when Condition is satisfied. |  |
writef.pl |
| swritef/2 | Use writef/1 or writef/2 and write the result to a string. |  |
| swritef/3 | Use writef/1 or writef/2 and write the result to a string. |  |
| writef/1 | Formatted write to the current_output. |  |
| writef/2 | Formatted write to the current_output. |  |
www_browser.pl |
| expand_url_path/2 | Expand URL specifications similar to absolute_file_name/3. |  |
| known_browser/2 | True if browser FileBaseName has a remote protocol compatible to Compatible. |  |
| www_open_url/1 | Open URL in running version of the users' browser or start a new browser. |  |
yall.pl |
| //2 | Shorthand for Free/[]>>Lambda. |  |
| //3 | Shorthand for Free/[]>>Lambda. |  |
| //4 | Shorthand for Free/[]>>Lambda. |  |
| //5 | Shorthand for Free/[]>>Lambda. |  |
| //6 | Shorthand for Free/[]>>Lambda. |  |
| //7 | Shorthand for Free/[]>>Lambda. |  |
| //8 | Shorthand for Free/[]>>Lambda. |  |
| //9 | Shorthand for Free/[]>>Lambda. |  |
| >>/2 | Calls a copy of Lambda. |  |
| >>/3 | Calls a copy of Lambda. |  |
| >>/4 | Calls a copy of Lambda. |  |
| >>/5 | Calls a copy of Lambda. |  |
| >>/6 | Calls a copy of Lambda. |  |
| >>/7 | Calls a copy of Lambda. |  |
| >>/8 | Calls a copy of Lambda. |  |
| >>/9 | Calls a copy of Lambda. |  |
| is_lambda/1 | True if Term is a valid Lambda expression. |  |
| lambda_calls/2 | Goal is the goal called if call/N is applied to LambdaExpression, where ExtraArgs are the additional arguments to call/N. |  |
| lambda_calls/3 | Goal is the goal called if call/N is applied to LambdaExpression, where ExtraArgs are the additional arguments to call/N. |  |
zip.pl -- Access resource ZIP archives |