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 |
| apply_macros_sentinel/0 | Used to detect that library(apply_macros) is loaded into the current context explicitly. |  |
| expand_phrase/2 | Provide goal-expansion for PhraseGoal. |  |
| expand_phrase/4 | Provide goal-expansion for PhraseGoal. |  |
arithmetic.pl |
| arithmetic_expression_value/2 | True when Result unifies with the arithmetic result of evaluating Expression. |  |
| arithmetic_function/1 | Declare a predicate as an arithmetic function. |  |
assoc.pl -- Binary associations |
atom.pl -- Operations on atoms |
backcomp.pl -- Backward compatibility |
| $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 -- Event service |
charsio.pl -- I/O on Lists of Character Codes |
| 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 |
check_installation.pl -- Check installation issues and features |
| check_config_files/0 | Examines the locations of config files. |  |
| check_installation/0 | Check features of the installed system. |  |
| check_installation/1 | As check_installation/0, but additionally returns a list of Component-Problem pairs. |  |
| test_installation/0 | Run regression tests in the installed system. |  |
| test_installation/1 | Run regression tests in the installed system. |  |
| update_config_files/0 | Move config files from their old location to the new if the file or directory exists in the old location but not in the new. |  |
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 |
| is_digit/3 | Succeeds if `C' is a digit using `Base' as base and `Weight' represents its value. |  |
| is_paren/2 | True if Open is the open-parenthesis of Close. |  |
| to_lower/2 | Downcase a character code. |  |
| to_upper/2 | Upcase a character code. |  |
| upper_lower/2 | True when U is the character code of an uppercase character and L is the character code of the corresponding lowercase character. |  |
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 |
| debug/0 | Switch on/off debug mode. |  |
| display/1 | Write a term, ignoring operators and special syntax constructs such as brace terms ({a}) and lists ([a,b,c]). |  |
| display/2 | Write a term, ignoring operators and special syntax constructs such as brace terms ({a}) and lists ([a,b,c]). |  |
| fileerrors/2 | Query and change the fileerrors flag. |  |
| nodebug/0 | Switch on/off debug mode. |  |
| reconsult/1 | Load source file(s), wiping the old content first. |  |
| unknown/2 | Edinburgh Prolog predicate for dealing dealing with undefined procedures. |  |
edit.pl |
| edit/0 | Edit associated or script file. |  |
| edit/1 | Edit indicated object. |  |
| edit_command/2 | This predicate should specify the shell-command called to invoke the user's editor. |  |
| locate/2 | Locate object from the specified location. |  |
| locate/3 | |  |
| predicate_location/2 | Find the source location of a predicate. |  |
| select_location/3 | |  |
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 -- Exception classification |
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 Value with priority Key to Heap0, constructing a new heap in Heap. |  |
| delete_from_heap/4 | Deletes Value from Heap0, leaving its priority in Key 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 Key-Value from Heap0. |  |
| heap_size/2 | Determines the number of elements in Heap. |  |
| heap_to_list/2 | Constructs a list List of Key-Value 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 Key-Value terms, constructs a heap out of List. |  |
| merge_heaps/3 | Merge the two heaps Heap0 and Heap1 in Heap. |  |
| min_of_heap/3 | Unifies Value with the minimum-priority element of Heap and Key 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 Key-Value. |  |
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 |
| incr_directly_depends/2 | True if Goal1 depends on Goal2 in the IDG. |  |
| incr_invalid_subgoals/1 | List is a sorted list (set) of the incremental subgoals that are currently invalid. |  |
| incr_invalidate_call/1 | This is the XSB name, but the manual says incr_invalidate_calls/1 and the comment with the code suggests this is misnamed. |  |
| incr_invalidate_calls/1 | Invalidate all tables for subgoals of Goal as well as tables that are affected by these. |  |
| incr_is_invalid/1 | True when Subgoal's table is marked as invalid. |  |
| incr_propagate_calls/1 | Activate the monotonic answer propagation similarly to when a new fact is asserted for a monotonic dynamic predicate. |  |
| incr_table_update/0 | Updated all invalid tables. |  |
| incr_trans_depends/2 | True for each pair in the transitive closure of incr_directly_depends(G1, G2). |  |
| is_incremental_subgoal/1 | This predicate non-deterministically unifies Subgoal with incrementally tabled subgoals that are currently table entries. |  |
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 |
| close_any/1 | Execute the Close closure returned by open_any/5. |  |
| open_any/5 | Establish a stream from Specification that should be closed using Close, which can either be called or passed to close_any/1. |  |
lazy_lists.pl |
| lazy_engine_next/4 | Lazy list iterator for engines. |  |
| lazy_findall/3 | True when List is a lazy list containing the instantiations for Template for each answer of Goal. |  |
| lazy_findall/4 | True when List is a lazy list containing the instantiations for Template for each answer of Goal. |  |
| lazy_get_codes/4 | Lazy list iterator to get character codes from a stream. |  |
| lazy_list/2 | Create a lazy list from a callback. |  |
| lazy_list/3 | Create a lazy list where the next element is defined by. |  |
| lazy_list_iterator/4 | Directive to create a lazy list iterator from a predicate that gets a single next value. |  |
| lazy_list_length/2 | True if Len is the length of the materialized lazy list. |  |
| lazy_list_materialize/1 | Materialize the lazy list. |  |
| lazy_message_queue/4 | Lazy list iterator for message queues. |  |
| lazy_read_lines/4 | Lazy list iterator to read lines from Stream. |  |
| lazy_read_terms/4 | Turn a stream into a lazy list of Prolog terms. |  |
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 |
| append/2 | Concatenate a list of lists. |  |
| append/3 | List1AndList2 is the concatenation of List1 and List2. |  |
| clumped/2 | Pairs is a list of Item-Count pairs that represents the run length encoding of Items. |  |
| delete/3 | Delete matching elements from a list. |  |
| flatten/2 | Is true if FlatList is a non-nested version of NestedList. |  |
| intersection/3 | True if Set3 unifies with the intersection of Set1 and Set2. |  |
| is_set/1 | True if Set is a proper list without duplicates. |  |
| last/2 | Succeeds when Last is the last element of List. |  |
| list_to_set/2 | True when Set has the same elements as List in the same order. |  |
| max_list/2 | True if Max is the largest number in List. |  |
| max_member/2 | True when Max is the largest member in the standard order of terms. |  |
| max_member/3 | True when Max is the largest member according to Pred, which must be a 2-argument callable that behaves like (@=<)/2. |  |
| member/2 | True if Elem is a member of List. |  |
| min_list/2 | True if Min is the smallest number in List. |  |
| min_member/2 | True when Min is the smallest member in the standard order of terms. |  |
| min_member/3 | True when Min is the smallest member according to Pred, which must be a 2-argument callable that behaves like (@=<)/2. |  |
| nextto/3 | True if Y directly follows X in List. |  |
| nth0/3 | True when Elem is the Index'th element of List. |  |
| nth0/4 | Select/insert element at index. |  |
| nth1/3 | Is true when Elem is the Index'th element of List. |  |
| nth1/4 | As nth0/4, but counting starts at 1. |  |
| numlist/3 | List is a list [Low, Low+1, ... High]. |  |
| permutation/2 | True when Xs is a permutation of Ys. |  |
| prefix/2 | True iff Part is a leading substring of Whole. |  |
| proper_length/2 | True when Length is the number of elements in the proper list List. |  |
| reverse/2 | Is true when the elements of List2 are in reverse order compared to List1. |  |
| same_length/2 | Is true when List1 and List2 are lists with the same number of elements. |  |
| select/3 | Is true when List1, with Elem removed, results in List2. |  |
| select/4 | Select from two lists at the same position. |  |
| selectchk/3 | Semi-deterministic removal of first element in List that unifies with Elem. |  |
| selectchk/4 | Semi-deterministic version of select/4. |  |
| subseq/3 | Is true when SubList contains a subset of the elements of List in the same order and Complement contains all elements of List not in SubList, also in the order they appear in List. |  |
| subset/2 | True if all elements of SubSet belong to Set as well. |  |
| subtract/3 | Delete all elements in Delete from Set. |  |
| sum_list/2 | Sum is the result of adding all numbers in List. |  |
| union/3 | True if Set3 unifies with the union of the lists Set1 and Set2. |  |
macros.pl -- Macro expansion |
main.pl -- Provide entry point for scripts |
make.pl -- Reload modified source files |
modules.pl -- Module utility predicates |
nb_rbtrees.pl |
| nb_rb_get_node/3 | True if Node is the node in RBTree associated to Key. |  |
| nb_rb_insert/3 | Add Key-Value to the tree RBTree using non-backtrackable destructive assignment. |  |
| nb_rb_node_value/2 | Value is the value associated to Node. |  |
| nb_rb_set_node_value/2 | Associate Value with Node. |  |
nb_set.pl -- Non-backtrackable sets |
occurs.pl -- Finding and counting sub-terms |
operators.pl -- Manage operators |
option.pl |
| dict_options/2 | Convert between an option list and a dictionary. |  |
| merge_options/3 | Merge two option sets. |  |
| meta_options/3 | Perform meta-expansion on options that are module-sensitive. |  |
| option/2 | Get an Option from Options. |  |
| option/3 | Get an Option from Options. |  |
| select_option/3 | Get and remove Option from Options. |  |
| select_option/4 | Get and remove Option with default value. |  |
optparse.pl -- command line parsing |
ordsets.pl -- Ordered set manipulation |
oset.pl -- Ordered set manipulation |
pairs.pl -- Operations on key-value lists |
persistency.pl -- Provide persistent dynamic predicates |
pio.pl |
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 -- Utilities for reasoning about code |
prolog_codewalk.pl -- Prolog code walker |
prolog_colour.pl -- Prolog syntax colouring support. |
prolog_config.pl |
| prolog_config/2 | Get information on the configuration of the current Prolog system. |  |
| prolog_dump_runtime_variables/0 | Dump the current configuration in shell format. |  |
prolog_coverage.pl |
| cov_load_data/2 | Reload coverage data from File. |  |
| cov_property/1 | True when coverage analysis satisfies Property. |  |
| cov_reset/0 | Discard all collected coverage data. |  |
| cov_save_data/2 | Save the coverage information to File. |  |
| coverage/1 | As call(Goal), collecting coverage information while Goal is running. |  |
| coverage/2 | Collect and optionally report coverage by Goal. |  |
| report_hook/2 | This hook is called after the data collection. |  |
| show_coverage/1 | Show collected coverage data. |  |
prolog_debug.pl -- User level debugging tools |
| 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_deps.pl |
| file_auto_import/2 | Update the autoload/2 directives for File. |  |
| file_autoload_directives/3 | Compute the dependencies as autoload/2 directives. |  |
prolog_format.pl -- Analyse format specifications |
prolog_history.pl -- Per-directory persistent commandline history |
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 -- A package manager for Prolog |
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 -- Print access to predicates |
prolog_versions.pl -- Demand specific (Prolog) versions |
prolog_wrap.pl -- Wrapping predicates |
prolog_xref.pl -- Prolog cross-referencer data collection |
pure_input.pl -- Pure Input from files and streams |
qpforeign.pl -- Quintus compatible foreign loader |
qsave.pl -- Save current program as a state or executable |
quasi_quotations.pl -- Define Quasi Quotation syntax |
quintus.pl -- Quintus compatibility |
random.pl |
| getrand/1 | Query/set the state of the random generator. |  |
| maybe/0 | Succeed/fail with equal probability (variant of maybe/1). |  |
| maybe/1 | Succeed with probability P, fail with probability 1-P. |  |
| maybe/2 | Succeed with probability K/N (variant of maybe/1). |  |
| random/1 | Binds R to a new random float in the open interval (0.0,1.0). |  |
| random/3 | Generate a random integer or float in a range. |  |
| random_between/3 | Binds R to a random integer in [L,U] (i.e., including both L and U). |  |
| random_member/2 | X is a random member of List. |  |
| random_numlist/4 | Unify List with an ascending list of integers between L and U (inclusive). |  |
| random_perm2/4 | Does X=A,Y=B or X=B,Y=A with equal probability. |  |
| random_permutation/2 | Permutation is a random permutation of List. |  |
| random_select/3 | Randomly select or insert an element. |  |
| random_subseq/3 | Selects a random subsequence Subseq of List, with Complement containing all elements of List that were not selected. |  |
| randseq/3 | S is a list of K unique random integers in the range 1..N. |  |
| randset/3 | S is a sorted list of K unique random integers in the range 1..N. |  |
| setrand/1 | Query/set the state of the random generator. |  |
rbtrees.pl -- Red black trees |
| 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_file_to_codes/3 | Read the file Spec into a list of Codes. |  |
| read_file_to_string/3 | Read the file Spec into a the string String. |  |
| read_file_to_terms/3 | Read the file Spec into a list of terms. |  |
| read_line_to_codes/2 | Read the next line of input from Stream. |  |
| read_line_to_codes/3 | Difference-list version to read an input line to a list of character codes. |  |
| read_line_to_string/2 | Read the next line from Stream into String. |  |
| read_stream_to_codes/2 | Read input from Stream to a list of character codes. |  |
| read_stream_to_codes/3 | Read input from Stream to a list of character codes. |  |
record.pl -- Access compound arguments by name |
rwlocks.pl |
| with_rwlock/3 | Run Goal, synchronized with LockId in ModeSpec. |  |
| with_rwlock/4 | Run Goal, synchronized with LockId in ModeSpec. |  |
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 -- Setting management |
shell.pl -- Elementary shell commands |
shlib.pl -- Utility library for loading foreign objects (DLLs, shared objects) |
solution_sequences.pl -- Modify solution sequences |
sort.pl |
statistics.pl -- Get information about resource usage |
| call_time/2 | Call Goal as call/1, unifying Time with a dict that provides information on the resource usage. |  |
| call_time/3 | Call Goal as call/1, unifying Time with a dict that provides information on the resource usage. |  |
| statistics/0 | Print information about resource usage using print_message/2. |  |
| statistics/1 | Stats is a dict representing the same information as statistics/0. |  |
| thread_statistics/2 | Obtain statistical information about a single thread. |  |
| time/1 | Execute Goal, reporting statistics to the user. |  |
streams.pl |
| 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 |
| lock_predicate/1 | Transform a predicate into a system predicate. |  |
| system_mode/1 | Switch the system into system or user mode. |  |
| system_module/0 | Any predicate defined after this declaraction uptil the end of the file will become a system predicate. |  |
| unlock_predicate/1 | Transform a system predicate into a normal system predicate. |  |
tables.pl -- XSB interface to tables |
terms.pl -- Term manipulation |
thread.pl -- High level thread primitives |
| call_in_thread/2 | Run Goal as an interrupt in the context of Thread. |  |
| call_in_thread/3 | 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 |
| attach_console/0 | Create a new console and make the standard Prolog streams point to it. |  |
| attach_console/1 | Create a new console and make the standard Prolog streams point to it. |  |
| join_threads/0 | Join all terminated threads. |  |
| tbacktrace/1 | Print a backtrace for Thread to the stream user_error of the calling thread. |  |
| tbacktrace/2 | Print a backtrace for Thread to the stream user_error of the calling thread. |  |
| tdebug/0 | Enable debug-mode, trapping the graphical debugger on reaching spy-points or errors. |  |
| tdebug/1 | Enable debug-mode, trapping the graphical debugger on reaching spy-points or errors. |  |
| thread_has_console/0 | True when the calling thread has an attached console. |  |
| threads/0 | List currently known threads with their status. |  |
| tnodebug/0 | Disable debug-mode in all threads or the specified Thread. |  |
| tnodebug/1 | Disable debug-mode in all threads or the specified Thread. |  |
| tprofile/1 | Profile the operation of Thread until the user hits a key. |  |
| tspy/1 | Trap the graphical debugger on reaching Spec in the specified or any thread. |  |
| tspy/2 | Trap the graphical debugger on reaching Spec in the specified or any thread. |  |
| with_stopped_threads/2 | Stop all threads except the caller while running once(Goal). |  |
tty.pl -- Terminal operations |
ugraphs.pl -- Graph manipulation library |
url.pl -- Analysing and constructing URL |
utf8.pl -- UTF-8 encoding/decoding on lists of character codes. |
varnumbers.pl -- Utilities for numbered terms |
vm.pl |
| clause_vm/2 | True when VM is the virtual machine code of ClauseRef. |  |
| vm_list/1 | Lists the definition of the predicates matching Spec to current_output. |  |
| vmi_labels/2 | Translated between a raw and a labeled representation for a VMI sequence as produced by clause_vm/2. |  |
wfs.pl -- Well Founded Semantics interface |
when.pl -- Conditional coroutining |
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 -- Open a URL in the users browser |
yall.pl -- Lambda expressions |
zip.pl -- Access resource ZIP archives |