library

Prolog files

aggregate.pl  -- Aggregation operators on backtrackable predicatesShow source
aggregate/3Aggregate bindings in Goal according to Template.Source
aggregate/4Aggregate bindings in Goal according to Template.Source
aggregate_all/3Aggregate bindings in Goal according to Template.Source
aggregate_all/4Aggregate bindings in Goal according to Template.Source
foreach/2True when the conjunction of instances of Goal created from solutions for Generator is true.Source
free_variables/4Find free variables in bagof/setof template.Source
safe_meta/2Declare the aggregate meta-calls safe.Source
ansi_term.pl  -- Print decorated text to ANSI consolesShow source
ansi_format/3Format text with ANSI attributes.Source
ansi_get_color/2Obtain the RGB color for an ANSI color parameter.Source
ansi_hyperlink/2Create a hyperlink for a terminal emulator.Source
ansi_hyperlink/3Create a hyperlink for a terminal emulator.Source
console_color/2Hook that allows for mapping abstract terms to concrete ANSI attributes.
message_line_element/2Hook implementation that deals with ansi(+Attr, +Fmt, +Args) in message specifications.Source
apply.pl  -- Apply predicates on a listShow source
apply_macros.pl  -- Goal expansion rules to avoid meta-callingShow source
apply_macros_sentinel/0Used to detect that library(apply_macros) is loaded into the current context explicitly.Source
expand_phrase/2Provide goal-expansion for PhraseGoal.Source
expand_phrase/4Provide goal-expansion for PhraseGoal.Source
arithmetic.plShow source
arithmetic_expression_value/2True when Result unifies with the arithmetic result of evaluating Expression.Source
arithmetic_function/1Declare a predicate as an arithmetic function.Source
assoc.pl  -- Binary associationsShow source
atom.pl  -- Operations on atomsShow source
backcomp.pl  -- Backward compatibilityShow source
base32.pl  -- Base32 encoding and decodingShow source
base32/2Translates between plaintext and base32 encoded atom or string.Source
base32/3Encode/decode list of character codes using base32.Source
base64.pl  -- Base64 encoding and decodingShow source
base64/2Equivalent to base64_encoded/3 using the options as(atom) and encoding(iso_latin_1).Source
base64/3Encode/decode list of character codes using base64.Source
base64_encoded/3General the base64 encoding and decoding.Source
base64_encoded/4Source
base64url/2Translates between plaintext and base64url encoded atom or string.Source
base64url/3Encode/decode list of character codes using Base64URL.Source
broadcast.pl  -- Event serviceShow source
broadcast/1Broadcast given event.Source
broadcast_request/1Broadcast given event till accepted.Source
listen/2Open a channel for listening for events of the given `Templ'.Source
listen/3Open a channel for listening for events of the given `Templ'.Source
listening/3returns currently open channels.Source
unlisten/1Destroy a channel.Source
unlisten/2Destroy a channel.Source
unlisten/3Destroy a channel.Source
charsio.pl  -- I/O on Lists of Character CodesShow source
check.pl  -- Consistency checkingShow source
check/0Run all consistency checks defined by checker/2.Source
checker/2Register code validation routines.Source
list_autoload/0Report predicates that may be auto-loaded.Source
list_cross_module_calls/0List calls from one module to another using Module:Goal where the callee is not defined exported, public or multifile, i.e., where the callee should be considered private.Source
list_format_errors/0List argument errors for format/2,3.Source
list_format_errors/1List argument errors for format/2,3.Source
list_rationals/0List rational numbers that appear in clauses.Source
list_rationals/1List rational numbers that appear in clauses.Source
list_redefined/0Lists predicates that are defined in the global module user as well as in a normal module; that is, predicates for which the local definition overrules the global default definition.Source
list_strings/0List strings that appear in clauses.Source
list_strings/1List strings that appear in clauses.Source
list_trivial_fails/0List goals that trivially fail because there is no matching clause.Source
list_trivial_fails/1List goals that trivially fail because there is no matching clause.Source
list_undefined/0Report undefined predicates.Source
list_undefined/1Report undefined predicates.Source
list_void_declarations/0List predicates that have declared attributes, but no clauses.Source
string_predicate/1Multifile hook to disable list_strings/0 on the given predicate.Source
trivial_fail_goal/1Multifile hook that tells list_trivial_fails/0 to accept Goal as valid.Source
valid_string_goal/1Multifile hook that qualifies Goal as valid for list_strings/0.Source
codesio.pl  -- I/O on Lists of Character CodesShow source
format_to_codes/3Use format/2 to write to a list of character codes.Source
format_to_codes/4Use format/2 to write to a difference list of character codes.Source
open_codes_stream/2Open Codes as an input stream.Source
read_from_codes/2Read Codes into Term.Source
read_term_from_codes/3Read Codes into Term.Source
with_output_to_codes/2Run Goal with as once/1.Source
with_output_to_codes/3Run Goal with as once/1.Source
with_output_to_codes/4As with_output_to_codes/3, but Stream is unified with the temporary stream.Source
write_term_to_codes/3True when Codes is a string that matches the output of write_term/3 using Options.Source
write_term_to_codes/4True when Codes\Tail is a difference list containing the character codes that matches the output of write_term/3 using Options.Source
write_to_codes/2Codes is a list of character codes produced by write/1 on Term.Source
write_to_codes/3Codes is a difference-list of character codes produced by write/1 on Term.Source
coinduction.pl  -- Co-Logic ProgrammingShow source
csv.pl  -- Process CSV (Comma-Separated Values) dataShow source
csv/3Prolog DCG to `read/write' CSV data.Source
csv/4Prolog DCG to `read/write' CSV data.Source
csv_options/2Compiled is the compiled representation of the CSV processing options as they may be passed into csv//2, etc.Source
csv_read_file/2Read a CSV file into a list of rows.Source
csv_read_file/3Read a CSV file into a list of rows.Source
csv_read_file_row/3True when Row is a row in File.Source
csv_read_row/3Read the next CSV record from Stream and unify the result with Row.Source
csv_read_stream/3Read CSV data from Stream.Source
csv_write_file/2Write a list of Prolog terms to a CSV file.Source
csv_write_file/3Write a list of Prolog terms to a CSV file.Source
csv_write_stream/3Write the rows in Data to Stream.Source
ctypes.pl  -- Character code classificationShow source
is_digit/3Succeeds if `C' is a digit using `Base' as base and `Weight' represents its value.Source
is_paren/2True if Open is the open-parenthesis of Close.Source
to_lower/2Downcase a character code.Source
to_upper/2Upcase a character code.Source
upper_lower/2True when U is the character code of an uppercase character and L is the character code of the corresponding lowercase character.Source
date.pl  -- Process dates and timesShow source
debug.pl  -- Print debug messages and test assertionsShow source
assertion_failed/2This hook is called if the Goal of assertion/1 fails.
debug_print_hook/3Hook called by debug/3.Source
assertion/1Acts similar to C assert() macro.Source
debug/1Add/remove a topic from being printed.Source
debug/3Format a message if debug topic is enabled.Source
debug_message_context/1Specify additional context for debug messages.Source
debugging/1Examine debug topics.Source
debugging/2Examine debug topics.Source
list_debug_topics/0List currently known topics for debug/3 and their setting.Source
list_debug_topics/1List currently known topics for debug/3 and their setting.Source
nodebug/1Add/remove a topic from being printed.Source
dialect.pl  -- Support multiple Prolog dialectsShow source
dicts.pl  -- Dict utilitiesShow source
dict_fill/4Implementation for the dicts_to_same_keys/3 OnEmpty closure that fills new cells with a copy of ValueIn.Source
dict_keys/2True when Keys is an ordered set of the keys appearing in Dict.Source
dict_size/2True when KeyCount is the number of keys in Dict.Source
dicts_join/3Join dicts in Dicts that have the same value for Key, provided they do not have conflicting values on other keys.Source
dicts_join/4Join two lists of dicts (Dicts1 and Dicts2) on Key.Source
dicts_same_keys/2True if List is a list of dicts that all have the same keys and Keys is an ordered set of these keys.Source
dicts_same_tag/2True when List is a list of dicts that all have the tag Tag.Source
dicts_slice/3DictsOut is a list of Dicts only containing values for Keys.Source
dicts_to_compounds/4True when Dicts and Compounds are lists of the same length and each element of Compounds is a compound term whose arguments represent the values associated with the corresponding keys in Keys.Source
dicts_to_same_keys/3DictsOut is a copy of DictsIn, where each dict contains all keys appearing in all dicts of DictsIn.Source
mapdict/2True when all dicts have the same set of keys and call(Goal, Key, V1, ...) is true for all keys in the dicts.Source
mapdict/3True when all dicts have the same set of keys and call(Goal, Key, V1, ...) is true for all keys in the dicts.Source
mapdict/4True when all dicts have the same set of keys and call(Goal, Key, V1, ...) is true for all keys in the dicts.Source
dif.pl  -- The dif/2 constraintShow source
dif/2Constraint that expresses that Term1 and Term2 never become identical (==/2).Source
edinburgh.pl  -- Some traditional Edinburgh predicatesShow source
debug/0Switch on/off debug mode.Source
display/1Write a term, ignoring operators and special syntax constructs such as brace terms ({a}) and lists ([a,b,c]).Source
display/2Write a term, ignoring operators and special syntax constructs such as brace terms ({a}) and lists ([a,b,c]).Source
fileerrors/2Query and change the fileerrors flag.Source
nodebug/0Switch on/off debug mode.Source
reconsult/1Load source file(s), wiping the old content first.Source
unknown/2Edinburgh Prolog predicate for dealing dealing with undefined procedures.Source
edit.pl  -- Editor interfaceShow source
edit/0Edit associated or script file.Source
edit/1Edit indicated object.Source
edit_command/2This predicate should specify the shell-command called to invoke the user's editor.Source
locate/2Locate object from the specified location.Source
locate/3Source
select_location/3Source
error.plShow source
exceptions.pl  -- Exception classificationShow source
explain.pl  -- Describe Prolog TermsShow source
explain/1Give an explanation on Term.Source
explain/2True when Explanation is an explanation of Term.Source
fastrw.pl  -- Fast reading and writing of termsShow source
fast_read/1The next term is read from current standard input and is unified with Term.Source
fast_write/1Output Term in a way that fast_read/1 and fast_read/2 will be able to read it back.Source
fast_write_to_string/3Perform a fast-write to the difference-slist String\Tail.Source
gensym.plShow source
gensym/2Generate <Base>1, <Base>2, etc atoms on each subsequent call.Source
reset_gensym/0Reset gensym for all registered keys.Source
reset_gensym/1Restart generation of identifiers from Base at <Base>1.Source
git.pl  -- Run GIT commandsShow source
git/2Run a GIT command.Source
git_branches/2True when Branches is the list of branches in the repository.Source
git_default_branch/2True when BranchName is the current branch of a repository.Source
git_default_branch/2True when BranchName is the default branch of a repository.Source
git_describe/2Describe the running version based on GIT tags and hashes.Source
git_hash/2Return the hash of the indicated object.Source
git_ls_remote/3Execute git ls-remote against the remote repository to fetch references from the remote.Source
git_ls_tree/2True when Entries is a list of entries in the the GIT repository, Each entry is a term:.Source
git_open_file/4Open the file File in the given bare GIT repository on the given branch (treeisch).Source
git_process_output/3Run a git-command and process the output with OnOutput, which is called as call(OnOutput, Stream).Source
git_remote_branches/2Exploit git_ls_remote/3 to fetch the branches from a remote repository without downloading it.Source
git_remote_url/3URL is the remote (fetch) URL for the given Remote.Source
git_shortlog/3Fetch information like the GitWeb change overview.Source
git_show/4Fetch info from a GIT commit.Source
git_tags/2True when Tags is a list of git tags defined on the repository.Source
git_tags_on_branch/3Tags is a list of tags in Branch on the GIT repository Dir, most recent tag first.Source
is_git_directory/1True if Directory is a git directory (Either checked out or bare).Source
is_git_hash/1True when Atom represents a GIT hash, i.e., a 40 digit hexadecimal string.Source
hashtable.pl  -- Hash tablesShow source
ht_del/3Delete Key-Value from HT.Source
ht_gen/3True when Key-Value is in HT.Source
ht_get/3True when Key is in HT and associated with Value.Source
ht_is_hashtable/1True when HT is a hash table.Source
ht_keys/2True when Keys is an ordered set of all keys in HT.Source
ht_new/1Create a new hash table.Source
ht_pairs/2True when Pairs and HT represent the same association.Source
ht_put/3Add a Key-Value to HT.Source
ht_put/5Add Key-Value to HT.Source
ht_put_new/3As ht_put/3, but fails if Key is already in HT instead of updating the associated value.Source
ht_size/2True when Size is the number of key-value pairs in HT.Source
ht_update/4True when HT holds Key-Old before and Key-New after this call.Source
heaps.pl  -- heaps/priority queuesShow source
add_to_heap/4Adds Key with priority Priority to Heap0, constructing a new heap in Heap.Source
delete_from_heap/4Deletes Key from Heap0, leaving its priority in Priority and the resulting data structure in Heap.Source
empty_heap/1True if Heap is an empty heap.Source
get_from_heap/4Retrieves the minimum-priority pair Priority-Key from Heap0.Source
heap_size/2Determines the number of elements in Heap.Source
heap_to_list/2Constructs a list List of Priority-Element terms, ordered by (ascending) priority.Source
is_heap/1Returns true if X is a heap.Source
list_to_heap/2If List is a list of Priority-Element terms, constructs a heap out of List.Source
merge_heaps/3Merge the two heaps Heap0 and Heap1 in Heap.Source
min_of_heap/3Unifies Key with the minimum-priority element of Heap and Priority with its priority value.Source
min_of_heap/5Gets the two minimum-priority elements from Heap.Source
singleton_heap/3True if Heap is a heap with the single element Priority-Key.Source
help.pl  -- Text based manualShow source
apropos/1Print objects from the manual whose name or summary match with Query.Source
help/0Show help for What.Source
help/1Show help for What.Source
show_html_hook/1Hook called to display the extracted HTML document.Source
increval.pl  -- Incremental dynamic predicate modificationShow source
intercept.pl  -- Intercept and signal interfaceShow source
intercept/3Run Goal as call/1.Source
intercept/4Similar 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.Source
intercept_all/4True when List contains all instances of Template that have been sent using send_signal/1 where the argument unifies with Ball.Source
nb_intercept_all/4As intercept_all/4, but backtracing inside Goal does not reset List.Source
send_signal/1If this predicate is called from a sub-goal of intercept/3, execute the associated Handler of the intercept/3 environment.Source
send_silent_signal/1As send_signal/1, but succeed silently if there is no matching intercept environment.Source
iostream.pl  -- Utilities to deal with streamsShow source
lazy_lists.pl  -- Lazy list handlingShow source
listing.pl  -- List programs and pretty print clausesShow source
lists.pl  -- List ManipulationShow source
macros.pl  -- Macro expansionShow source
expand_macros/5Perform macro expansion on TermIn with layout PosIn to produce TermOut with layout PosOut.Source
include_macros/3Include macros from another module.Source
macro_position/1True when Position is the position of the macro.Source
main.pl  -- Provide entry point for scriptsShow source
argv_options/3Parse command line arguments.Source
argv_options/4As argv_options/3 in guided mode, Currently this version allows parsing argument options throwing an exception rather than calling halt/1 by passing an empty list to ParseOptions.Source
argv_usage/1Use print_message/2 to print a usage message at Level.Source
cli_debug_opt_help/2Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments.Source
cli_debug_opt_meta/2Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments.Source
cli_debug_opt_type/3Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments.Source
cli_enable_development_system/0Re-enable the development environment.Source
cli_parse_debug_options/2Parse certain commandline options for debugging and development purposes.Source
main/0Call main/1 using the passed command-line arguments.Source
make.pl  -- Reload modified source filesShow source
make/0Reload all source files that have been changed since they were loaded.Source
make_reload_file/1Reload file into the proper module.Source
modules.pl  -- Module utility predicatesShow source
current_temporary_module/1True when we are executing in the given temporary module context.Source
in_temporary_module/3Run Goal on temporary loaded sources and discard the module and loaded predicates after completion.Source
nb_rbtrees.pl  -- Non-backtrackable operations on red black treesShow source
nb_rb_get_node/3True if Node is the node in RBTree associated to Key.Source
nb_rb_insert/3Add Key-Value to the tree RBTree using non-backtrackable destructive assignment.Source
nb_rb_node_value/2Value is the value associated to Node.Source
nb_rb_set_node_value/2Associate Value with Node.Source
nb_set.pl  -- Non-backtrackable setsShow source
occurs.pl  -- Finding and counting sub-termsShow source
contains_term/2Succeeds if Sub is contained in Term (=, deterministically).Source
contains_var/2Succeeds if Sub is contained in Term (==, deterministically).Source
free_of_term/2Succeeds of Sub does not unify to any subterm of Term.Source
free_of_var/2Succeeds of Sub is not equal (==) to any subterm of Term.Source
occurrences_of_term/3Count the number of SubTerms in Term that unify with SubTerm.Source
occurrences_of_var/3Count the number of SubTerms in Term that are equal to SubTerm.Source
sub_term/2Generates (on backtracking) all subterms of Term.Source
sub_term_shared_variables/3If Sub is a sub term of Term, Vars is bound to the list of variables in Sub that also appear outside Sub in Term.Source
sub_var/2Generates (on backtracking) all subterms (==) of Term.Source
operators.pl  -- Manage operatorsShow source
pop_operators/0Revert all changes to the operator table realised since the last push_operators/1.Source
pop_operators/1Reset operators as pushed by push_operators/2.Source
push_op/3As op/3, but this call must appear between push_operators/1 and pop_operators/0.Source
push_operators/1Installs the operators from New, where New is a list of op(Prec, Type, :Name).Source
push_operators/2Installs the operators from New, where New is a list of op(Prec, Type, :Name).Source
option.plShow source
dict_options/2Convert between an option list and a dictionary.Source
merge_options/3Merge two option sets.Source
meta_options/3Perform meta-expansion on options that are module-sensitive.Source
option/2Get an Option from Options.Source
option/3Get an Option from Options.Source
select_option/3Get and remove Option from Options.Source
select_option/4Get and remove Option with default value.Source
optparse.pl  -- command line parsingShow source
opt_arguments/3Extract commandline options according to a specification.Source
opt_help/2True when Help is a help string synthesized from OptsSpec.Source
opt_parse/4Equivalent to opt_parse(OptsSpec, ApplArgs, Opts, PositionalArgs, []).Source
opt_parse/5Parse the arguments Args (as list of atoms) according to OptsSpec.Source
parse_type/3Hook to parse option text Codes to an object of type Type.Source
ordsets.pl  -- Ordered set manipulationShow source
is_ordset/1True if Term is an ordered set.Source
list_to_ord_set/2Transform a list into an ordered set.Source
ord_add_element/3Insert an element into the set.Source
ord_del_element/3Delete an element from an ordered set.Source
ord_disjoint/2True if Set1 and Set2 have no common elements.Source
ord_empty/1True when List is the empty ordered set.Source
ord_intersect/2True if both ordered sets have a non-empty intersection.Source
ord_intersect/3Intersection holds the common elements of Set1 and Set2.Source
ord_intersection/2Intersection of a powerset.Source
ord_intersection/3Intersection holds the common elements of Set1 and Set2.Source
ord_intersection/4Intersection and difference between two ordered sets.Source
ord_memberchk/2True if Element is a member of OrdSet, compared using ==.Source
ord_selectchk/3Selectchk/3, specialised for ordered sets.Source
ord_seteq/2True if Set1 and Set2 have the same elements.Source
ord_subset/2Is true if all elements of Sub are in Super.Source
ord_subtract/3Diff is the set holding all elements of InOSet that are not in NotInOSet.Source
ord_symdiff/3Is true when Difference is the symmetric difference of Set1 and Set2.Source
ord_union/2True if Union is the union of all elements in the superset SetOfSets.Source
ord_union/3Union is the union of Set1 and Set2.Source
ord_union/4True iff ord_union(Set1, Set2, Union) and ord_subtract(Set2, Set1, New).Source
oset.pl  -- Ordered set manipulationShow source
oset_addel/3Ordered set element addition.Source
oset_delel/3Ordered set element deletion.Source
oset_diff/3Ordered set difference.Source
oset_dint/2Distributed intersection.Source
oset_dunion/2Distributed union.Source
oset_int/3ordered set intersection.Source
oset_is/1check that OSet in correct format (standard order).Source
oset_power/2True when PSet is the powerset of Set.Source
oset_union/3Union is the union of OSet1 and OSet2.Source
pairs.pl  -- Operations on key-value listsShow source
group_pairs_by_key/2Group values with equivalent (==/2) consecutive keys.Source
map_list_to_pairs/3Create a Key-Value list by mapping each element of List.Source
pairs_keys/2Remove the values from a list of Key-Value pairs.Source
pairs_keys_values/3True if Keys holds the keys of Pairs and Values the values.Source
pairs_values/2Remove the keys from a list of Key-Value pairs.Source
transpose_pairs/2Swap Key-Value to Value-Key.Source
persistency.pl  -- Provide persistent dynamic predicatesShow source
portray_text.pl  -- Portray textShow source
portray_text/1Switch portraying on or off.Source
set_portray_text/2Set options for portraying.Source
set_portray_text/3Set options for portraying.Source
pprint.pl  -- Pretty Print Prolog termsShow source
print_term/2Pretty print a Prolog term.Source
predicate_options.pl  -- Access and analyse predicate optionsShow source
prolog_autoload.pl  -- Autoload all dependenciesShow source
autoload_all/0Force all necessary autoloading to be done now.Source
autoload_all/1Force all necessary autoloading to be done now.Source
prolog_breakpoints.pl  -- Manage Prolog break-pointsShow source
breakpoint_property/2True when Property is a property of the breakpoint Id.Source
delete_breakpoint/1Delete breakpoint with given Id.Source
set_breakpoint/4Put a breakpoint at the indicated source-location.Source
set_breakpoint/5Put a breakpoint at the indicated source-location.Source
set_breakpoint_condition/2Set a condition for of the breakpoint with given Id.Source
prolog_clause.pl  -- Get detailed source-information about a clauseShow source
prolog_code.pl  -- Utilities for reasoning about codeShow source
body_term_calls/2True when BodyTerm calls Goal.Source
comma_list/2True if CommaList is a nested term over the ','/2 (';'/2) functor and List is a list expressing the elements of the conjunction.Source
extend_goal/3Extend the possibly qualified Goal0 with additional arguments from Extra.Source
head_name_arity/3Similar 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.Source
is_control_goal/1True if Goal is a compiled Prolog control structure.Source
is_predicate_indicator/1True when Term is a predicate indicator.Source
mkconj/3Create a conjunction or disjunction from two terms.Source
mkdisj/3Create a conjunction or disjunction from two terms.Source
most_general_goal/2General is the most general version of Goal.Source
pi_head/2Translate between a PredicateIndicator and a Goal term.Source
predicate_label/2Create a human-readable label for the given predicate indicator.Source
predicate_sort_key/2Key is the (module-free) name of the predicate for sorting purposes.Source
semicolon_list/2True if CommaList is a nested term over the ','/2 (';'/2) functor and List is a list expressing the elements of the conjunction.Source
prolog_codewalk.pl  -- Prolog code walkerShow source
prolog_program_clause/2True when ClauseRef is a reference for clause in the program.Source
prolog_walk_code/1Walk over all loaded (user) Prolog code.Source
subterm_pos/5True 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.Source
prolog_colour.plShow source
prolog_colourise_query/3Colourise a query, to be executed in the context of SourceId.Source
prolog_colourise_stream/3Determine colour fragments for the data on Stream.Source
prolog_colourise_stream/4Determine colour fragments for the data on Stream.Source
prolog_colourise_term/4Colourise the next term on Stream.Source
syntax_colour/2True when a range classified Class must be coloured using Attributes.Source
vararg_goal_classification/3Multifile hookable classification for vararg predicates.Source
prolog_config.pl  -- Provide configuration informationShow source
prolog_config/2Get information on the configuration of the current Prolog system.Source
prolog_dump_runtime_variables/0Dump the current configuration in shell format.Source
prolog_coverage.pl  -- Coverage analysis toolShow source
cov_load_data/2Reload coverage data from File.Source
cov_property/1True when coverage analysis satisfies Property.Source
cov_reset/0Discard all collected coverage data.Source
cov_save_data/2Save the coverage information to File.Source
coverage/1As call(Goal), collecting coverage information while Goal is running.Source
coverage/2Collect and optionally report coverage by Goal.Source
report_hook/2This hook is called after the data collection.Source
show_coverage/1Show collected coverage data.Source
prolog_debug.pl  -- User level debugging toolsShow source
debug_control_hook/1Allow user-hooks in the Prolog debugger interaction.
debugging/0Report current status of the debugger.Source
debugging_hook/0Multifile hook that is called as forall(debugging_hook, true) and that may be used to extend the information printed from other debugging libraries.Source
nospy/1Set/clear spy-points.Source
nospyall/0Set/clear spy-points.Source
notrap/1Install a trap on error(Formal, Context) exceptions that unify.Source
spy/1Set/clear spy-points.Source
trap/1Install a trap on error(Formal, Context) exceptions that unify.Source
trap_alias/2Define short hands for commonly used exceptions.Source
prolog_format.pl  -- Analyse format specificationsShow source
format_spec/2Parse a format string.Source
format_spec/3DCG for parsing format strings.Source
format_types/2True when Format requires an argument list with terms of the type specified by Types.Source
prolog_history.pl  -- Per-directory persistent commandline historyShow source
prolog_history/1Execute Action on the history.Source
prolog_jiti.pl  -- Just In Time Indexing (JITI) utilitiesShow source
jiti_list/0List the JITI (Just In Time Indexes) of selected predicates.Source
jiti_list/1List the JITI (Just In Time Indexes) of selected predicates.Source
prolog_metainference.pl  -- Infer meta-predicate propertiesShow source
prolog_pack.pl  -- A package manager for PrologShow source
pack_info/1Print more detailed information about Pack.Source
pack_install/1Install one or more packs from SpecOrList.Source
pack_install/2Install one or more packs from SpecOrList.Source
pack_install_local/3Install a number of packages in a local directory.Source
pack_list/1Query package server and installed packages and display results.Source
pack_list/2Query package server and installed packages and display results.Source
pack_list_installed/0List currently installed packages and report possible dependency issues.Source
pack_property/2True when Property is a property of an installed Pack.Source
pack_publish/2Publish a package.Source
pack_rebuild/0Rebuild possible foreign components of Pack.Source
pack_rebuild/1Rebuild possible foreign components of Pack.Source
pack_remove/1Remove the indicated package.Source
pack_remove/2Remove the indicated package.Source
pack_search/1Query package server and installed packages and display results.Source
pack_upgrade/1Upgrade Pack.Source
pack_url_file/2True if File is a unique id for the referenced pack and version.Source
prolog_profile.pl  -- Execution profilerShow source
profile/1Run once(Goal) under the execution profiler.Source
profile/2Run once(Goal) under the execution profiler.Source
profile_data/1Gather all relevant data from profiler.Source
profile_procedure_data/2Collect data for Pred.Source
show_profile/1Display last collected profiling data.Source
prolog_source.pl  -- Examine Prolog source-filesShow source
quasi_quotation_syntax/2True when the quasi quotation syntax Syntax can be loaded from Library.Source
xref_close_source/2Called by prolog_close_source/1 to close a source previously opened by the hook prolog:xref_open_source/2.Source
xref_open_source/2Hook to open an xref SourceID.Source
directory_source_files/3True when Files is a sorted list of Prolog source files in Dir.Source
file_alias_path/2True if file Alias points to Dir.Source
file_name_on_path/2True if OnPath a description of File based on the file search path.Source
load_quasi_quotation_syntax/2Import quasi quotation syntax Syntax from Path into the module specified by the first argument.Source
path_segments_atom/2Translate between a path represented as a/b/c and an atom representing the same path.Source
prolog_canonical_source/2Given a user-specification of a source, generate a unique and indexable identifier for it.Source
prolog_close_source/1Close a stream opened using prolog_open_source/2.Source
prolog_open_source/2Open source with given canonical id (see prolog_canonical_source/2) and remove the #!Source
prolog_read_source_term/4Read a term from a Prolog source-file.Source
read_source_term_at_location/3Try to read a Prolog term form an arbitrary location inside a file.Source
requires_library/2known expansion hooks.Source
valid_term_position/2Check that a Term has an appropriate TermPos layout.Source
prolog_stack.pl  -- Examine the Prolog stackShow source
backtrace/1Get and print a stacktrace to the user_error stream.Source
get_prolog_backtrace/2Obtain a backtrace from the current location.Source
get_prolog_backtrace/3Obtain a backtrace from the current location.Source
print_last_choicepoint/0Print details on the last open choice point.Source
print_last_choicepoint/2Source
print_prolog_backtrace/2Print a stacktrace in human readable form to Stream.Source
print_prolog_backtrace/3Print a stacktrace in human readable form to Stream.Source
prolog_stack_frame_property/2True when Property is a property of Frame.Source
stack_guard/1Dynamic multifile hook that is normally not defined.Source
stack_guard/1Dynamic multifile predicate.Source
prolog_trace.pl  -- Print access to predicatesShow source
list_tracing/0List predicates we are currently tracing.Source
notraceall/0Remove all trace points.Source
trace/1Print passes through ports of specified predicates.Source
trace/2Print passes through ports of specified predicates.Source
tracing/2True if Spec is traced using Ports.Source
prolog_versions.pl  -- Demand specific (Prolog) versionsShow source
cmp_versions/3Compare to versions.Source
require_prolog_version/2Claim that the running Prolog version is at least version Required and provides the requested Features.Source
require_version/3Require Component to have version CmpRequired, while Component is know to have version Available.Source
prolog_wrap.pl  -- Wrapping predicatesShow source
current_predicate_wrapper/4True if Head is wrapped with Body.Source
unwrap_predicate/2Remove the outermost wrapper whose name unifies with Name.
wrap_predicate/4Wrap the predicate referenced by Head using Body.Source
prolog_xref.pl  -- Prolog cross-referencer data collectionShow source
called_by/2If this succeeds, the cross-referencer assumes Goal may call any of the goals in ListOfCalled.Source
called_by/4True when Called is a list of callable terms called from Goal, handled by the predicate Module:Goal and executed in the context of the module Context.Source
hook/1True if Goal is a hook that is called spontaneously (e.g., from foreign code).Source
meta_goal/2Define meta-predicates.Source
xref_called/3True when By is called from Called in Source.Source
xref_called/4True when By is called from Called in Source.Source
xref_called/5True when By is called from Called in Source.Source
xref_clean/1Reset the database for the given source.Source
xref_comment/3Is true when Source has a section comment with Title and Comment.Source
xref_comment/4Is true when Head in Source has the given PlDoc comment.Source
xref_current_source/1Check what sources have been analysed.Source
xref_defined/3Test if Goal is accessible in Source.Source
xref_definition_line/2If the 3th argument of xref_defined contains line info, return this in Line.Source
xref_done/2Cross-reference executed at Time.Source
xref_exported/2True when Source exports Head.Source
xref_hook/1Definition of known hooks.Source
xref_meta/2True when Called is a list of terms called from Head.Source
xref_meta/3True when Head calls Called in Source.Source
xref_mode/3Is true when Source provides a predicate with Mode and determinism.Source
xref_module/2True if Module is defined in Source.Source
xref_op/2Give the operators active inside the module.Source
xref_option/2True when Source was processed using Option.Source
xref_prolog_flag/4True when Flag is set to Value at Line in Source.Source
xref_public_list/3Find meta-information about File.Source
xref_public_list/4Find meta-information about File.Source
xref_public_list/6Find meta-information about File.Source
xref_public_list/7Find meta-information about File.Source
xref_source/1Generate the cross-reference data for Source if not already done and the source is not modified.Source
xref_source/2Generate the cross-reference data for Source if not already done and the source is not modified.Source
xref_source_file/3Find named source file from Spec, relative to Src.Source
xref_source_file/4Find named source file from Spec, relative to Src.Source
xref_uses_file/3True when Source tries to load a file using Spec.Source
pure_input.pl  -- Pure Input from files and streamsShow source
qsave.pl  -- Save current program as a state or executableShow source
quasi_quotations.pl  -- Define Quasi Quotation syntaxShow source
quintus.pl  -- Quintus compatibilityShow source
abs/2Unify `Absolute' with the absolute value of `Number'.Source
acos/2Math library predicates.Source
asin/2Math library predicates.Source
atan/2Math library predicates.Source
atan2/3Math library predicates.Source
atom_char/2Same as ISO char_code/2.Source
ceiling/2Math library predicates.Source
compile/1Compile files.Source
cos/2Math library predicates.Source
current_stream/3SICStus/Quintus and backward compatible predicate.Source
date/1Get current date as date(Y,M,D).Source
floor/2Math library predicates.Source
genarg/3Generalised version of ISO arg/3.Source
log/2Math library predicates.Source
log10/2Math library predicates.Source
midstring/3Too difficult to explain.Source
midstring/4Too difficult to explain.Source
midstring/5Too difficult to explain.Source
midstring/6Too difficult to explain.Source
mode/1Ignore a DEC10/Quintus :- mode(Head) declaration.Source
no_style_check/1Same as SWI-Prolog style_check(-Style).Source
on_exception/3Source
otherwise/0For (A -> B ; otherwise -> C).Source
pow/3Math library predicates.Source
prolog_flag/2Same as ISO current_prolog_flag/2.Source
raise_exception/1Quintus compatible exception handling.Source
round/2Math library predicates.Source
sign/2Math library predicates.Source
simple/1Term is atomic or a variable.Source
sin/2Math library predicates.Source
skip_line/0Skip the rest of the current line (on Stream).Source
skip_line/1Skip the rest of the current line (on Stream).Source
sqrt/2Math library predicates.Source
stream_position/3True when Old is the current position in Stream and the stream has been repositioned to New.Source
tan/2Math library predicates.Source
unix/1This predicate provides a partial emulation of the corresponding Quintus predicate.Source
random.pl  -- Random numbersShow source
getrand/1Query/set the state of the random generator.Source
maybe/0Succeed/fail with equal probability (variant of maybe/1).Source
maybe/1Succeed with probability P, fail with probability 1-P.Source
maybe/2Succeed with probability K/N (variant of maybe/1).Source
random/1Binds R to a new random float in the open interval (0.0,1.0).Source
random/3Generate a random integer or float in a range.Source
random_between/3Binds R to a random integer in [L,U] (i.e., including both L and U).Source
random_member/2X is a random member of List.Source
random_numlist/4Unify List with an ascending list of integers between L and U (inclusive).Source
random_perm2/4Does X=A,Y=B or X=B,Y=A with equal probability.Source
random_permutation/2Permutation is a random permutation of List.Source
random_select/3Randomly select or insert an element.Source
random_subseq/3Selects a random subsequence Subseq of List, with Complement containing all elements of List that were not selected.Source
randseq/3S is a list of K unique random integers in the range 1..N.Source
randset/3S is a sorted list of K unique random integers in the range 1..N.Source
setrand/1Query/set the state of the random generator.Source
rbtrees.pl  -- Red black treesShow source
readutil.pl  -- Read utilitiesShow source
record.pl  -- Access compound arguments by nameShow source
current_record/2True if Name is the name of a record defined in the module associated with Term and Term is the user-provided record declaration.Source
current_record_predicate/2True if PI is the predicate indicator for an access predicate to Record.Source
record/1Define access predicates for a compound-term.Source
rwlocks.pl  -- Read/write locksShow source
with_rwlock/3Run Goal, synchronized with LockId in ModeSpec.Source
with_rwlock/4Run Goal, synchronized with LockId in ModeSpec.Source
sandbox.pl  -- Sandboxed Prolog codeShow source
settings.plShow source
convert_setting_text/3Converts from textual form to Prolog Value.Source
current_setting/1True if Setting is a currently defined setting.Source
env/2Evaluate environment variables on behalf of arithmetic expressions.Source
env/3Evaluate environment variables on behalf of arithmetic expressions.Source
list_settings/0List settings to current_output.Source
list_settings/1List settings to current_output.Source
load_settings/1Load local settings from File.Source
load_settings/2Load local settings from File.Source
restore_setting/1Restore the value of setting Name to its default.Source
save_settings/0Save modified settings to File.Source
save_settings/1Save modified settings to File.Source
set_setting/2Change a setting.Source
set_setting_default/2Change the default for a setting.Source
setting/2True when Name is a currently defined setting with Value.Source
setting/4Define a setting.Source
setting_property/2Query currently defined settings.Source
shell.pl  -- Elementary shell commandsShow source
cd/0Change working directory.Source
cd/1Change working directory.Source
dirs/0Manage the directory stack:.Source
ls/0Listing similar to Unix =ls -F=, flagging directories with =/=.Source
ls/1Listing similar to Unix =ls -F=, flagging directories with =/=.Source
mv/2Move (Rename) a file.Source
popd/0Manage the directory stack:.Source
pushd/0Manage the directory stack:.Source
pushd/1Manage the directory stack:.Source
pwd/0Print current working directory.Source
rm/1Remove (unlink) a file.Source
shell/0Execute an interactive shell.Source
shlib.pl  -- Utility library for loading foreign objects (DLLs, shared objects)Show source
solution_sequences.pl  -- Modify solution sequencesShow source
call_nth/2True when Goal succeeded for the Nth time.Source
distinct/1True if Goal is true and no previous solution of Goal bound Witness to the same value.Source
distinct/2True if Goal is true and no previous solution of Goal bound Witness to the same value.Source
group_by/4Group bindings of Template that have the same value for By.Source
limit/2Limit the number of solutions.Source
offset/2Ignore the first Count solutions.Source
order_by/2Order solutions according to Spec.Source
reduced/1Similar to distinct/1, but does not guarantee unique results in return for using a limited amount of memory.Source
reduced/3Similar to distinct/1, but does not guarantee unique results in return for using a limited amount of memory.Source
sort.plShow source
statistics.pl  -- Get information about resource usageShow source
call_time/2Call Goal as call/1, unifying Time with a dict that provides information on the resource usage.Source
call_time/3Call Goal as call/1, unifying Time with a dict that provides information on the resource usage.Source
statistics/0Print information about resource usage using print_message/2.Source
statistics/1Stats is a dict representing the same information as statistics/0.Source
thread_statistics/2Obtain statistical information about a single thread.Source
time/1Execute Goal, reporting statistics to the user.Source
strings.pl  -- String utilitiesShow source
system.pl  -- System utilitiesShow source
lock_predicate/1Transform a predicate into a system predicate.Source
system_mode/1Switch the system into system or user mode.Source
system_module/0Any predicate defined after this declaraction uptil the end of the file will become a system predicate.Source
unlock_predicate/1Transform a system predicate into a normal system predicate.Source
tables.pl  -- XSB interface to tablesShow source
abolish_table_call/1Same as abolish_table_subgoals/1.Source
abolish_table_call/2Same as abolish_table_subgoals/1.Source
abolish_table_pred/1Invalidates all tabled subgoals for the predicate denoted by the predicate or term indicator Pred.Source
abolish_table_subgoals/2Behaves as abolish_table_subgoals/1, but allows the default table_gc_action to be over-ridden with a flag, which can be either abolish_tables_transitively or abolish_tables_singly.Source
get_call/3True when Trie is an answer trie for a variant of CallTerm.Source
get_calls/3True when Trie is an answer trie for a variant that unifies with CallTerm and Skeleton is the answer skeleton.Source
get_residual/2True if CallTerm appears in a table and has DelayList.Source
get_returns/2True when Return is an answer template for the AnswerTrie.Source
get_returns/3True when Return is an answer template for the AnswerTrie and the answer is represented by the trie node NodeID.Source
get_returns_and_dls/3True when Return appears in AnswerTrie with the given DelayLists.Source
get_returns_and_tvs/3Identical to get_returns/2, but also obtains the truth value of a given answer, setting TruthValue to t if the answer is unconditional and to u if it is conditional.Source
get_returns_for_call/2True if AnswerTerm appears in the tables for the variant CallTerm.Source
set_pil_off/0Dummy predicates for XSB compatibility.Source
set_pil_on/0Dummy predicates for XSB compatibility.Source
t not/1Tabled negation.Source
tfindall/3This predicate emerged in XSB in an attempt to provide a safer alternative to findall/3.Source
terms.pl  -- Term manipulationShow source
foldsubterms/4The predicate foldsubterms/5 calls call(Goal4, SubTerm1, SubTerm2, StateIn, StateOut) for each subterm, including variables, in Term1.Source
foldsubterms/5The predicate foldsubterms/5 calls call(Goal4, SubTerm1, SubTerm2, StateIn, StateOut) for each subterm, including variables, in Term1.Source
mapargs/3Term1 and Term2 have the same functor (name/arity) and for each matching pair of arguments call(Goal, A1, A2) is true.Source
mapsubterms/3Recursively map sub terms of Term1 into subterms of Term2 for every pair for which call(Goal, ST1, ST2) succeeds.Source
mapsubterms_var/3Recursively map sub terms of Term1 into subterms of Term2 for every pair for which call(Goal, ST1, ST2) succeeds.Source
same_functor/2True when Term1 and Term2 are terms that have the same functor (Name/Arity).Source
same_functor/3True when Term1 and Term2 are terms that have the same functor (Name/Arity).Source
same_functor/4True when Term1 and Term2 are terms that have the same functor (Name/Arity).Source
subsumes/2True if Generic is unified to Specific without changing Specific.Source
subsumes_chk/2True if Generic can be made equivalent to Specific without changing Specific.Source
term_factorized/3Is true when Skeleton is Term where all subterms that appear multiple times are replaced by a variable and Substitution is a list of Var=Value that provides the subterm at the location Var.Source
term_size/2True if Size is the size in cells occupied by Term on the global (term) stack.Source
term_subsumer/3General is the most specific term that is a generalisation of Special1 and Special2.Source
variant/2Same as SWI-Prolog Term1 =@= Term2.Source
thread.pl  -- High level thread primitivesShow source
call_in_thread/2Run Goal as an interrupt in the context of Thread.Source
concurrent/3Run Goals in parallel using N threads.Source
concurrent_and/2Concurrent version of (Generator,Test).Source
concurrent_and/3Concurrent version of (Generator,Test).Source
concurrent_forall/2True when Action is true for all solutions of Generate.Source
concurrent_forall/3True when Action is true for all solutions of Generate.Source
concurrent_maplist/2Concurrent version of maplist/2.Source
concurrent_maplist/3Concurrent version of maplist/2.Source
concurrent_maplist/4Concurrent version of maplist/2.Source
first_solution/3Try alternative solvers concurrently, returning the first answer.Source
thread_pool.plShow source
threadutil.pl  -- Interactive thread utilitiesShow source
attach_console/0Create a new console and make the standard Prolog streams point to it.Source
attach_console/1Create a new console and make the standard Prolog streams point to it.Source
interactor/0Run a Prolog toplevel in another thread with a new console window.Source
interactor/1Run a Prolog toplevel in another thread with a new console window.Source
join_threads/0Join all terminated threads.Source
tbacktrace/1Print a backtrace for Thread to the stream user_error of the calling thread.Source
tbacktrace/2Print a backtrace for Thread to the stream user_error of the calling thread.Source
tdebug/0Enable debug-mode, trapping the graphical debugger on reaching spy-points or errors.Source
tdebug/1Enable debug-mode, trapping the graphical debugger on reaching spy-points or errors.Source
thread_has_console/0True when the calling thread has an attached console.Source
thread_run_interactor/0Attach a console and run a Prolog toplevel in the current thread.Source
threads/0List currently known threads with their status.Source
tnodebug/0Disable debug-mode in all threads or the specified Thread.Source
tnodebug/1Disable debug-mode in all threads or the specified Thread.Source
tprofile/1Profile the operation of Thread until the user hits a key.Source
tspy/1Trap the graphical debugger on reaching Spec in the specified or any thread.Source
tspy/2Trap the graphical debugger on reaching Spec in the specified or any thread.Source
with_stopped_threads/2Stop all threads except the caller while running once(Goal).Source
xterm_args/1Multifile and dynamic hook that provides (additional) arguments for the xterm(1) process opened for additional thread consoles.Source
tty.pl  -- Terminal operationsShow source
ugraphs.pl  -- Graph manipulation libraryShow source
add_edges/3Unify NewGraph with a new graph obtained by adding the list of Edges to Graph.Source
add_vertices/3Unify NewGraph with a new graph obtained by adding the list of Vertices to Graph.Source
complement/2UGraphOut is a ugraph with an edge between all vertices that are not connected in UGraphIn and all edges from UGraphIn removed.Source
compose/3Compose NewGraph by connecting the drains of LeftGraph to the sources of RightGraph.Source
connect_ugraph/3Adds Start as an additional vertex that is connected to all vertices in UGraphIn.Source
del_edges/3Unify NewGraph with a new graph obtained by removing the list of Edges from Graph.Source
del_vertices/3Unify 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.Source
edges/2Unify Edges with all edges appearing in Graph.Source
neighbors/3Neigbours is a sorted list of the neighbours of Vertex in Graph.Source
neighbours/3Neigbours is a sorted list of the neighbours of Vertex in Graph.Source
reachable/3True when Vertices is an ordered set of vertices reachable in UGraph, including Vertex.Source
top_sort/2Sort vertices topologically.Source
transitive_closure/2Generate the graph Closure as the transitive closure of Graph.Source
transpose_ugraph/2Unify NewGraph with a new graph obtained from Graph by replacing all edges of the form V1-V2 by edges of the form V2-V1.Source
ugraph_layers/2Sort vertices topologically.Source
ugraph_union/3NewGraph is the union of Graph1 and Graph2.Source
vertices/2Unify Vertices with all vertices appearing in Graph.Source
vertices_edges_to_ugraph/3Create a UGraph from Vertices and Edges.Source
url.pl  -- Analysing and constructing URLShow source
file_name_to_url/2Translate between a filename and a file:// URL.Source
global_url/3Translate a possibly relative URL into an absolute one.Source
http_location/2Construct or analyze an HTTP location.Source
is_absolute_url/1True if URL is an absolute URL.Source
parse_url/2Construct or analyse a URL.Source
parse_url/3Similar to parse_url/2 for relative URLs.Source
parse_url_search/2Construct or analyze an HTTP search specification.Source
set_url_encoding/2Query and set the encoding for URLs.Source
url_iri/2Convert between a URL, encoding in US-ASCII and an IRI.Source
www_form_encode/2En/decode to/from application/x-www-form-encoded.Source
utf8.pl  -- UTF-8 encoding/decoding on lists of character codes.Show source
utf8_codes/3DCG translating between a Unicode code-list and its UTF-8 encoded byte-string.Source
varnumbers.pl  -- Utilities for numbered termsShow source
max_var_number/3True when Max is the max of Start and the highest numbered $VAR(N) term.Source
numbervars/1Number variables in Term using $VAR(N).Source
varnumbers/2Inverse of numbervars/1.Source
varnumbers/3Inverse of numbervars/3.Source
varnumbers_names/3If 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.Source
wfs.pl  -- Well Founded Semantics interfaceShow source
when.pl  -- Conditional coroutiningShow source
win_menu.pl  -- Console window menuShow source
writef.pl  -- Old-style formatted writeShow source
swritef/2Use writef/1 or writef/2 and write the result to a string.Source
swritef/3Use writef/1 or writef/2 and write the result to a string.Source
writef/1Formatted write to the current_output.Source
writef/2Formatted write to the current_output.Source
www_browser.pl  -- Open a URL in the users browserShow source
yall.pl  -- Lambda expressionsShow source
zip.pl  -- Access resource ZIP archivesShow source
with_zipper/2Run Goal while holding ownership over Zipper.Source
zip_close/1Close a zipper.Source
zip_close/2Close a zipper.Source
zip_open/4Create a Zipper, providing access to File.Source
zipper_file_info/3Obtain information about the current zip entry.Source
zipper_goto/2Seek Zipper to a specified entry.
zipper_members/2True when Members is the list of file names in the Zipper.Source
zipper_open_current/3Open the current entry as an input stream.