Home Contents Index Summary Previous Next

E.1 Predicates

The predicate summary is used by the Prolog predicate apropos/1 to suggest predicates from a keyword.

!/0Cut (discard choicepoints)
!/1Cut block. See block/3
,/2Conjunction of goals
->/2If-then-else
*->/2Soft-cut
./2Consult. Also list constructor
;/2Disjunction of goals. Same as |/2
</2Arithmetic smaller
=/2Unification
=../2``Univ.'' Term to list conversion
=:=/2Arithmetic equal
=</2Arithmetic smaller or equal
==/2Identical
=@=/2Structural identical
=\=/2Arithmetic not equal
>/2Arithmetic larger
>=/2Arithmetic larger or equal
@</2Standard order smaller
@=</2Standard order smaller or equal
@>/2Standard order larger
@>=/2Standard order larger or equal
\+/1Negation by failure. Same as not/1
\=/2Not unifyable
\==/2Not identical
\=@=/2Not structural identical
^/2Existential quantification (bagof/3, setof/3)
|/2Disjunction of goals. Same as ;/2
abolish/1Remove predicate definition from the database
abolish/2Remove predicate definition from the database
abort/0Abort execution, return to top level
absolute_file_name/2Get absolute path name
absolute_file_name/3Get absolute path name with options
access_file/2Check access permissions of a file
add_import_module/3Add module to the auto-import list
append/1Append to a file
apply/2Call goal with additional arguments
apropos/1library(online_help) Search manual
arg/3Access argument of a term
arithmetic_function/1Register an evaluable function
assert/1Add a clause to the database
assert/2Add a clause to the database, give reference
asserta/1Add a clause to the database (first)
asserta/2Add a clause to the database (first)
assertz/1Add a clause to the database (last)
assertz/2Add a clause to the database (last)
assume/1Make assertions about your program
attach_console/0Attach I/O console to thread
at_end_of_stream/0Test for end of file on input
at_end_of_stream/1Test for end of file on stream
at_halt/1Register goal to run at halt/1
at_initialization/1Register goal to run at start-up
atom/1Type check for an atom
atom_chars/2Convert between atom and list of characters
atom_codes/2Convert between atom and list of characters codes
atom_length/2Determine length of an atom
atom_prefix/2Test for start of atom
atom_number/2Convert between atom and number
atom_to_term/3Convert between atom and term
atomic/1Type check for primitive
autoload/0Autoload all predicates now
bagof/3Find all solutions to a goal
between/3Integer range checking/generating
block/3Start a block (`catch'/`throw')
break/0Start interactive toplevel
call/1Call a goal
call/[2..]Call with additional arguments
call_cleanup/3Guard a goal with a cleaup-handler
call_cleanup/2Guard a goal with a cleaup-handler
call_shared_object_function/2UNIX: Call C-function in shared (.so) file
call_with_depth_limit/3Prove goal with bounded depth
callable/1Test for atom or compound term
catch/3Call goal, watching for exceptions
char_code/2Convert between character and character code
char_conversion/2Provide mapping of input characters
char_type/2Classify characters
character_count/2Get character index on a stream
chdir/1Compatibility: change working directory
checklist/2Invoke goal on all members of a list
clause/2Get clauses of a predicate
clause/3Get clauses of a predicate
clause_property/2Get properties of a clause
close/1Close stream
close/2Close stream (forced)
close_dde_conversation/1Win32: Close DDE channel
close_shared_object/1UNIX: Close shared library (.so file)
compare/3Compare, using a predicate to determine the order
compile_predicates/1Compile dynamoc code to static
compiling/0Is this a compilation run?
compound/1Test for compound term
atom_concat/3Append two atoms
code_type/2Classify a character-code
concat_atom/2Append a list of atoms
concat_atom/3Append a list of atoms with separator
consult/1Read (compile) a Prolog source file
context_module/1Get context module of current goal
convert_time/8Break time stamp into fields
convert_time/2Convert time stamp to string
copy_stream_data/2Copy all data from stream to stream
copy_stream_data/3Copy n bytes from stream to stream
copy_term/2Make a copy of a term
current_arithmetic_function/1Examine evaluable functions
current_atom/1Examine existing atoms
current_char_conversion/2Query input character mapping
current_flag/1Examine existing flags
current_foreign_library/2library(shlib) Examine loaded shared libraries (.so files)
current_format_predicate/2Enumerate user-defined format codes
current_functor/2Examine existing name/arity pairs
current_input/1Get current input stream
current_key/1Examine existing database keys
current_module/1Examine existing modules
current_module/2Examine existing modules
current_mutex/3Examine existing mutexes
current_op/3Examine current operator declarations
current_output/1Get the current output stream
current_predicate/1Examine existing predicates (ISO)
current_predicate/2Examine existing predicates
current_signal/3Current software signal mapping
current_stream/3Examine open streams
current_thread/2Examine Prolog threads
dde_current_connection/2Win32: Examine open DDE connections
dde_current_service/2Win32: Examine DDE services provided
dde_execute/2Win32: Execute command on DDE server
dde_register_service/2Win32: Become a DDE server
dde_request/3Win32: Make a DDE request
dde_poke/3Win32: POKE operation on DDE server
dde_unregister_service/1Win32: Terminate a DDE service
debug/0Test for debugging mode
debug/1Select topic for debugging
debug/3Print debugging message on topic
debug_control_hook/1(hook) Extend spy/1, etc.
debugging/0Show debugger status
debugging/1Test where we are debugging topic
default_module/2Get the default modules of a module
delete_directory/1Remove a folder from the file system
delete_file/1Remove a file from the file system
delete_import_module/2Remove module from import list
deterministic/1Test deterministicy of current clause
discontiguous/1Indicate distributed definition of a predicate
downcase_atom/2Convert atom to lower-case
dwim_match/2Atoms match in ``Do What I Mean'' sense
dwim_match/3Atoms match in ``Do What I Mean'' sense
dwim_predicate/2Find predicate in ``Do What I Mean'' sense
dynamic/1Indicate predicate definition may change
edit/0Edit current script- or associated file
edit/1Edit a file, predicate, module (extensible)
ensure_loaded/1Consult a file if that has not yet been done
erase/1Erase a database record or clause
eval_license/0Evaluate licenses of loaded modules
exception/3(hook) Handle runtime exceptions
exists_directory/1Check existence of directory
exists_file/1Check existence of file
exit/2Exit from named block. See block/3
expand_answer/2Expand answer of query
expand_file_name/2Wildcard expansion of file names
expand_file_search_path/2Wildcard expansion of file paths
expand_goal/2Compiler: expand goal in clause-body
expand_query/4Expanded entered query
expand_term/2Compiler: expand read term into clause(s)
explain/1library(explain) Explain argument
explain/2library(explain) 2nd argument is explanation of first
export/1Export a predicate from a module
export_list/2List of public predicates of a module
fail/0Always false
fail/1Immediately fail named block. See block/3
current_prolog_flag/2Get system configuration parameters
file_base_name/2Get file part of path
file_directory_name/2Get directory part of path
file_name_extension/3Add, remove or test file extensions
file_search_path/2Define path-aliases for locating files
fileerrors/2Do/Don't warn on file errors
findall/3Find all solutions to a goal
flag/3Simple global variable system
float/1Type check for a floating point number
flush_output/0Output pending characters on current stream
flush_output/1Output pending characters on specified stream
forall/2Prove goal for all solutions of another goal
format/1Formatted output
format/2Formatted output with arguments
format/3Formatted output on a stream
format_predicate/2Program format/[1,2]
free_variables/2Find unbound variables in a term
functor/3Get name and arity of a term or construct a term
garbage_collect/0Invoke the garbage collector
garbage_collect_atoms/0Invoke the atom garbage collector
gensym/2Generate unique atoms from a base
get/1Read first non-blank character
get/2Read first non-blank character from a stream
get0/1Read next character
get0/2Read next character from a stream
get_byte/1Read next byte (ISO)
get_byte/2Read next byte from a stream (ISO)
get_char/1Read next character as an atom (ISO)
get_char/2Read next character from a stream (ISO)
get_code/1Read next character (ISO)
get_code/2Read next character from a stream (ISO)
get_single_char/1Read next character from the terminal
get_time/1Get current time
getenv/2Get shell environment variable
goal_expansion/2Hook for macro-expanding goals
ground/1Verify term holds no unbound variables
guitracer/0Install hooks for the graphical debugger
halt/0Exit from Prolog
halt/1Exit from Prolog with status
hash_term/2Hash-value of ground term
help/0Give help on help
help/1Give help on predicates and show parts of manual
help_hook/1(hook) User-hook in the help-system
ignore/1Call the argument, but always succeed
import/1Import a predicate from a module
import_module/2Query import modules
include/1Include a file with declarations
index/1Change clause indexing
initialization/1Initialization directive
int_to_atom/2Convert from integer to atom
int_to_atom/3Convert from integer to atom (non-decimal)
integer/1Type check for integer
interactor/0Start new thread with console and toplevel
is/2Evaluate arithmetic expression
is_absolute_file_name/1True if arg defines an absolute path
is_list/1Type check for a list
keysort/2Sort, using a key
last/2Last element of a list
leash/1Change ports visited by the tracer
length/2Length of a list
library_directory/1(hook) Directories holding Prolog libraries
license/1Define license for current file
license/2Define license for named module
limit_stack/2Limit stack expansion
line_count/2Line number on stream
line_position/2Character position in line on stream
list_debug_topics/0List registered topics for debugging
listing/0List program in current module
listing/1List predicate
load_files/2Load source files with options
load_foreign_library/1library(shlib) Load shared library (.so file)
load_foreign_library/2library(shlib) Load shared library (.so file)
make/0Reconsult all changed source files
make_directory/1Create a folder on the file system
make_fat_filemap/1Win32: Create file containing non-FAT filenames
make_library_index/1Create autoload file INDEX.pl
make_library_index/2Create selective autoload file INDEX.pl
maplist/3Transform all elements of a list
memberchk/2Deterministic member/2
merge/3Merge two sorted lists
merge_set/3Merge two sorted sets
message_hook/3Intercept print_message/2
message_queue_create/1Create queue for thread communication
message_queue_destroy/1Destroy queue for thread communication
message_to_string/2Translate message-term to string
meta_predicate/1Quintus compatibility
module/1Query/set current type-in module
module/2Declare a module
module_transparent/1Indicate module based meta predicate
msort/2Sort, do not remove duplicates
multifile/1Indicate distributed definition of predicate
mutex_create/1Create a thread-synchronisation device
mutex_destroy/1Destroy a mutex
mutex_lock/1Become owner of a mutex
mutex_statistics/0Print statistics on mutex usage
mutex_trylock/1Become owner of a mutex (non-blocking)
mutex_unlock/1Release ownership of mutex
mutex_unlock_all/0Release ownership of all mutexes
name/2Convert between atom and list of character codes
nl/0Generate a newline
nl/1Generate a newline on a stream
nodebug/0Disable debugging
nodebug/1Disable debug-topic
noguitracer/0Disable the graphical debugger
nonvar/1Type check for bound term
noprofile/1Hide (meta) predicate for the profiler
noprotocol/0Disable logging of user interaction
nospy/1Remove spy point
nospyall/0Remove all spy points
not/1Negation by failure (argument not provable). Same as \+/1
notrace/0Stop tracing
notrace/1Do not debug argument goal
nth_clause/3N-th clause of a predicate
number/1Type check for integer or float
number_chars/2Convert between number and one-char atoms
number_codes/2Convert between number and character codes
numbervars/3Number unbound variables of a term
numbervars/4Number unbound variables of a term
on_signal/3Handle a software signal
once/1Call a goal deterministically
op/3Declare an operator
open/3Open a file (creating a stream)
open/4Open a file (creating a stream)
open_dde_conversation/3Win32: Open DDE channel
open_null_stream/1Open a stream to discard output
open_resource/3Open a program resource as a stream
open_shared_object/2UNIX: Open shared library (.so file)
open_shared_object/3UNIX: Open shared library (.so file)
pce_dispatch/1Run XPCE GUI in seperate thread
pce_call/1Run goal in XPCE GUI thread
peek_byte/1Read byte without removing
peek_byte/2Read byte without removing
peek_char/1Read character without removing
peek_char/2Read character without removing
peek_code/1Read character-code without removing
peek_code/2Read character-code without removing
phrase/2Activate grammar-rule set
phrase/3Activate grammar-rule set (returning rest)
please/3Query/change environment parameters
plus/3Logical integer addition
portray/1(hook) Modify behaviour of print/1
portray_clause/1Pretty print a clause
portray_clause/2Pretty print a clause to a stream
predicate_property/2Query predicate attributes
predsort/3Sort, using a predicate to determine the order
preprocessor/2Install a preprocessor before the compiler
print/1Print a term
print/2Print a term on a stream
print_message/2Print message from (exception) term
print_message_lines/3Print message to stream
profile/1Obtain execution statistics
profile/3Obtain execution statistics
profile_count/3Obtain profile results on a predicate
profiler/2Obtain/change status of the profiler
prolog/0Run interactive toplevel
prolog_choice_attribute/3Examine the choice-point stack
prolog_current_frame/1Reference to goal's environment stack
prolog_edit:locate/2Locate targets for edit/1
prolog_edit:locate/3Locate targets for edit/1
prolog_edit:edit_source/1Call editor for edit/1
prolog_edit:edit_command/2Specify editor activation
prolog_edit:load/0Load edit/1 extensions
prolog_file_type/2Define meaning of file extension
prolog_frame_attribute/3Obtain information on a goal environment
prolog_ide/1Program access to the development enviroment
prolog_list_goal/1(hook) Intercept tracer 'L' command
prolog_load_context/2Context information for directives
prolog_load_file/2(hook) Program load_files/2
prolog_skip_level/2Indicate deepest recursion to trace
prolog_to_os_filename/2Convert between Prolog and OS filenames
prolog_trace_interception/4library(user) Intercept the Prolog tracer
prompt1/1Change prompt for 1 line
prompt/2Change the prompt used by read/1
protocol/1Make a log of the user interaction
protocola/1Append log of the user interaction to file
protocolling/1On what file is user interaction logged
put/1Write a character
put/2Write a character on a stream
put_byte/1Write a byte
put_byte/2Write a byte on a stream
put_char/1Write a character
put_char/2Write a character on a stream
put_code/1Write a character-code
put_code/2Write a character-code on a stream
qcompile/1Compile source to Quick Load File
qsave_program/1Create runtime application
qsave_program/2Create runtime application
read/1Read Prolog term
read/2Read Prolog term from stream
read_clause/1Read clause
read_clause/2Read clause from stream
read_history/6Read using history substitution
read_link/3Read a symbolic link
read_term/2Read term with options
read_term/3Read term with options from stream
recorda/2Record term in the database (first)
recorda/3Record term in the database (first)
recorded/2Obtain term from the database
recorded/3Obtain term from the database
recordz/2Record term in the database (last)
recordz/3Record term in the database (last)
redefine_system_predicate/1Abolish system definition
reload_library_index/0Force reloading the autoload index
rename_file/2Change name of file
repeat/0Succeed, leaving infinite backtrack points
require/1This file requires these predicates
reset_profiler/0Clear statistics obtained by the profiler
resource/3Declare a program resource
retract/1Remove clause from the database
retractall/1Remove unifying clauses from the database
same_file/2Succeeds if arguments refer to same file
see/1Change the current input stream
seeing/1Query the current input stream
seek/4Modify the current position in a stream
seen/0Close the current input stream
set_input/1Set current input stream from a stream
set_output/1Set current output stream from a stream
set_prolog_flag/2Define a system feature
set_stream/2Set stream attribute
set_stream_position/2Seek stream to position
set_tty/2Set `tty' stream
setarg/3Destructive assignment on term
setenv/2Set shell environment variable
setof/3Find all unique solutions to a goal
sformat/2Format on a string
sformat/3Format on a string
shell/0Execute interactive subshell
shell/1Execute OS command
shell/2Execute OS command
show_profile/1Show results of the profiler
show_profile/2Show results of the profiler
size_file/2Get size of a file in characters
skip/1Skip to character in current input
skip/2Skip to character on stream
rl_add_history/1Add line to readline(3) history
rl_read_init_file/1Read readline(3) init file
sleep/1Suspend execution for specified time
sort/2Sort elements in a list
source_file/1Examine currently loaded source files
source_file/2Obtain source file of predicate
source_location/2Location of last read term
spy/1Force tracer on specified predicate
stack_parameter/4Some systems: Query/Set runtime stack parameter
statistics/0Show execution statistics
statistics/2Obtain collected statistics
stream_property/2Get stream properties
string/1Type check for string
string_concat/3atom_concat/3 for strings
string_length/2Determine length of a string
string_to_atom/2Conversion between string and atom
string_to_list/2Conversion between string and list of character codes
style_check/1Change level of warnings
sub_atom/5Take a substring from an atom
sublist/3Determine elements that meet condition
sub_string/5Take a substring from a string
succ/2Logical integer successor relation
swritef/2Formatted write on a string
swritef/3Formatted write on a string
tab/1Output number of spaces
tab/2Output number of spaces on a stream
tell/1Change current output stream
telling/1Query current output stream
term_expansion/2(hook) Convert term before compilation
term_to_atom/2Convert between term and atom
thread_at_exit/1Register goal to be called at exit
thread_create/3Create a new Prolog task
thread_detach/1Make thread cleanup after completion
thread_exit/1Terminate Prolog task with value
thread_get_message/1Wait for message
thread_get_message/2Wait for message in a queue
thread_join/2Wait for Prolog task-completion
thread_local/1Declare thread-specific clauses for a predicate
thread_peek_message/1Test for message
thread_peek_message/2Test for message in a queue
thread_self/1Get identifier of current thread
thread_send_message/2Send message to another thread
thread_setconcurrency/2Number of active threads
thread_signal/2Execute goal in another thread
thread_statistics/3Get statistics of another thread
threads/0List running threads
throw/1Raise an exception (see catch/3)
time/1Determine time needed to execute goal
time_file/2Get last modification time of file
tmp_file/2Create a temporary filename
told/0Close current output
trace/0Start the tracer
trace/1Set trace-point on predicate
trace/2Set/Clear trace-point on ports
tracing/0Query status of the tracer
trim_stacks/0Release unused memory resources
true/0Succeed
tty_get_capability/3Get terminal parameter
tty_goto/2Goto position on screen
tty_put/2Write control string to terminal
tty_size/2Get row/column size of the terminal
ttyflush/0Flush output on terminal
unify_with_occurs_check/2Logically sound unification
unix/1OS interaction
unknown/2Trap undefined predicates
unload_foreign_library/1library(shlib) Detach shared library (.so file)
unsetenv/1Delete shell environment variable
upcase_atom/2Convert atom to upper-case
use_module/1Import a module
use_module/2Import predicates from a module
var/1Type check for unbound variable
visible/1Ports that are visible in the tracer
volatile/1Predicates that are not saved
wait_for_input/3Wait for input with optional timeout
wildcard_match/2Csh(1) style wildcard match
win_exec/2Win32: spawn Windows task
win_has_menu/0Win32: true if console menu is available
win_insert_menu/2plwin.exe: add menu
win_insert_menu_item/4plwin.exe: add item to menu
win_shell/2Win32: open document through Shell
win_registry_get_value/3Win32: get registry value
win_window_pos/1Win32: change size and position of window
window_title/2Win32: change title of window
with_mutex/2Run goal while holding mutex
working_directory/2Query/change CWD
write/1Write term
write/2Write term to stream
writeln/1Write term, followed by a newline
write_canonical/1Write a term with quotes, ignore operators
write_canonical/2Write a term with quotes, ignore operators on a stream
write_term/2Write term with options
write_term/3Write term with options to stream
writef/1Formatted write
writef/2Formatted write on stream
writeq/1Write term, insert quotes
writeq/2Write term, insert quotes on stream