library

Prolog files

aggregate.pl  -- Aggregation operators on backtrackable predicatesShow source
ansi_term.pl  -- Print decorated text to ANSI consolesShow source
apply.pl  -- Apply predicates on a listShow source
apply_macros.pl  -- Goal expansion rules to avoid meta-callingShow source
arithmetic.plShow source
arithmetic_expression_value/2True when Result unifies with the arithmetic result of evaluating Expression.Source
arithmetic_function/1Declare a predicate as an arithmetic function.Source
assoc.pl  -- Binary associationsShow source
atom.plShow source
identifier_parts/2Parts is a list of atoms that make up Identifier.Source
join_identifier_parts/3Join parts of an identifier according to Style.Source
restyle_identifier/3Restyle an identifier by extracting the alnum substrings and joining them together according to Style.Source
backcomp.pl  -- Backward compatibilityShow source
base32.plShow 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
broadcast.pl  -- Event serviceShow 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.plShow 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
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.pl  -- Editor interfaceShow source
error.plShow 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.plShow source
explain/1Give an explanation on Term.Source
explain/2True when Explanation is an explanation of Term.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
files.plShow source
can_open_file/2Succeeds if the user has access to `File' in mode `Mode'.Source
chdir/1Change Working Directory.Source
gensym.pl  -- Generate unique symbolsShow source
git.pl  -- Run GIT commandsShow source
hashtable.plShow source
ht_del/3Delete Key-Value from HT.Source
ht_gen/3True when Key-Value is in HT.Source
ht_get/3True when Key is in HT and associated with Value.Source
ht_is_hashtable/1True when HT is a hash table.Source
ht_keys/2True when Keys is an ordered set of all keys in HT.Source
ht_new/1Create a new hash table.Source
ht_pairs/2True when Pairs and HT represent the same association.Source
ht_put/3Add a Key-Value to HT.Source
ht_put/5Add Key-Value to HT.Source
ht_put_new/3As ht_put/3, but fails if Key is already in HT instead of updating the associated value.Source
ht_size/2True when Size is the number of key-value pairs in HT.Source
ht_update/4True when HT holds Key-Old before and Key-New after this call.Source
heaps.pl  -- heaps/priority queuesShow source
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.plShow source
incr_directly_depends/2True if Goal1 depends on Goal2 in the IDG.Source
incr_invalid_subgoals/1List is a sorted list (set) of the incremental subgoals that are currently invalid.Source
incr_invalidate_call/1This is the XSB name, but the manual says incr_invalidate_calls/1 and the comment with the code suggests this is misnamed.Source
incr_invalidate_calls/1Invalidate all tables for subgoals of Goal as well as tables that are affected by these.Source
incr_is_invalid/1True when Subgoal's table is marked as invalid.Source
incr_propagate_calls/1Activate the monotonic answer propagation similarly to when a new fact is asserted for a monotonic dynamic predicate.Source
incr_table_update/0Updated all invalid tables.Source
incr_trans_depends/2True for each pair in the transitive closure of incr_directly_depends(G1, G2).Source
is_incremental_subgoal/1This predicate non-deterministically unifies Subgoal with incrementally tabled subgoals that are currently table entries.Source
intercept.pl  -- Intercept and signal interfaceShow 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.pl  -- List programs and pretty print clausesShow 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.plShow source
append/2Concatenate a list of lists.Source
append/3List1AndList2 is the concatenation of List1 and List2.Source
clumped/2Pairs is a list of Item-Count pairs that represents the run length encoding of Items.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
max_member/3True when Max is the largest member according to Pred, which must be a 2-argument callable that behaves like (@=<)/2.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
min_member/3True when Min is the smallest member according to Pred, which must be a 2-argument callable that behaves like (@=<)/2.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 position.Source
selectchk/3Semi-deterministic removal of first element in List that unifies with Elem.Source
selectchk/4Semi-deterministic version of select/4.Source
subseq/3Is true when SubList contains a subset of the elements of List in the same order and Complement contains all elements of List not in SubList, also in the order they appear in List.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 the lists Set1 and Set2.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.pl  -- Provide entry point for scriptsShow source
make.pl  -- Reload modified source filesShow source
modules.pl  -- Module utility predicatesShow source
nb_set.plShow 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.plShow 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
optparse.plShow 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.plShow 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
pairs.plShow source
group_pairs_by_key/2Group values with equivalent (==/2) consecutive keys.Source
map_list_to_pairs/3Create a Key-Value list by mapping each element of List.Source
pairs_keys/2Remove the values from a list of Key-Value pairs.Source
pairs_keys_values/3True if Keys holds the keys of Pairs and Values the values.Source
pairs_values/2Remove the keys from a list of Key-Value pairs.Source
transpose_pairs/2Swap Key-Value to Value-Key.Source
persistency.plShow source
current_persistent_predicate/1True if PI is a predicate that provides access to the persistent database DB.Source
db_assert/1Assert Term into the database and record it for persistency.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_retract/1Retract terms from the database one-by-one.Source
db_retractall/1Retract all matching facts and do the same in the 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
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.plShow source
assert_predicate_options/4As predicate_options(:PI, +Arg, +Options).Source
check_predicate_option/3Verify predicate options at runtime.Source
check_predicate_options/0Analyse loaded program for erroneous options.Source
check_predicate_options/1Verify calls to predicates that have options in all clauses of the predicate indicated by PredicateIndicator.Source
current_option_arg/2True when Arg of PI processes predicate options.Source
current_predicate_option/3True when Arg of PI processes Option.Source
current_predicate_options/3True when Options is the current active option declaration for PI on Arg.Source
derive_predicate_options/0Derive new predicate option declarations.Source
derived_predicate_options/1Derive predicate option declarations for a module.Source
derived_predicate_options/3Derive option arguments using static analysis.Source
predicate_options/3Declare that the predicate PI processes options on Arg.Source
retractall_predicate_options/0Remove all dynamically (derived) predicate options.Source
prolog_autoload.pl  -- Autoload all dependenciesShow source
prolog_breakpoints.pl  -- Manage Prolog break-pointsShow source
prolog_clause.plShow source
clause_info/4Fetches source information for the given clause.Source
clause_info/5Fetches 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
make_varnames/5Create a Term varnames(...) where each argument contains the name of the variable at that offset.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
unify_term/2Unify the two terms, where T2 is created by writing the term and reading it back in, but be aware that rounding problems may cause floating point numbers not to unify.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_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_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.plShow 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_file_directives/3True when Directives is a list of directives that appear in the source file File.Source
prolog_open_source/2Open source with given canonical id (see prolog_canonical_source/2) and remove the #!Source
prolog_read_source_term/4Read a term from a Prolog source-file.Source
read_source_term_at_location/3Try to read a Prolog term form an arbitrary location inside a file.Source
requires_library/2known expansion hooks.Source
valid_term_position/2Check that a Term has an appropriate TermPos layout.Source
prolog_stack.pl  -- Examine the Prolog stackShow source
prolog_trace.pl  -- Print access to predicatesShow 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.pl  -- Wrapping predicatesShow source
prolog_xref.pl  -- Prolog cross-referencer data collectionShow 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.plShow source
abs/2Unify `Absolute' with the absolute value of `Number'.Source
acos/2Math library predicates.Source
asin/2Math library predicates.Source
atan/2Math library predicates.Source
atan2/3Math library predicates.Source
atom_char/2Same as ISO char_code/2.Source
ceiling/2Math library predicates.Source
compile/1Compile files.Source
cos/2Math library predicates.Source
current_stream/3SICStus/Quintus and backward compatible predicate.Source
date/1Get current date as date(Y,M,D).Source
floor/2Math library predicates.Source
genarg/3Generalised version of ISO arg/3.Source
log/2Math library predicates.Source
log10/2Math library predicates.Source
midstring/3Too difficult to explain.Source
midstring/4Too difficult to explain.Source
midstring/5Too difficult to explain.Source
midstring/6Too difficult to explain.Source
no_style_check/1Same as SWI-Prolog style_check(-Style).Source
on_exception/3Source
otherwise/0For (A -> B ; otherwise -> C).Source
pow/3Math library predicates.Source
prolog_flag/2Same as ISO current_prolog_flag/2.Source
raise_exception/1Quintus compatible exception handling.Source
round/2Math library predicates.Source
sign/2Math library predicates.Source
simple/1Term is atomic or a variable.Source
sin/2Math library predicates.Source
skip_line/0Skip the rest of the current line (on Stream).Source
skip_line/1Skip the rest of the current line (on Stream).Source
sqrt/2Math library predicates.Source
stream_position/3True when Old is the current position in Stream and the stream has been repositioned to New.Source
tan/2Math library predicates.Source
unix/1This predicate provides a partial emulation of the corresponding Quintus predicate.Source
random.pl  -- Random numbersShow source
rbtrees.pl  -- Red black treesShow source
readln.plShow source
readutil.pl  -- Read utilitiesShow source
record.plShow source
current_record/2True if Name is the name of a record defined in the module associated with Term and Term is the user-provided record declaration.Source
current_record_predicate/2True if PI is the predicate indicator for an access predicate to Record.Source
record/1Define access predicates for a compound-term.Source
rwlocks.plShow source
with_rwlock/3Run Goal, synchronized with LockId in ModeSpec.Source
with_rwlock/4Run Goal, synchronized with LockId in ModeSpec.Source
sandbox.pl  -- Sandboxed Prolog codeShow source
settings.pl  -- Setting managementShow source
shell.pl  -- Elementary shell commandsShow source
shlib.pl  -- Utility library for loading foreign objects (DLLs, shared objects)Show source
solution_sequences.pl  -- Modify solution sequencesShow source
sort.plShow source
statistics.plShow source
call_time/2Call Goal as call/1, unifying Time with a dict that provides information on the resource usage.Source
call_time/3Call Goal as call/1, unifying Time with a dict that provides information on the resource usage.Source
statistics/0Print information about resource usage using print_message/2.Source
statistics/1Stats is a dict representing the same information as statistics/0.Source
thread_statistics/2Obtain statistical information about a single thread.Source
time/1Execute Goal, reporting statistics to the user.Source
streams.pl  -- Manage Prolog streamsShow source
strings.plShow source
dedent_lines/3Remove shared indentation for all lines in a string.Source
indent_lines/3Add Prefix to the beginning of lines in In.Source
indent_lines/4Similar to indent_lines/3, but only adds Prefix to lines for which call(Filter, Line) succeeds.Source
interpolate_string/4Establish a string from a template by replacing patterns.Source
string/4Implements the quasi quotation syntax string.Source
string_lines/2True when String represents Lines.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.plShow source
abolish_table_call/1Same as abolish_table_subgoals/1.Source
abolish_table_call/2Same as abolish_table_subgoals/1.Source
abolish_table_pred/1Invalidates all tabled subgoals for the predicate denoted by the predicate or term indicator Pred.Source
abolish_table_subgoals/2Behaves as abolish_table_subgoals/1, but allows the default table_gc_action to be over-ridden with a flag, which can be either abolish_tables_transitively or abolish_tables_singly.Source
get_call/3True when Trie is an answer trie for a variant of CallTerm.Source
get_calls/3True when Trie is an answer trie for a variant that unifies with CallTerm and Skeleton is the answer skeleton.Source
get_residual/2True if CallTerm appears in a table and has DelayList.Source
get_returns/2True when Return is an answer template for the AnswerTrie.Source
get_returns/3True when Return is an answer template for the AnswerTrie and the answer is represented by the trie node NodeID.Source
get_returns_and_dls/3True when Return appears in AnswerTrie with the given DelayLists.Source
get_returns_and_tvs/3Identical to get_returns/2, but also obtains the truth value of a given answer, setting TruthValue to t if the answer is unconditional and to u if it is conditional.Source
get_returns_for_call/2True if AnswerTerm appears in the tables for the variant CallTerm.Source
set_pil_off/0Dummy predicates for XSB compatibility.Source
set_pil_on/0Dummy predicates for XSB compatibility.Source
t not/1Tabled negation.Source
tfindall/3This predicate emerged in XSB in an attempt to provide a safer alternative to findall/3.Source
terms.plShow source
foldsubterms/4The predicate foldsubterms/5 calls call(Goal4, SubTerm1, SubTerm2, StateIn, StateOut) for each subterm, including variables, in Term1.Source
foldsubterms/5The predicate foldsubterms/5 calls call(Goal4, SubTerm1, SubTerm2, StateIn, StateOut) for each subterm, including variables, in Term1.Source
mapargs/3Term1 and Term2 have the same functor (name/arity) and for each matching pair of arguments call(Goal, A1, A2) is true.Source
mapsubterms/3Recursively map sub terms of Term1 into subterms of Term2 for every pair for which call(Goal, ST1, ST2) succeeds.Source
mapsubterms_var/3Recursively map sub terms of Term1 into subterms of Term2 for every pair for which call(Goal, ST1, ST2) succeeds.Source
same_functor/2True when Term1 and Term2 are terms that have the same functor (Name/Arity).Source
same_functor/3True when Term1 and Term2 are terms that have the same functor (Name/Arity).Source
same_functor/4True when Term1 and Term2 are terms that have the same functor (Name/Arity).Source
subsumes/2True if Generic is unified to Specific without changing Specific.Source
subsumes_chk/2True if Generic can be made equivalent to Specific without changing Specific.Source
term_factorized/3Is true when Skeleton is Term where all subterms that appear multiple times are replaced by a variable and Substitution is a list of Var=Value that provides the subterm at the location Var.Source
term_size/2True if Size is the size in cells occupied by Term on the global (term) stack.Source
term_subsumer/3General is the most specific term that is a generalisation of Special1 and Special2.Source
variant/2Same as SWI-Prolog Term1 =@= Term2.Source
thread.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.pl  -- Resource bounded thread managementShow source
threadutil.pl  -- Interactive thread utilitiesShow source
tty.pl  -- Terminal operationsShow 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.plShow source
utf8_codes/3DCG translating between a Unicode code-list and its UTF-8 encoded byte-string.Source
varnumbers.pl  -- Utilities for numbered termsShow source
wfs.plShow source
answer_residual/2True when Goal resolves to a tabled predicate and Residual is the residual goal associated with an answer for Goal.Source
call_delays/2True when Goal is true with Delays.Source
call_residual_program/2Call Goal and return the full residual program as a list of Clauses.Source
delays_residual_program/2Given a delay as returned by call_delays/2, produce a set of clauses the represents the complete residual program responsible for these delays, The program contains at least one loop through tnot/1 and is either inconsistent or has multiple models according to the stable model semantics.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.plShow 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
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.