library

Prolog files

aggregate.pl  -- Aggregation operators on backtrackable predicatesShow 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
tty_url_hook/2Hook for location_url/2.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.plShow source
convlist/3Similar to maplist/3, but elements for which call(Goal, ElemIn, _) fails are omitted from ListOut.Source
exclude/3Filter elements for which Goal fails.Source
foldl/4Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal.Source
foldl/5Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal.Source
foldl/6Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal.Source
foldl/7Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal.Source
include/3Filter elements for which Goal succeeds.Source
maplist/2True if Goal is successfully applied on all matching elements of the list.Source
maplist/3True if Goal is successfully applied on all matching elements of the list.Source
maplist/4True if Goal is successfully applied on all matching elements of the list.Source
maplist/5True if Goal is successfully applied on all matching elements of the list.Source
partition/4Filter elements of List according to Pred.Source
partition/5Filter List according to Pred in three sets.Source
scanl/4Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal.Source
scanl/5Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal.Source
scanl/6Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal.Source
scanl/7Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal.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.plShow source
assoc_to_keys/2True if Keys is the list of keys in Assoc.Source
assoc_to_list/2Translate Assoc to a list Pairs of Key-Value pairs.Source
assoc_to_values/2True if Values is the list of values in Assoc.Source
del_assoc/4True if Key-Value is in Assoc0.Source
del_max_assoc/4True if Key-Value is in Assoc0 and Key is the greatest key.Source
del_min_assoc/4True if Key-Value is in Assoc0 and Key is the smallest key.Source
empty_assoc/1Is true if Assoc is the empty association list.Source
gen_assoc/3True if Key-Value is an association in Assoc.Source
get_assoc/3True if Key-Value is an association in Assoc.Source
get_assoc/5True if Key-Val0 is in Assoc0 and Key-Val is in Assoc.Source
is_assoc/1True if Assoc is an association list.Source
list_to_assoc/2Create an association from a list Pairs of Key-Value pairs.Source
map_assoc/2True if Pred(Value) is true for all values in Assoc.Source
map_assoc/3Map corresponding values.Source
max_assoc/3True if Key-Value is in Assoc and Key is the largest key.Source
min_assoc/3True if Key-Value is in assoc and Key is the smallest key.Source
ord_list_to_assoc/2Assoc is created from an ordered list Pairs of Key-Value pairs.Source
put_assoc/4Assoc is Assoc0, except that Key is associated with Value.Source
atom.pl  -- Operations on atomsShow source
backcomp.pl  -- Backward compatibilityShow source
base32.pl  -- Base32 encoding and decodingShow source
base64.plShow 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.plShow 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.plShow 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
coinduction.plShow source
coinductive/1The declaration :- coinductive name/arity, ... defines predicates as coinductive.Source
csv.plShow 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
date.pl  -- Process dates and timesShow source
debug.plShow 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.plShow source
expects_dialect/1Tell Prolog all subsequent code to the end of the file or the next :- expects_dialect/1 directive is written for the indicated Dialect.Source
source_exports/2True if Source exports Export.Source
dicts.plShow 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
edinburgh.plShow 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.plShow 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
current_encoding/1True if Name is the name of a supported encoding.Source
current_type/3True when Type is a currently defined type and Var satisfies Type of the body term Body succeeds.Source
domain_error/2The argument is of the proper type, but has a value that is outside the supported values.Source
existence_error/2Culprit is of the correct type and correct domain, but there is no existing (external) resource of type ObjectType that is represented by it.Source
existence_error/3Culprit 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.Source
has_type/2True if Term satisfies Type.Source
instantiation_error/1An argument is under-instantiated.Source
is_of_type/2True if Term satisfies Type.Source
must_be/2True if Term satisfies the type constraints for Type.Source
permission_error/3It 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).Source
representation_error/1A representation error indicates a limitation of the implementation.Source
resource_error/1A goal cannot be completed due to lack of resources.Source
syntax_error/1A text has invalid syntax.Source
type_error/2Tell the user that Culprit is not of the expected ValidType.Source
uninstantiation_error/1An argument is over-instantiated.Source
exceptions.plShow source
catch/4As catch/3, only catching exceptions for which exception(ErrorType,Ball) is true.Source
error_term/2Describe the formal part of error(Formal,ImplDefined) exceptions.Source
exception/2If Ball is unbound, adds a delayed goal that tests the error belongs to Type when Ball is instantiated (by catch/3).Source
exception_term/2Describe exceptions that are not error(Formal, _) terms.Source
exception_type/2Declare all exceptions subsumed by Term to be an exception of Type.Source
explain.pl  -- Describe Prolog TermsShow source
fastrw.plShow 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.pl  -- Generate unique symbolsShow source
git.plShow 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
heaps.plShow 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.plShow 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
help_text/2When 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).Source
show_html_hook/1Hook called to display the extracted HTML document.Source
increval.pl  -- Incremental dynamic predicate modificationShow source
intercept.plShow 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
close_any/1Execute the Close closure returned by open_any/5.Source
open_any/5Establish a stream from Specification that should be closed using Close, which can either be called or passed to close_any/1.Source
lazy_lists.pl  -- Lazy list handlingShow source
listing.plShow source
listing/0Lists all predicates defined in the calling module.Source
listing/1List matching clauses.Source
listing/2List matching clauses.Source
portray_clause/1Portray `Clause' on the current output stream.Source
portray_clause/2Portray `Clause' on the current output stream.Source
portray_clause/3Portray `Clause' on the current output stream.Source
lists.pl  -- List ManipulationShow source
macros.plShow 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.plShow 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
modules.pl  -- Module utility predicatesShow source
nb_set.pl  -- Non-backtrackable setsShow source
add_nb_set/2Insert Key into the set.Source
add_nb_set/3Insert Key into the set.Source
empty_nb_set/1Create an empty non-backtrackable set.Source
gen_nb_set/2Enumerate the members of a set in the standard order of terms.Source
nb_set_to_list/2Get the elements of a an nb_set.Source
size_nb_set/2Unify Size with the number of elements in the set.Source
occurs.plShow 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
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
ordsets.pl  -- Ordered set manipulationShow source
pairs.pl  -- Operations on key-value listsShow source
persistency.pl  -- Provide persistent dynamic predicatesShow source
pio.pl  -- Pure I/OShow source
portray_text.pl  -- Portray textShow source
pprint.plShow source
print_term/2Pretty print a Prolog term.Source
predicate_options.pl  -- Access and analyse predicate optionsShow source
prolog_autoload.plShow 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
prolog_clause.plShow source
prolog_code.plShow 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.plShow 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_coverage.plShow 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.plShow source
debug_control_hook/1Allow user-hooks in the Prolog debugger interaction.
debugging/0Report current status of the debugger.Source
debugging_hook/1Multifile hook that is called as forall(debugging_hook(DebugMode), true) and that may be used to extend the information printed from other debugging libraries.Source
exception_hook/5Trap exceptions and consider whether or not to start the tracer.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.plShow 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_jiti.pl  -- Just In Time Indexing (JITI) utilitiesShow source
prolog_metainference.pl  -- Infer meta-predicate propertiesShow source
prolog_pack.pl  -- A package manager for PrologShow source
prolog_profile.pl  -- Execution profilerShow source
prolog_source.pl  -- Examine Prolog source-filesShow source
prolog_stack.pl  -- Examine the Prolog stackShow source
prolog_trace.plShow 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.plShow 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.plShow 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.plShow 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.plShow source
arch_shlib/3This is a user defined hook called by qsave_program/2.Source
qsave_program/1Make a saved state in file `File'.Source
qsave_program/2Make a saved state in file `File'.Source
qsave_toplevel/0Called to handle `-c file` compilaton.Source
quasi_quotations.pl  -- Define Quasi Quotation syntaxShow source
quintus.pl  -- Quintus compatibilityShow source
random.plShow 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.plShow source
is_rbtree/1True if Term is a valid Red-Black tree.Source
list_to_rbtree/2Tree is the red-black tree corresponding to the mapping in List, which should be a list of Key-Value pairs.Source
ord_list_to_rbtree/2Tree is the red-black tree corresponding to the mapping in list List, which should be a list of Key-Value pairs.Source
rb_apply/4If 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.Source
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.Source
rb_del_max/4Delete the largest element from the tree Tree, returning the key Key, the value Val associated with the key and a new tree NewTree.Source
rb_del_min/4Delete the least element from the tree Tree, returning the key Key, the value Val associated with the key and a new tree NewTree.Source
rb_delete/3Delete element with key Key from the tree Tree, returning the value Val associated with the key and a new tree NewTree.Source
rb_delete/4Same as rb_delete(Tree, Key, NewTree), but also unifies Val with the value associated with Key in Tree.Source
rb_empty/1Succeeds if Tree is an empty Red-Black tree.Source
rb_fold/4Fold the given predicate over all the key-value pairs in Tree, starting with initial state State0 and returning the final state State.Source
rb_in/3True when Key-Value is a key-value pair in red-black tree Tree.Source
rb_insert/4Add an element with key Key and Value to the tree Tree creating a new red-black tree NewTree.Source
rb_insert_new/4Add a new element with key Key and Value to the tree Tree creating a new red-black tree NewTree.Source
rb_keys/2Keys is unified with an ordered list of all keys in the Red-Black tree Tree.Source
rb_lookup/3True when Value is associated with Key in the Red-Black tree Tree.Source
rb_map/2True if call(Goal, Value) is true for all nodes in T.Source
rb_map/3For 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.Source
rb_max/3Key is the maximal key in Tree, and is associated with Val.Source
rb_min/3Key is the minimum key in Tree, and is associated with Val.Source
rb_new/1Create a new Red-Black tree Tree.Source
rb_next/4Next is the next element after Key in Tree, and is associated with Val.Source
rb_partial_map/4For 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.Source
rb_previous/4Previous is the previous element after Key in Tree, and is associated with Val.Source
rb_size/2Size is the number of elements in Tree.Source
rb_update/4Tree NewTree is tree Tree, but with value for Key associated with NewVal.Source
rb_update/5Same as rb_update(Tree, Key, NewVal, NewTree) but also unifies OldVal with the value associated with Key in Tree.Source
rb_visit/2Pairs is an infix visit of tree Tree, where each element of Pairs is of the form Key-Value.Source
readutil.plShow source
read_file_to_codes/3Read the file Spec into a list of Codes.Source
read_file_to_string/3Read the file Spec into a the string String.Source
read_file_to_terms/3Read the file Spec into a list of terms.Source
read_line_to_codes/2Read the next line of input from Stream.Source
read_line_to_codes/3Difference-list version to read an input line to a list of character codes.Source
read_line_to_string/2Read the next line from Stream into String.Source
read_stream_to_codes/2Read input from Stream to a list of character codes.Source
read_stream_to_codes/3Read input from Stream to a list of character codes.Source
record.pl  -- Access compound arguments by nameShow source
rwlocks.plShow source
with_rwlock/3Run Goal, synchronized with LockId in ModeSpec.Source
with_rwlock/4Run Goal, synchronized with LockId in ModeSpec.Source
sandbox.plShow source
sandbox_allowed_directive/1Throws an exception if G is not considered a safe directive.Source
sandbox_allowed_expansion/1Throws an exception if G is not considered a safe expansion goal.Source
sandbox_allowed_goal/1Throw an exception if it is not safe to call G.Source
format_calls/3Find ~@ calls from Format and Args.Source
safe_call/1Call Goal if it complies with the sandboxing rules.Source
safe_directive/1Hook to declare additional directives as safe.Source
safe_global_variable/1Declare the given global variable safe to write to.Source
safe_goal/1True if calling Goal provides no security risc.Source
safe_meta/2Hook.Source
safe_primitive/1True if Goal is safe to call (i.e., cannot access dangerous system-resources and cannot upset other parts of the Prolog process).Source
safe_prolog_flag/2True if it is safe to set the flag Flag to Value.Source
settings.pl  -- Setting managementShow source
shlib.plShow source
compat_arch/2User definable hook to establish if Arch1 is compatible with Arch2 when running a shared object.Source
current_foreign_library/2Query currently loaded shared libraries.Source
load_foreign_library/1Load a shared object or DLL.Source
load_foreign_library/2Load a shared object or DLL.Source
reload_foreign_libraries/0Reload all foreign libraries loaded (after restore of a state created using qsave_program/2.Source
unload_foreign_library/1Unload a shared object or DLL.Source
unload_foreign_library/2Unload a shared object or DLL.Source
use_foreign_library/1Load and install a foreign library as load_foreign_library/1,2 and register the installation using initialization/2 with the option now.Source
use_foreign_library/2Load and install a foreign library as load_foreign_library/1,2 and register the installation using initialization/2 with the option now.Source
solution_sequences.pl  -- Modify solution sequencesShow source
sort.plShow source
statistics.pl  -- Get information about resource usageShow source
strings.pl  -- String utilitiesShow source
system.plShow 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
terms.pl  -- Term manipulationShow source
thread.plShow 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
create_pool/1Hook to create a thread pool lazily.Source
current_thread_pool/1True if Name refers to a defined thread pool.Source
thread_create_in_pool/4Create a thread in Pool.Source
thread_pool_create/3Create a pool of threads.Source
thread_pool_destroy/1Destroy the thread pool named Name.Source
thread_pool_property/2True if Property is a property of thread pool Name.Source
worker_exitted/3It is possible that '__thread_pool_manager' no longer exists while closing down the process because the manager was killed before the worker.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
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
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
ugraphs.plShow 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
utf8.pl  -- UTF-8 encoding/decoding on lists of character codes.Show source
varnumbers.pl  -- Utilities for numbered termsShow source
wfs.pl  -- Well Founded Semantics interfaceShow source
when.plShow source
when/2Execute Goal when Condition is satisfied.Source
writef.plShow 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.plShow 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.