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.pl  -- Extensible arithmeticShow source
assoc.pl  -- Binary associationsShow source
atom.pl  -- Operations on atomsShow source
backcomp.pl  -- Backward compatibilityShow source
base32.pl  -- Base32 encoding and decodingShow source
base64.plShow source
base64/2Equivalent to base64_encoded/3 using the options as(atom) and encoding(iso_latin_1).Source
base64/3Encode/decode list of character codes using base64.Source
base64_encoded/3General the base64 encoding and decoding.Source
base64_encoded/4Source
base64url/2Translates between plaintext and base64url encoded atom or string.Source
base64url/3Encode/decode list of character codes using Base64URL.Source
broadcast.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.pl  -- Co-Logic ProgrammingShow source
csv.plShow source
csv/3Prolog DCG to `read/write' CSV data.Source
csv/4Prolog DCG to `read/write' CSV data.Source
csv_options/2Compiled is the compiled representation of the CSV processing options as they may be passed into csv//2, etc.Source
csv_read_file/2Read a CSV file into a list of rows.Source
csv_read_file/3Read a CSV file into a list of rows.Source
csv_read_file_row/3True when Row is a row in File.Source
csv_read_row/3Read the next CSV record from Stream and unify the result with Row.Source
csv_read_stream/3Read CSV data from Stream.Source
csv_write_file/2Write a list of Prolog terms to a CSV file.Source
csv_write_file/3Write a list of Prolog terms to a CSV file.Source
csv_write_stream/3Write the rows in Data to Stream.Source
ctypes.pl  -- Character code classificationShow source
date.pl  -- Process dates and timesShow source
debug.pl  -- Print debug messages and test assertionsShow source
dialect.pl  -- Support multiple Prolog dialectsShow source
dicts.plShow source
dict_fill/4Implementation for the dicts_to_same_keys/3 OnEmpty closure that fills new cells with a copy of ValueIn.Source
dict_keys/2True when Keys is an ordered set of the keys appearing in Dict.Source
dict_size/2True when KeyCount is the number of keys in Dict.Source
dicts_join/3Join dicts in Dicts that have the same value for Key, provided they do not have conflicting values on other keys.Source
dicts_join/4Join two lists of dicts (Dicts1 and Dicts2) on Key.Source
dicts_same_keys/2True if List is a list of dicts that all have the same keys and Keys is an ordered set of these keys.Source
dicts_same_tag/2True when List is a list of dicts that all have the tag Tag.Source
dicts_slice/3DictsOut is a list of Dicts only containing values for Keys.Source
dicts_to_compounds/4True when Dicts and Compounds are lists of the same length and each element of Compounds is a compound term whose arguments represent the values associated with the corresponding keys in Keys.Source
dicts_to_same_keys/3DictsOut is a copy of DictsIn, where each dict contains all keys appearing in all dicts of DictsIn.Source
mapdict/2True when all dicts have the same set of keys and call(Goal, Key, V1, ...) is true for all keys in the dicts.Source
mapdict/3True when all dicts have the same set of keys and call(Goal, Key, V1, ...) is true for all keys in the dicts.Source
mapdict/4True when all dicts have the same set of keys and call(Goal, Key, V1, ...) is true for all keys in the dicts.Source
dif.pl  -- The dif/2 constraintShow source
edinburgh.pl  -- Some traditional Edinburgh predicatesShow source
edit.plShow source
edit/0Edit associated or script file.Source
edit/1Edit indicated object.Source
edit_command/2This predicate should specify the shell-command called to invoke the user's editor.Source
locate/2Locate object from the specified location.Source
locate/3Source
select_location/3Source
error.plShow source
exceptions.pl  -- Exception classificationShow source
explain.pl  -- Describe Prolog TermsShow source
fastrw.plShow source
fast_read/1The next term is read from current standard input and is unified with Term.Source
fast_write/1Output Term in a way that fast_read/1 and fast_read/2 will be able to read it back.Source
fast_write_to_string/3Perform a fast-write to the difference-slist String\Tail.Source
files.plShow 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.plShow source
add_to_heap/4Adds Key with priority Priority to Heap0, constructing a new heap in Heap.Source
delete_from_heap/4Deletes Key from Heap0, leaving its priority in Priority and the resulting data structure in Heap.Source
empty_heap/1True if Heap is an empty heap.Source
get_from_heap/4Retrieves the minimum-priority pair Priority-Key from Heap0.Source
heap_size/2Determines the number of elements in Heap.Source
heap_to_list/2Constructs a list List of Priority-Element terms, ordered by (ascending) priority.Source
is_heap/1Returns true if X is a heap.Source
list_to_heap/2If List is a list of Priority-Element terms, constructs a heap out of List.Source
merge_heaps/3Merge the two heaps Heap0 and Heap1 in Heap.Source
min_of_heap/3Unifies Key with the minimum-priority element of Heap and Priority with its priority value.Source
min_of_heap/5Gets the two minimum-priority elements from Heap.Source
singleton_heap/3True if Heap is a heap with the single element Priority-Key.Source
help.pl  -- Text based manualShow source
increval.pl  -- Incremental dynamic predicate modificationShow source
intercept.plShow source
intercept/3Run Goal as call/1.Source
intercept/4Similar to intercept/3, but the copy of Handler is called as call(Copy,Arg), which allows passing large context arguments or arguments subject to unification or destructive assignment.Source
intercept_all/4True when List contains all instances of Template that have been sent using send_signal/1 where the argument unifies with Ball.Source
nb_intercept_all/4As intercept_all/4, but backtracing inside Goal does not reset List.Source
send_signal/1If this predicate is called from a sub-goal of intercept/3, execute the associated Handler of the intercept/3 environment.Source
send_silent_signal/1As send_signal/1, but succeed silently if there is no matching intercept environment.Source
iostream.pl  -- Utilities to deal with streamsShow source
close_any/1Execute the Close closure returned by open_any/5.Source
open_any/5Establish a stream from Specification that should be closed using Close, which can either be called or passed to close_any/1.Source
lazy_lists.pl  -- Lazy list handlingShow source
listing.pl  -- List programs and pretty print clausesShow source
lists.pl  -- List ManipulationShow source
macros.plShow source
expand_macros/5Perform macro expansion on TermIn with layout PosIn to produce TermOut with layout PosOut.Source
include_macros/3Include macros from another module.Source
macro_position/1True when Position is the position of the macro.Source
main.pl  -- Provide entry point for scriptsShow source
make.plShow source
make/0Reload all source files that have been changed since they were loaded.Source
make_reload_file/1Reload file into the proper module.Source
modules.pl  -- Module utility predicatesShow source
nb_set.pl  -- Non-backtrackable setsShow source
occurs.pl  -- Finding and counting sub-termsShow source
operators.pl  -- Manage operatorsShow 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.pl  -- Ordered set manipulationShow source
oset.plShow source
oset_addel/3Ordered set element addition.Source
oset_delel/3Ordered set element deletion.Source
oset_diff/3Ordered set difference.Source
oset_dint/2Distributed intersection.Source
oset_dunion/2Distributed union.Source
oset_int/3ordered set intersection.Source
oset_is/1check that OSet in correct format (standard order).Source
oset_power/2True when PSet is the powerset of Set.Source
oset_union/3Union is the union of OSet1 and OSet2.Source
pairs.pl  -- Operations on key-value listsShow source
persistency.pl  -- Provide persistent dynamic predicatesShow source
pio.plShow source
portray_text.pl  -- Portray textShow source
pprint.pl  -- Pretty Print Prolog termsShow 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.pl  -- Utilities for reasoning about codeShow source
prolog_codewalk.plShow source
prolog_program_clause/2True when ClauseRef is a reference for clause in the program.Source
prolog_walk_code/1Walk over all loaded (user) Prolog code.Source
subterm_pos/5True when SubTerm is a sub term of Term, compared using Cmp, TermPosition describes the term layout of Term and SubTermPos describes the term layout of SubTerm.Source
prolog_colour.plShow source
prolog_colourise_query/3Colourise a query, to be executed in the context of SourceId.Source
prolog_colourise_stream/3Determine colour fragments for the data on Stream.Source
prolog_colourise_stream/4Determine colour fragments for the data on Stream.Source
prolog_colourise_term/4Colourise the next term on Stream.Source
syntax_colour/2True when a range classified Class must be coloured using Attributes.Source
vararg_goal_classification/3Multifile hookable classification for vararg predicates.Source
prolog_config.plShow source
prolog_config/2Get information on the configuration of the current Prolog system.Source
prolog_dump_runtime_variables/0Dump the current configuration in shell format.Source
prolog_coverage.pl  -- Coverage analysis toolShow source
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.pl  -- Analyse format specificationsShow source
prolog_history.plShow source
prolog_history/1Execute Action on the history.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.plShow source
profile/1Run once(Goal) under the execution profiler.Source
profile/2Run once(Goal) under the execution profiler.Source
profile_data/1Gather all relevant data from profiler.Source
profile_procedure_data/2Collect data for Pred.Source
show_profile/1Display last collected profiling data.Source
prolog_source.pl  -- Examine Prolog source-filesShow source
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_xref.plShow source
called_by/2If this succeeds, the cross-referencer assumes Goal may call any of the goals in ListOfCalled.Source
called_by/4True when Called is a list of callable terms called from Goal, handled by the predicate Module:Goal and executed in the context of the module Context.Source
hook/1True if Goal is a hook that is called spontaneously (e.g., from foreign code).Source
meta_goal/2Define meta-predicates.Source
xref_called/3True when By is called from Called in Source.Source
xref_called/4True when By is called from Called in Source.Source
xref_called/5True when By is called from Called in Source.Source
xref_clean/1Reset the database for the given source.Source
xref_comment/3Is true when Source has a section comment with Title and Comment.Source
xref_comment/4Is true when Head in Source has the given PlDoc comment.Source
xref_current_source/1Check what sources have been analysed.Source
xref_defined/3Test if Goal is accessible in Source.Source
xref_definition_line/2If the 3th argument of xref_defined contains line info, return this in Line.Source
xref_done/2Cross-reference executed at Time.Source
xref_exported/2True when Source exports Head.Source
xref_hook/1Definition of known hooks.Source
xref_meta/2True when Called is a list of terms called from Head.Source
xref_meta/3True when Head calls Called in Source.Source
xref_mode/3Is true when Source provides a predicate with Mode and determinism.Source
xref_module/2True if Module is defined in Source.Source
xref_op/2Give the operators active inside the module.Source
xref_option/2True when Source was processed using Option.Source
xref_prolog_flag/4True when Flag is set to Value at Line in Source.Source
xref_public_list/3Find meta-information about File.Source
xref_public_list/4Find meta-information about File.Source
xref_public_list/6Find meta-information about File.Source
xref_public_list/7Find meta-information about File.Source
xref_source/1Generate the cross-reference data for Source if not already done and the source is not modified.Source
xref_source/2Generate the cross-reference data for Source if not already done and the source is not modified.Source
xref_source_file/3Find named source file from Spec, relative to Src.Source
xref_source_file/4Find named source file from Spec, relative to Src.Source
xref_uses_file/3True when Source tries to load a file using Spec.Source
pure_input.pl  -- Pure Input from files and streamsShow source
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.plShow source
getrand/1Query/set the state of the random generator.Source
maybe/0Succeed/fail with equal probability (variant of maybe/1).Source
maybe/1Succeed with probability P, fail with probability 1-P.Source
maybe/2Succeed with probability K/N (variant of maybe/1).Source
random/1Binds R to a new random float in the open interval (0.0,1.0).Source
random/3Generate a random integer or float in a range.Source
random_between/3Binds R to a random integer in [L,U] (i.e., including both L and U).Source
random_member/2X is a random member of List.Source
random_numlist/4Unify List with an ascending list of integers between L and U (inclusive).Source
random_perm2/4Does X=A,Y=B or X=B,Y=A with equal probability.Source
random_permutation/2Permutation is a random permutation of List.Source
random_select/3Randomly select or insert an element.Source
random_subseq/3Selects a random subsequence Subseq of List, with Complement containing all elements of List that were not selected.Source
randseq/3S is a list of K unique random integers in the range 1..N.Source
randset/3S is a sorted list of K unique random integers in the range 1..N.Source
setrand/1Query/set the state of the random generator.Source
rbtrees.pl  -- Red black treesShow source
readln.plShow source
readutil.pl  -- Read utilitiesShow source
record.pl  -- Access compound arguments by nameShow source
rwlocks.pl  -- Read/write locksShow source
sandbox.plShow 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.pl  -- Get information about resource usageShow source
streams.plShow source
with_output_to/3Run Goal and once/1 while capturing all output to all streams (current_output, user_output and user_error) in the string Output.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.pl  -- System utilitiesShow source
tables.pl  -- XSB interface to tablesShow source
terms.pl  -- Term manipulationShow source
thread.plShow source
call_in_thread/2Run Goal as an interrupt in the context of Thread.Source
concurrent/3Run Goals in parallel using N threads.Source
concurrent_and/2Concurrent version of (Generator,Test).Source
concurrent_and/3Concurrent version of (Generator,Test).Source
concurrent_forall/2True when Action is true for all solutions of Generate.Source
concurrent_forall/3True when Action is true for all solutions of Generate.Source
concurrent_maplist/2Concurrent version of maplist/2.Source
concurrent_maplist/3Concurrent version of maplist/2.Source
concurrent_maplist/4Concurrent version of maplist/2.Source
first_solution/3Try alternative solvers concurrently, returning the first answer.Source
thread_pool.pl  -- Resource bounded thread managementShow source
threadutil.pl  -- Interactive thread utilitiesShow source
tty.plShow source
menu/3Show a menu.Source
tty_clear/0Clear the display.Source
tty_flash/0Give visual signal if possible, otherwise beep.Source
ugraphs.pl  -- Graph manipulation libraryShow source
url.pl  -- Analysing and constructing URLShow source
utf8.pl  -- UTF-8 encoding/decoding on lists of character codes.Show source
varnumbers.plShow source
max_var_number/3True when Max is the max of Start and the highest numbered $VAR(N) term.Source
numbervars/1Number variables in Term using $VAR(N).Source
varnumbers/2Inverse of numbervars/1.Source
varnumbers/3Inverse of numbervars/3.Source
varnumbers_names/3If Term is a term with numbered and named variables using the reserved term '$VAR'(X), Copy is a copy of Term where each '$VAR'(X) is consistently replaced by a fresh variable and Bindings is a list X = Var, relating the X terms with the variable it is mapped to.Source
wfs.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.pl  -- Conditional coroutiningShow source
writef.pl  -- Old-style formatted writeShow source
www_browser.pl  -- Open a URL in the users browserShow source
yall.pl  -- Lambda expressionsShow source
zip.plShow source
with_zipper/2Run Goal while holding ownership over Zipper.Source
zip_close/1Close a zipper.Source
zip_close/2Close a zipper.Source
zip_open/4Create a Zipper, providing access to File.Source
zipper_file_info/3Obtain information about the current zip entry.Source
zipper_goto/2Seek Zipper to a specified entry.
zipper_members/2True when Members is the list of file names in the Zipper.Source
zipper_open_current/3Open the current entry as an input stream.