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 if conjunction of results 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
message_line_element/2Hook implementation that deals with ansi(+Attr, +Fmt, +Args) in message specifications.Source
apply.pl  -- Apply predicates on a listShow 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 a list, using arguments of the list as left argument.Source
foldl/5Fold a list, using arguments of the list as left argument.Source
foldl/6Fold a list, using arguments of the list as left argument.Source
foldl/7Fold a list, using arguments of the list as left argument.Source
include/3Filter elements for which Goal succeeds.Source
maplist/2True if Goal can successfully be applied on all elements of List.Source
maplist/3As maplist/2, operating on pairs of elements from two lists.Source
maplist/4As maplist/2, operating on triples of elements from three lists.Source
maplist/5As maplist/2, operating on quadruples of elements from four lists.Source
partition/4Filter elements of List according to Pred.Source
partition/5Filter List according to Pred in three sets.Source
scanl/4Left scan of list.Source
scanl/5Left scan of list.Source
scanl/6Left scan of list.Source
scanl/7Left scan of list.Source
apply_macros.pl  -- Goal expansion rules to avoid meta-callingShow source
expand_phrase/2Provide goal-expansion for PhraseGoal.Source
expand_phrase/4Provide goal-expansion for PhraseGoal.Source
archive.pl  -- Access several archive formatsShow source
archive_close/1Close the archive.Source
archive_create/3Convenience predicate to create an archive in OutputFile with data from a list of InputFiles and the given Options.Source
archive_data_stream/3True when DataStream is a stream to a data object inside Archive.Source
archive_entries/2True when Paths is a list of pathnames appearing in Archive.Source
archive_extract/3Extract files from the given archive into Dir.Source
archive_header_property/2True when Property is a property of the current header.Source
archive_next_header/2Forward to the next entry of the archive for which Name unifies with the pathname of the entry.Source
archive_open/4Open the archive in Data and unify Archive with a handle to the opened archive.Source
archive_open_entry/2Open the current entry as a stream.Source
archive_property/2True when Property is a property of the archive Handle.Source
archive_set_header_property/2Set Property of the current header.Source
arithmetic.pl  -- Extensible arithmeticShow source
assoc.pl  -- Binary associationsShow source
backcomp.pl  -- Backward compatibilityShow source
$apropos_match/2True if Needle is a sub atom of Haystack.Source
$arch/2Source
$argv/1Source
$declare_module/3Used in triple20 particle library.Source
$home/1Source
$module/2Source
$set_prompt/1Set the prompt for the toplevel.Source
$strip_module/3This used to be an internal predicate.Source
$version/1Source
C/3Used to be generated by DCG.Source
at_initialization/1Register goal only to be run if a saved state is restored.Source
checklist/2Source
concat/3Source
concat_atom/2Concatenate a list of atomic values to an atom.Source
concat_atom/3Concatenate a list of atomic values to an atom, inserting Seperator between each consecutive elements.Source
convert_time/2Convert a time-stamp as obtained though get_time/1 into a textual representation using the C-library function ctime().Source
convert_time/8Convert a time stamp, provided by get_time/1, time_file/2, etc.Source
current_module/2True if Module is a module loaded from File.Source
current_mutex/3Source
current_thread/2Source
displayq/1Write term ignoring operators and quote atoms.Source
displayq/2Write term ignoring operators and quote atoms.Source
eval_license/0Source
export_list/2Module exports the predicates of List.Source
feature/2Control Prolog flags.Source
flush/0Source
free_variables/2Return a list of unbound variables in Term.Source
hash/1Demands PredInd to be indexed using a hash-table.Source
hash_term/2If Term is ground, Hash is unified to an integer representing a hash for Term.Source
index/1Prepare the predicate indicated by Head for multi-argument indexing.Source
lock_predicate/2Source
merge/3Merge the ordered sets List1 and List2 into a new ordered list.Source
merge_set/3Merge the ordered sets Set1 and Set2 into a new ordered set without duplicates.Source
message_queue_size/2True if Queue holds Size terms.Source
proper_list/1Old SWI-Prolog predicate to check for a list that really ends in a [].Source
read_clause/1Source
read_clause/2Source
read_pending_input/3Source
read_variables/2Source
read_variables/3Source
set_base_module/1Set the default module from whic we inherit.Source
set_feature/2Control Prolog flags.Source
setup_and_call_cleanup/3Call Cleanup once after Goal is finished.Source
setup_and_call_cleanup/4Call Cleanup once after Goal is finished, with Catcher unified to the reason.Source
sformat/2Source
sformat/3Source
string_to_atom/2Bi-directional conversion between string and atom.Source
string_to_list/2Bi-directional conversion between a string and a list of character codes.Source
sublist/3Succeeds if List2 unifies with a list holding those terms for wich call(Goal, Elem) succeeds.Source
substring/4Predecessor of sub_string using 1-based Offset.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
sumlist/2True when Sum is the list of all numbers in List.Source
trie_insert_new/3Source
unlock_predicate/2Source
write_ln/1Source
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/2Translates between plaintext and base64 encoded atom or string.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
c14n2.pl  -- C14n2 canonical XML documentsShow source
xml_write_canonical/3Write an XML DOM using the canonical conventions as defined by C14n2.Source
cgi.pl  -- Read CGI parametersShow source
cgi_get_form/1Decodes standard input and the environment variables to obtain a list of arguments passed to the CGI script.Source
charsio.pl  -- I/O on Lists of Character CodesShow source
atom_to_chars/2Convert Atom into a list of character codes.Source
atom_to_chars/3Convert Atom into a difference list of character codes.Source
format_to_chars/3Use format/2 to write to a list of character codes.Source
format_to_chars/4Use format/2 to write to a difference list of character codes.Source
number_to_chars/2Convert Atom into a list of character codes.Source
number_to_chars/3Convert Number into a difference list of character codes.Source
open_chars_stream/2Open Codes as an input stream.Source
read_from_chars/2Read Codes into Term.Source
read_term_from_chars/3Read Codes into Term.Source
with_output_to_chars/2Run Goal as with once/1.Source
with_output_to_chars/3Run Goal as with once/1.Source
with_output_to_chars/4Same as with_output_to_chars/3 using an explicit stream.Source
write_to_chars/2Write a term to a code list.Source
write_to_chars/3Write a term to a code list.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_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
chr.plShow source
debug_ask_continue/1Hook to ask for a CHR debug continuation.Source
debug_event/2Hook into the CHR debugger.Source
debug_interact/3Hook into the CHR debugger to display Event and ask for the next command to execute.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
coinductive/1The declaration :- coinductive name/arity, ... defines predicates as coinductive.Source
console_input.plShow source
complete_input/4Compute auto completions for the input line BeforeCursor+AfterCursor.Source
crypt.plShow source
crypto.pl  -- Cryptography and authentication libraryShow source
crypto_context_hash/2Obtain the hash code of Context.Source
crypto_context_new/2Context is unified with the empty context, taking into account Options.Source
crypto_curve_generator/2Point is the generator of the elliptic curve Curve.Source
crypto_curve_order/2Obtain the order of an elliptic curve.Source
crypto_curve_scalar_mult/4R is the result of N times Point on the elliptic curve Curve.Source
crypto_data_context/3Context0 is an existing computation context, and Context is the new context after hashing Data in addition to the previously hashed data.Source
crypto_data_decrypt/6Decrypt the given CipherText, using the symmetric algorithm Algorithm, key Key, and initialization vector IV, to give PlainText.Source
crypto_data_encrypt/6Encrypt the given PlainText, using the symmetric algorithm Algorithm, key Key, and initialization vector (or nonce) IV, to give CipherText.Source
crypto_data_hash/3Hash is the hash of Data.Source
crypto_data_hkdf/4Concentrate possibly dispersed entropy of Data and then expand it to the desired length.Source
crypto_file_hash/3True if Hash is the hash of the content of File.Source
crypto_generate_prime/3Generate a prime P with at least N bits.Source
crypto_is_prime/2True iff P passes a probabilistic primality test.Source
crypto_modular_inverse/3Compute the modular multiplicative inverse of the integer X.Source
crypto_n_random_bytes/2Bytes is unified with a list of N cryptographically secure pseudo-random bytes.Source
crypto_name_curve/2Obtain a handle for a named elliptic curve.Source
crypto_open_hash_stream/3Open a filter stream on OrgStream that maintains a hash.Source
crypto_password_hash/2If Hash is instantiated, the predicate succeeds iff the hash matches the given password.Source
crypto_password_hash/3Derive Hash based on Password.Source
crypto_stream_hash/2Unify Hash with a hash for the bytes sent to or read from HashStream.Source
ecdsa_sign/4Create an ECDSA signature for Data with EC private key Key.Source
ecdsa_verify/4True iff Signature can be verified as the ECDSA signature for Data, using the EC public key Key.Source
hex_bytes/2Relation between a hexadecimal sequence and a list of bytes.Source
rsa_private_decrypt/4RSA Public key encryption and decryption primitives.Source
rsa_private_encrypt/4RSA Public key encryption and decryption primitives.Source
rsa_public_decrypt/4RSA Public key encryption and decryption primitives.Source
rsa_public_encrypt/4RSA Public key encryption and decryption primitives.Source
rsa_sign/4Create an RSA signature for Data with private key Key.Source
rsa_verify/4Verify an RSA signature for Data with public key Key.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_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
date_time_value/3Extract values from a date-time structure.Source
day_of_the_week/2Computes the day of the week for a given date.Source
day_of_the_year/2Computes the day of the year for a given date.Source
parse_time/2Stamp is a timestamp created from parsing Text using the representation Format.Source
parse_time/3Stamp is a timestamp created from parsing Text using the representation Format.Source
debug.pl  -- Print debug messages and test assertionsShow 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
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
dif.pl  -- The dif/2 constraintShow source
dif/2Constraint that expresses that Term1 and Term2 never become identical (==/2).Source
doc_files.pl  -- Create stand-alone documentation filesShow source
doc_save/2Save documentation for FileOrDir to file(s).Source
doc_http.pl  -- Documentation serverShow source
doc_browser/0Open user's default browser on the documentation server.Source
doc_browser/1Open user's default browser on the documentation server.Source
doc_enable/1Actually activate the PlDoc server.Source
doc_server/1Start a documentation server in the current Prolog process.Source
doc_server/2Start a documentation server in the current Prolog process.Source
double_metaphone.pl  -- Phonetic string matchingShow source
double_metaphone/2Same as double_metaphone/3, but only returning the primary metaphone.Source
double_metaphone/3Create metaphone and alternative metaphone from In.Source
edinburgh.pl  -- Some traditional Edinburgh predicatesShow source
debug/0Switch on/off debug mode.Source
display/1Write a term, ignoring operators.Source
display/2Write a term, ignoring operators.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
editline.pl  -- BSD libedit based command line editingShow source
el_add_history/2Add a line to the command line history.Source
el_addfn/4Add a new command to the command line editor associated with Input.Source
el_bind/2Invoke the libedit bind command with the given arguments.Source
el_cursor/2Move the cursor Move character forwards (positive) or backwards (negative).Source
el_deletestr/2Delete Count characters before the cursor.Source
el_history/2Perform a generic action on the history.Source
el_history_events/2Unify Events with a list of pairs of the form Num-String, where Num is the event number and String is the associated string without terminating newline.Source
el_insertstr/2Insert Text at the cursor.Source
el_line/2Fetch the currently buffered input line.Source
el_read_history/2Read the history saved using el_write_history/2.Source
el_setup/1This hooks is called as forall(el_setup(Input), true) after the input stream has been wrapped, the default Prolog commands have been added and the default user setup file has been sourced using el_source/2.Source
el_source/2Initialise editline by reading the contents of File.Source
el_unwrap/1Remove the libedit wrapper for In and the related output and error streams.Source
el_wrap/0Enable using editline on the standard user streams if user_input is connected to a terminal.Source
el_wrap/4Enable editline on the stream-triple <In,Out,Error>.Source
el_wrapped/1True if In is a stream wrapped by el_wrap/3.Source
el_write_history/2Save editline history to File.Source
error.pl  -- Error generating supportShow 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/2Term is of the correct type and correct domain, but there is no existing (external) resource that is represented by it.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 Action on the object Term that is of the given Type.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 Term is not of the expected Type.Source
uninstantiation_error/1An argument is over-instantiated.Source
explain.pl  -- Describe Prolog TermsShow source
explain/1Write all information known about Term to the current output.Source
explain/2Explanation describes information about Term.Source
files.plShow source
can_open_file/2Succeeds if the user has access to `File' in mode `Mode'.Source
chdir/1Change Working Directory.Source
filesex.pl  -- Extended operations on filesShow source
copy_directory/2Copy the contents of the directory From to To (recursively).Source
copy_file/2Copy a file into a new file or directory.Source
delete_directory_and_contents/1Recursively remove the directory Dir and its contents.Source
delete_directory_contents/1Remove all content from directory Dir, without removing Dir itself.Source
directory_file_path/3True when Path is the full path-name for File in Dir.Source
link_file/3Create a link in the filesystem from NewPath to OldPath.Source
make_directory_path/1Create Dir and all required components (like mkdir -p).Source
relative_file_name/3True when RelPath is Path, relative to RelTo.Source
set_time_file/3Query and set POSIX time attributes of a file.Source
gensym.pl  -- Generate unique symbolsShow source
git.pl  -- Run GIT commandsShow source
hash_stream.pl  -- Maintain a hash on a streamShow source
open_hash_stream/3Open a filter stream on OrgStream that maintains a hash.Source
stream_hash/2Unify Digest with a hash for the bytes send to or read from HashStream.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.plShow source
apropos/1Give a list of subjects that might be appropriate.Source
help/1Display online help on specified subject.Source
helpidx.plShow 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
open_hook/6Open Spec in Mode, producing Stream.Source
lazy_lists.pl  -- Lazy list handlingShow source
lazy_engine_next/4Lazy list iterator for engines.Source
lazy_findall/3True when List is a lazy list containing the instantiations for Template for each answer of Goal.Source
lazy_findall/4True when List is a lazy list containing the instantiations for Template for each answer of Goal.Source
lazy_get_codes/4Lazy list iterator to get character codes from a stream.Source
lazy_list/2Create a lazy list from a callback.Source
lazy_list/3Create a lazy list where the next element is defined by.Source
lazy_list_iterator/4Directive to create a lazy list iterator from a predicate that gets a single next value.Source
lazy_list_length/2True if Len is the length of the materialized lazy list.Source
lazy_list_materialize/1Materialize the lazy list.Source
lazy_message_queue/4Lazy list iterator for message queues.Source
lazy_read_lines/4Lazy list iterator to read lines from Stream.Source
lazy_read_terms/4Turn a stream into a lazy list of Prolog terms.Source
listing.pl  -- List programs and pretty print clausesShow source
listing/0Lists all predicates defined in the calling module.Source
listing/1List 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
append/2Concatenate a list of lists.Source
append/3List1AndList2 is the concatenation of List1 and List2.Source
delete/3Delete matching elements from a list.Source
flatten/2Is true if FlatList is a non-nested version of NestedList.Source
intersection/3True if Set3 unifies with the intersection of Set1 and Set2.Source
is_set/1True if Set is a proper list without duplicates.Source
last/2Succeeds when Last is the last element of List.Source
list_to_set/2True when Set has the same elements as List in the same order.Source
max_list/2True if Max is the largest number in List.Source
max_member/2True when Max is the largest member in the standard order of terms.Source
member/2True if Elem is a member of List.Source
min_list/2True if Min is the smallest number in List.Source
min_member/2True when Min is the smallest member in the standard order of terms.Source
nextto/3True if Y directly follows X in List.Source
nth0/3True when Elem is the Index'th element of List.Source
nth0/4Select/insert element at index.Source
nth1/3Is true when Elem is the Index'th element of List.Source
nth1/4As nth0/4, but counting starts at 1.Source
numlist/3List is a list [Low, Low+1, ... High].Source
permutation/2True when Xs is a permutation of Ys.Source
prefix/2True iff Part is a leading substring of Whole.Source
proper_length/2True when Length is the number of elements in the proper list List.Source
reverse/2Is true when the elements of List2 are in reverse order compared to List1.Source
same_length/2Is true when List1 and List2 are lists with the same number of elements.Source
select/3Is true when List1, with Elem removed, results in List2.Source
select/4Select from two lists at the same positon.Source
selectchk/3Semi-deterministic removal of first element in List that unifies with Elem.Source
selectchk/4Semi-deterministic version of select/4.Source
subset/2True if all elements of SubSet belong to Set as well.Source
subtract/3Delete all elements in Delete from Set.Source
sum_list/2Sum is the result of adding all numbers in List.Source
union/3True if Set3 unifies with the union of Set1 and Set2.Source
main.pl  -- Provide entry point for scriptsShow source
make.pl  -- Reload modified source filesShow source
make/0Reload all source files that have been changed since they were loaded.Source
make_hook/2This hook is called by make/0.
md5.pl  -- MD5 hashesShow source
md5_hash/3Hash is the MD5 hash of Data, The conversion is controlled by Options:.Source
memfile.plShow source
modules.pl  -- Module utility predicatesShow source
in_temporary_module/3Run Goal on temporary loaded sources and discard the module and loaded predicates after completion.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.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.Source
occurrences_of_var/3Count the number of SubTerms in Term.Source
sub_term/2Generates (on backtracking) all subterms of 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.pl  -- Option list processingShow source
dict_options/2Convert between an option list and a dictionary.Source
merge_options/3Merge two option lists.Source
meta_options/3Perform meta-expansion on options that are module-sensitive.Source
option/2Get an Option from OptionList.Source
option/3Get an Option from OptionList.Source
select_option/3Get and remove Option from an option list.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/3Source
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
pcre.pl  -- Perl compatible regular expression matching for SWI-PrologShow source
re_compile/3Compiles Pattern to a Regex blob of type regex (see blob/2).Source
re_config/1Extract configuration information from the pcre library.Source
re_flush/0Clean pattern and replacement caches.Source
re_foldl/6Fold all matches of Regex on String.Source
re_match/2Succeeds if String matches Regex.Source
re_match/3Succeeds if String matches Regex.Source
re_matchsub/4Match String against Regex.Source
re_replace/4Replace matches of the regular expression Pattern in String with With.Source
re_split/3Split String using the regular expression Pattern.Source
re_split/4Split String using the regular expression Pattern.Source
pengines.pl  -- Pengines: Web Logic Programming Made EasyShow source
authentication_hook/3This hook is called from the =/pengine/create= HTTP handler to discover whether the server is accessed by an authorized user.Source
current_pengine_application/1True when Application is a currently defined application.Source
event_to_json/3Hook that translates a Pengine event structure into a term suitable for reply_json/1, according to the language specification Lang.Source
not_sandboxed/2This hook is called to see whether the Pengine must be executed in a protected environment.Source
output/2Hook to handle pengine_output/1 from the remote pengine.Source
pengine_abort/1Aborts the running query.Source
pengine_application/1Directive that must be used to declare a pengine application module.Source
pengine_ask/3Asks pengine NameOrID a query Query.Source
pengine_create/1Creates a new pengine.Source
pengine_debug/2Create a message using format/3 from Format and Args and send this to the client.Source
pengine_destroy/1Destroys the pengine NameOrID.Source
pengine_destroy/2Destroys the pengine NameOrID.Source
pengine_event/2Examines the pengine's event queue and if necessary blocks execution until a term that unifies to Term arrives in the queue.Source
pengine_event_loop/2Starts an event loop accepting event terms sent to the current pengine or thread.Source
pengine_input/2Sends Prompt to the parent pengine and waits for input.Source
pengine_next/2Asks pengine NameOrID for the next solution to a query started by pengine_ask/3.Source
pengine_output/1Sends Term to the parent pengine or thread.Source
pengine_property/2True when Property is a property of the given Pengine.Source
pengine_pull_response/2Pulls a response (an event term) from the slave Pengine if Pengine is a remote process, else does nothing at all.Source
pengine_respond/3Sends a response in the form of the term Input to a slave pengine that has prompted its master for input.Source
pengine_rpc/2Semantically equivalent to the sequence below, except that the query is executed in (and in the Prolog context of) the pengine server referred to by URL, rather than locally.Source
pengine_rpc/3Semantically equivalent to the sequence below, except that the query is executed in (and in the Prolog context of) the pengine server referred to by URL, rather than locally.Source
pengine_self/1True if the current thread is a pengine with Id.Source
pengine_stop/2Tells pengine NameOrID to stop looking for more solutions to a query started by pengine_ask/3.Source
pengine_user/1True when the pengine was create by an HTTP request that authorized User.Source
prepare_goal/3Pre-preparation hook for running Goal0.Source
prepare_module/3Hook, called to initialize the temporary private module that provides the working context of a pengine.Source
prompt/3Hook to handle pengine_input/2 from the remote pengine.Source
write_result/3Hook that allows for different output formats.Source
create_pool/1On demand creation of a thread pool for a pengine application.Source
pengines_io.pl  -- Provide Prolog I/O for HTML clientsShow source
binding_term/5Hook to render a Prolog result term as HTML.Source
pengine_bind_io_to_html/1Redefine the built-in predicates for IO to send HTML messages using pengine_output/1.Source
pengine_display/1Redirect the corresponding Prolog output predicates.Source
pengine_flush_output/0No-op.Source
pengine_format/1As format/1,2.Source
pengine_format/2As format/1,2.Source
pengine_io_predicate/1True when Head describes the head of a (system) IO predicate that is redefined by the HTML binding.Source
pengine_listing/0List the content of the current pengine or a specified predicate in the pengine.Source
pengine_listing/1List the content of the current pengine or a specified predicate in the pengine.Source
pengine_nl/0Emit a <br/> to the pengine.Source
pengine_print/1Redirect the corresponding Prolog output predicates.Source
pengine_write/1Redirect the corresponding Prolog output predicates.Source
pengine_write_canonical/1Redirect the corresponding Prolog output predicates.Source
pengine_write_term/2Writes term as <span class=Class>Term</span>.Source
pengine_writeln/1Emit Term as <span class=writeln>Term<br></span>.Source
pengine_writeq/1Redirect the corresponding Prolog output predicates.Source
message_hook/3Send output from print_message/2 to the pengine.Source
persistency.pl  -- Provide persistent dynamic predicatesShow source
current_persistent_predicate/1True if PI is a predicate that provides access to the persistent database DB.Source
db_attach/2Use File as persistent database for the calling module.Source
db_attached/1True if the context module attached to the persistent database File.Source
db_detach/0Detach persistency from the calling module and delete all persistent clauses from the Prolog database.Source
db_sync/1Synchronise database with the associated file.Source
db_sync_all/1Sync all registered databases.Source
persistent/1Declare dynamic database terms.Source
pldoc.pl  -- Process source documentationShow source
doc_collect/1Switch collecting comments true/false.Source
pldoc_loading/0True if we are loading the PlDoc libraries.Source
tag_order/2Hook that allows for defining additional tags.Source
porter_stem.plShow 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
process.pl  -- Create processes and redirect I/OShow source
is_process/1True if PID might be a process.Source
process_create/3Create a new process running the file Exe and using arguments from the given list.Source
process_group_kill/1Send signal to the group containing process PID.Source
process_group_kill/2Send signal to the group containing process PID.Source
process_id/1True if PID is the process id of the running Prolog process.Source
process_id/2PID is the process id of Process.Source
process_kill/1Send signal to process PID.Source
process_kill/2Send signal to process PID.Source
process_release/1Release process handle.Source
process_wait/2True if PID completed with Status.Source
process_wait/3True if PID completed with Status.Source
prolog_autoload.pl  -- Autoload all dependenciesShow source
autoload/0Force all necessary autoloading to be done now.Source
autoload/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
prolog_clause.pl  -- Get detailed source-information about a clauseShow source
clause_info/4Fetches source information for the given clause.Source
clause_name/2Provide a suitable description of the indicated clause.Source
initialization_layout/4Find term-layout of :- initialization directives.Source
open_source/2Hook into clause_info/5 that opens the stream holding the source for a specific clause.Source
predicate_name/2Describe a predicate as [Module:]Name/Arity.Source
unify_goal/5This hook is called to fix up source code manipulations that result from goal expansions.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
prolog_colour.pl  -- Prolog syntax colouring support.Show source
goal_classification/2Multifile hookable classification for non-local goals.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_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_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_metainference.pl  -- Infer meta-predicate propertiesShow source
infer_meta_predicate/2True when MetaSpec is a meta-predicate specifier for the predicate Head.Source
inferred_meta_predicate/2True when MetaSpec is an inferred meta-predicate specification for Head.Source
prolog_pack.pl  -- A package manager for PrologShow source
environment/2Hook to define the environment for building packs.Source
pack_info/1Print more detailed information about Pack.Source
pack_install/1Install a package.Source
pack_install/2Install package Name.Source
pack_list/1Query package server and installed packages and display results.Source
pack_list_installed/0List currently installed packages.Source
pack_property/2True when Property is a property of Pack.Source
pack_rebuild/0Rebuild foreign components of all packages.Source
pack_rebuild/1Rebuilt possible foreign components of Pack.Source
pack_remove/1Remove the indicated package.Source
pack_search/1Query package server and installed packages and display results.Source
pack_upgrade/1Try to upgrade the package Pack.Source
pack_url_file/2True if File is a unique id for the referenced pack and version.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
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_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_stream.pl  -- A stream with Prolog callbacksShow source
open_prolog_stream/4Create a new stream that implements its I/O by calling predicates in Module.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/3Enumerate the predicate-call relations.Source
xref_called/4Enumerate the predicate-call relations.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
qsave_program/1Make a saved state in file `File'.Source
qsave_program/2Make a saved state in file `File'.Source
quasi_quotations.pl  -- Define Quasi Quotation syntaxShow source
phrase_from_quasi_quotation/2Process the quasi quotation using the DCG Grammar.Source
quasi_quotation_syntax/1Declare the predicate SyntaxName/4 to implement the the quasi quote syntax SyntaxName.Source
quasi_quotation_syntax_error/1Report syntax_error(Error) using the current location in the quasi quoted input parser.Source
with_quasi_quotation_input/3Process the quasi-quoted Content using Stream parsed by Goal.Source
quintus.pl  -- Quintus compatibilityShow source
abs/2Unify `Absolute' with the absolute value of `Number'.Source
atom_char/2Same as ISO char_code/2.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
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
prolog_flag/2Same as ISO current_prolog_flag/2.Source
raise_exception/1Quintus compatible exception handling.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
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/1interface to Unix.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_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
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
is_rbtree/1True if Term is a valide 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/4Delete element with key Key from the tree Tree, returning the value Val associated with the key and a new tree NewTree.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.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/5Tree NewTree is tree Tree, but with value for Key associated with NewVal.Source
rb_visit/2Pairs is an infix visit of tree Tree, where each element of Pairs is of the form Key-Value.Source
rdf.plShow source
load_rdf/2Parse an XML file holding an RDF term into a list of RDF triples.Source
load_rdf/3Parse an XML file holding an RDF term into a list of RDF triples.Source
process_rdf/3Process RDF from Input.Source
xml_to_rdf/3Source
rdf_ntriples.pl  -- RDF N-triples parser (obsolete)Show source
rdf_parser.plShow source
element_to_plrdf/3Rewrite a single XML element.Source
rdf_name_space/1True if URL must be handled as rdf: Determines special handling of rdf:about, rdf:resource, etc.Source
xml_to_plrdf/3Translate an XML (using namespaces) term into an Prolog term representing the RDF data.Source
rdf_triple.pl  -- Create triples from intermediate representationShow source
anon_prefix/1If defined, it is the prefix used to generate a blank node.Source
rdf_end_file/1Cleanup reaching the end of an RDF file.Source
rdf_reset_ids/0Utility predicate to reset the gensym counters for the various generated identifiers.Source
rdf_start_file/2Initialise for the translation of a file.Source
rdf_triples/2Convert an object as parsed by rdf.pl into a list of rdf/3 triples.Source
rdf_triples/3Convert an object as parsed by rdf.pl into a list of rdf/3 triples.Source
rdf_write.pl  -- Write RDF/XML from a list of triplesShow source
rdf_write_xml/2Write an RDF/XML serialization of Triples to Out.Source
readline.pl  -- GNU readline interfaceShow source
rl_add_history/1Add a line to the history.
rl_read_history/1Read a saved history from File.
rl_read_init_file/1Read a GNU readline config file.
rl_write_history/1Save the history to File.
readutil.pl  -- Read utilitiesShow 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 a line of input from In into a list of character codes.Source
read_line_to_codes/3Read a line of input as a difference list.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
rewrite.plShow source
rewrite/2Invoke the term-rewriting system.Source
rlimit.plShow source
sandbox.pl  -- Sandboxed Prolog codeShow 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
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
settings.pl  -- Setting managementShow source
convert_setting_text/3Converts from textual form to Prolog Value.Source
current_setting/1True if Setting is a currently defined setting.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
sgml.pl  -- SGML, XML and HTML parserShow source
sgml_write.pl  -- XML/SGML writer moduleShow source
html_write/2Write a term as created by the SGML/XML parser to a stream in SGML or XML format.Source
html_write/3Write a term as created by the SGML/XML parser to a stream in SGML or XML format.Source
sgml_write/2Write a term as created by the SGML/XML parser to a stream in SGML or XML format.Source
sgml_write/3Write a term as created by the SGML/XML parser to a stream in SGML or XML format.Source
xml_write/2Write a term as created by the SGML/XML parser to a stream in SGML or XML format.Source
xml_write/3Write a term as created by the SGML/XML parser to a stream in SGML or XML format.Source
xmlns/2Hook to define human readable abbreviations for XML namespaces.Source
sha.pl  -- SHA secure hashesShow source
file_sha1/2True when SHA1 is the SHA1 hash for the content of File.Source
hash_atom/2Convert a list of bytes (integers 0..255) into the usual hexadecimal notation.Source
hmac_sha/4For Options, see sha_hash/3.Source
sha_hash/3Hash is the SHA hash of Data, The conversion is controlled by Options:.Source
sha_hash_ctx/4Hash is the SHA hash of Data.Source
sha_new_ctx/2NewContext is unified with the empty SHA computation context (which includes the Options.) It could later be passed to sha_hash_ctx/4.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
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
snowball.pl  -- The Snowball multi-lingual stemmer libraryShow source
snowball/3Apply the Snowball Algorithm on Input and unify the result (an atom) with Stem.Source
snowball_current_algorithm/1True if Algorithm is the official name of an algorithm suported by snowball/3.Source
socket.pl  -- Network socket (TCP and UDP) libraryShow source
gethostname/1Return the canonical fully qualified name of this host.Source
negotiate_socks_connection/2Negotiate a connection to DesiredEndpoint over StreamPair.Source
proxy_for_url/3This hook can be implemented to return a proxy to try when connecting to URL.Source
tcp_accept/3This predicate waits on a server socket for a connection request by a client.Source
tcp_bind/2Bind the socket to Address on the current machine.Source
tcp_close_socket/1Closes the indicated socket, making SocketId invalid.Source
tcp_connect/2Connect SocketId.Source
tcp_connect/3Establish a TCP communication as a client.Source
tcp_connect/4Connect a (client) socket to Address and return a bi-directional connection through the stream-handles Read and Write.Source
tcp_fcntl/3Interface to the fcntl() call.Source
tcp_host_to_address/2Translate between a machines host-name and it's (IP-)address.Source
tcp_listen/2Tells, after tcp_bind/2, the socket to listen for incoming requests for connections.Source
tcp_open_socket/2Create streams to communicate to SocketId.Source
tcp_open_socket/3Similar to tcp_open_socket/2, but creates two separate sockets where tcp_open_socket/2 would have created a stream pair.Source
tcp_select/3Same as the built-in wait_for_input/3, but integrates better with event processing and the various options of sockets for Windows.Source
tcp_setopt/2Set options on the socket.Source
tcp_socket/1Creates an INET-domain stream-socket and unifies an identifier to it with SocketId.Source
try_proxy/4Attempt a socket-level connection via the given proxy to TargetAddress.Source
solution_sequences.pl  -- Modify solution sequencesShow 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
locale_sort/2Sort a list of atoms using the current locale.Source
predsort/3Sorts similar to sort/2, but determines the order of two terms by calling Compare(-Delta, +E1, +E2).Source
ssl.pl  -- Secure Socket Layer (SSL) libraryShow source
cert_accept_any/5Implementation for the hook `cert_verify_hook(:Hook)` that accepts any certificate.Source
load_certificate/2Loads a certificate from a PEM- or DER-encoded stream, returning a term which will unify with the same certificate if presented in cert_verify_hook.Source
load_crl/2Loads a CRL from a PEM- or DER-encoded stream, returning a term containing terms hash/1, signature/1, issuer_name/1 and revocations/1, which is a list of revoked/2 terms.Source
load_private_key/3Load a private key PrivateKey from the given stream Stream, using Password to decrypt the key if it is encrypted.Source
load_public_key/2Load a public key PublicKey from the given stream Stream.Source
ssl_add_certificate_key/4Add an additional certificate/key pair to SSL0, yielding SSL.Source
ssl_context/3Create an SSL context.Source
ssl_negotiate/5Once a connection is established and a read/write stream pair is available, (PlainRead and PlainWrite), this predicate can be called to negotiate an SSL session over the streams.Source
ssl_peer_certificate/2True if the peer certificate is provided (this is always the case for a client connection) and Certificate unifies with the peer certificate.Source
ssl_peer_certificate_chain/2Certificates is the certificate chain provided by the peer, represented as a list of certificates.Source
ssl_secure_ciphers/1Secure ciphers must guarantee forward secrecy, and must mitigate all known critical attacks.Source
ssl_session/2Retrieves (debugging) properties from the SSL context associated with Stream.Source
ssl_set_options/3SSL is the same as SSL0, except for the options specified in Options.Source
system_root_certificates/1List is a list of trusted root certificates as provided by the OS.Source
statistics.pl  -- Get information about resource usageShow source
profile/1Run Goal under the execution profiler.Source
profile/2Run Goal under the execution profiler.Source
show_profile/1Display last collected profiling data.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
streampool.plShow source
syslog.pl  -- Unix syslog interfaceShow 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
table.plShow source
tabling.pl  -- Tabled execution (SLG WAM)Show source
rename_predicate/2Hook into term_expansion for post processing renaming of the generated predicate.Source
safe_directive/1Allow tabling directives that affect locally defined predicates.Source
abolish_all_tables/0Remove all tables.Source
abolish_table_subgoals/1Abolish all tables that unify with SubGoal.Source
current_table/2True when Trie is the answer table for Variant.Source
start_tabling/2Execute Implementation using tabling.Source
table/1Prepare the given PredicateIndicators for tabling.Source
term_to_json.plShow source
term_to_json/2Convert any general Prolog term into a JSON term.Source
term_to_json/3Convert any general Prolog term into a JSON term.Source
terms.pl  -- Term manipulationShow 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
concurrent/3Run Goals in parallel using N threads.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.pl  -- Resource bounded thread managementShow 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
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
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
xterm_args/1Multifile and dynamic hook that provides (additional) arguments for the xterm(1) process opened for additional thread consoles.Source
time.pl  -- Time and alarm libraryShow source
tty.pl  -- Terminal operationsShow source
menu/3Show a menu.Source
tty_clear/0Clear the display.Source
tty_flash/0Give visual signal if possible, otherwise beep.Source
udp_broadcast.pl  -- A UDP Broadcast BridgeShow source
udp_broadcast_initialize/2causes any required runtime initialization to occur.Source
udp_broadcast_service/2provides the UDP broadcast address for a given Domain.Source
udp_host_to_address/2locates a UDP service by name.Source
ugraphs.pl  -- Graph manipulation libraryShow source
compose/3Calculates the composition of two S-form graphs, which need not have the same set of vertices.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/2Edges is the set of edges in UGraph.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
top_sort/2Sorted is a topological sorted list of nodes in Graph.Source
top_sort/3Sorted is a topological sorted list of nodes in 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_union/3Is true when Union is the union of Set1 and Set2.Source
vertices/2Strips off the neighbours lists of an S-representation to produce a list of the vertices of the graph.Source
vertices_edges_to_ugraph/3Create a UGraph from Vertices and edges.Source
uid.pl  -- User and group management on Unix systemsShow source
unicode.pl  -- Unicode string handlingShow source
unicode_map/3Perform unicode normalization operations.Source
unicode_nfc/2Characters are decomposed and then recomposed by canonical equivalence.Source
unicode_nfd/2Characters are decomposed by canonical equivalence.Source
unicode_nfkc/2Characters are decomposed by compatibility equivalence, then recomposed by canonical equivalence.Source
unicode_nfkd/2Characters are decomposed by compatibility equivalence.Source
unicode_property/2True if Property is defined for Char.Source
unix.pl  -- Unix specific operationsShow source
uri.pl  -- Process URIsShow source
iri_normalized/2NormalizedIRI is the normalized form of IRI.Source
iri_normalized/3NormalizedGlobalIRI is the normalized global version of IRI.Source
uri_authority_components/2Break-down the authority component of a URI.Source
uri_authority_data/3Provide access the uri_authority structure.Source
uri_components/2Break a URI into its 5 basic components according to the RFC-3986 regular expression:.Source
uri_data/3Provide access the uri_component structure.Source
uri_data/4NewComponents is the same as Components with Field set to Data.Source
uri_encoded/3Encoded is the URI encoding for Value.Source
uri_file_name/2Convert between a URI and a local file_name.Source
uri_iri/2Convert between a URI, encoded in US-ASCII and an IRI.Source
uri_is_global/1True if URI has a scheme.Source
uri_normalized/2NormalizedURI is the normalized form of URI.Source
uri_normalized/3NormalizedGlobalURI is the normalized global version of URI.Source
uri_normalized_iri/2As uri_normalized/2, but percent-encoding is translated into IRI Unicode characters.Source
uri_normalized_iri/3NormalizedGlobalIRI is the normalized global IRI of URI.Source
uri_query_components/2Perform encoding and decoding of an URI query string.Source
uri_resolve/3Resolve a possibly local URI relative to Base.Source
url.pl  -- Analysing and constructing URLShow source
utf8.pl  -- UTF-8 encoding/decoding on lists of character codes.Show source
uuid.pl  -- Universally Unique Identifier (UUID) LibraryShow 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
when.pl  -- Conditional coroutiningShow source
when/2Execute Goal when Condition is satisfied.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
expand_url_path/2Expand URL specifications similar to absolute_file_name/3.Source
known_browser/2True if browser FileBaseName has a remote protocol compatible to Compatible.Source
www_open_url/1Open URL in running version of the users' browser or start a new browser.Source
xmldsig.pl  -- XML Digital signatureShow source
xmld_signed_DOM/3Translate an XML DOM structure in a signed version.Source
xmld_verify_signature/4Confirm that an ds:Signature element contains a valid signature.Source
xmlenc.pl  -- XML encryption libraryShow source
decrypt_xml/4Source
load_certificate_from_base64_string/2Loads a certificate from a string, adding newlines and header where appropriate so that OpenSSL 1.0.1+ will be able to parse it.Source
xpath.pl  -- Select nodes in an XML DOMShow source
xpath/3Match an element in a DOM structure.Source
xpath_chk/3Semi-deterministic version of xpath/3.Source
xsdp_types.pl  -- XML-Schema primitive typesShow source
xsdp_convert/3Convert the content model Content to an object of the given XSD type and return the Prolog value in Value.Source
xsdp_numeric_uri/2Table mapping all XML-Schema numeric URIs into the type they promote to.Source
xsdp_subtype_of/2True if Type is a (transitive) subtype of Super.Source
xsdp_type/1Test/generate the names for the XML schema primitive types.Source
xsdp_uri_type/2True if URI is the URI for the the XML-Schema primitive Type.Source
yall.pl  -- Lambda expressionsShow source
//2Shorthand for Free/[]>>Lambda.Source
//3Shorthand for Free/[]>>Lambda.Source
//4Shorthand for Free/[]>>Lambda.Source
//5Shorthand for Free/[]>>Lambda.Source
//6Shorthand for Free/[]>>Lambda.Source
//7Shorthand for Free/[]>>Lambda.Source
//8Shorthand for Free/[]>>Lambda.Source
//9Shorthand for Free/[]>>Lambda.Source
>>/2Calls a copy of Lambda.Source
>>/3Calls a copy of Lambda.Source
>>/4Calls a copy of Lambda.Source
>>/5Calls a copy of Lambda.Source
>>/6Calls a copy of Lambda.Source
>>/7Calls a copy of Lambda.Source
>>/8Calls a copy of Lambda.Source
>>/9Calls a copy of Lambda.Source
is_lambda/1True if Term is a valid Lambda expression.Source
lambda_calls/2Goal is the goal called if call/N is applied to LambdaExpression, where ExtraArgs are the additional arguments to call/N.Source
lambda_calls/3Goal is the goal called if call/N is applied to LambdaExpression, where ExtraArgs are the additional arguments to call/N.Source
zlib.pl  -- Zlib wrapper for SWI-PrologShow source
encoding_filter/3Act as plugin for library(http/http_open) for processing content with Content-encoding: gzip.Source
gzopen/3Open a file compatible with the gzip program.Source
gzopen/4Open a file compatible with the gzip program.Source