Go to the previous, next section.

Summary of Built-In Predicates

@
Commits to any choices taken in the current predicate.

@
P and Q.

@
Not a built-in predicate; reserved syntax for grammar rules.

@
If P then Q else R, using first solution of P only.

@
If P then Q else false, using first solution of P only.

@
@
Updates the program with interpreted clauses from File and Files (not available in Runtime Systems).

@
Not a built-in predicate; reserved syntax for commands and declarations.

@
Not a built-in predicate; reserved syntax for queries.

@
Not a built-in predicate; reserved syntax for clauses.

@
P or Q.

@
The terms X and Y are unified.

@
@
The functor and arguments of the term Term comprise the list List.

@
X is numerically equal to Y.

@
The terms Term1 and Term2 are strictly identical.

@
X is not numerically equal to Y.

@
X is less than or equal to Y.

@
X is greater than Y.

@
X is greater than or equal to Y.

@
Executes the procedure call P.

@
Goal P is not provable.

@
The terms Term1 and Term2 are not strictly identical.

@
X is less than Y.

@
The term Term1 precedes or is identical to the term Term2 in the standard order.

@
The term Term1 follows the term Term2 in the standard order.

@
The term Term1 follows or is identical to the term Term2 in the standard order.

@
The term Term1 precedes the term Term2 in the standard order.

@
X and Y are either syntactically identical or syntactically non-unifiable.

@
Makes the predicate(s) specified by Preds undefined.

@
Makes the predicate specified by Atom/Arity undefined.

@
Aborts execution of the current directive (returns to C in recursive calls to Prolog from C).

@
AbsoluteName is the full pathname of RelativeName.

@
The argument ArgNo of the term Term is Arg.

@
@
Asserts clause Clause with unique identifier Ref.

@
@
Asserts Clause as first clause with unique identifier Ref.

@
@
Asserts Clause as last clause with unique identifier Ref.

@
@
The end of stream or end of line has been reached for Stream or from the current input stream.

@
@
The end of stream has been reached for Stream or from the current input stream.

@
X is currently instantiated to an atom.

@
@
The name of the atom Atom is the list of characters CharList.

@
X is currently instantiated to an atom or a number.

@
Bag is the bag of instances of Template such that Goal is satisfied (not just provable).

@
Not a built-in predicate; block declaration.

@
Delete from the blackboard Term stored under Key.

@
Get from the blackboard Term stored under Key.

@
Store the term Term under Key on the blackboard.

@
Replace the term OldTerm by the term NewTerm under Key on the blackboard.

@
Invokes a recursive top-level. (not available in Runtime Systems).

@
Grammar rules. S1 is connected by the terminal Terminal to S2.

@
@
Executes the procedure call Term in Module.

@
Executes the procedure call Goal. Any floundered goals and the variables they are blocked on occur as VarSet-Goal pairs in Residue.

@
X is currently instantiated to a compound term or an atom.

@
Count characters have been read from or written to the stream Stream.

@
@
@
There is an interpreted clause whose head is Head, whose body is Body, and whose unique identifier is Ref.

@
Closes stream Stream.

@
Op is the result of comparing the terms Term1 and Term2.

@
Compiles in-core the clauses in text file(s) Files (not available in Runtime Systems).

@
X is currently instantiated to a term of arity > 0.

@
Updates the program with interpreted clauses from file(s) Files (not available in Runtime Systems).

@
CopyOfTerm is an independent copy of Term.

@
Mutable is a new mutable term with current value Datum.

@
One of the currently defined atoms is Atom.

@
Stream is the current input stream.

@
There is a recorded item in the internal database whose key is KeyTerm, the name of which is KeyName.

@
Module is a module currently in the system.

@
Module is a module currently in the system, loaded from File (not available in Runtime Systems).

@
Atom Op is an operator type Type precedence Precedence.

@
Stream is the current output stream.

@
@
A user defined predicate is named Name, most general goal Head.

@
There is a stream Stream associated with the file AbsFileName and opened in mode Mode.

@
Switches on debugging (not available in Runtime Systems).

@
Displays debugging status information (not available in Runtime Systems).

@
The terms X and Y are different.

@
Displays the term Term on the standard output stream.

@
Not a built-in predicate; dynamic declaration.

@
Compiles or loads the file(s) Files if need be. (In Runtime Systems it is identical to load/1.)

@
Erases the clause or record whose unique identifier is Ref.

@
@
A hook predicate, Exception is an exception that traps to the debugger if it is switched on.

@
The term Term1 is a shorthand which expands to the term Term2.

@
@
False.

@
Compiles file-to-file the clauses in text file(s) Files (not available in Runtime Systems).

@
@
A hook predicate, telling how to expand Alias(File) file names.

@
Enables reporting of file errors.

@
@
A prefix of Bag is the list of instances of Template such that Goal is provable. The rest of Bag is Remainder or the empty list.

@
X is currently instantiated to a float.

@
@
Flushes the buffers associated with Stream.

@
@
Hook predicates, tell Prolog how to define Predicate to invoke CFunctionName.

@
A hook predicate, tells Prolog that foreign functions Functions are in file ObjectFile.

@
@
Writes Arguments according to Format on the stream Stream or on the current output stream.

@
Blocks Goal until nonvar(Var) holds.

@
The goal Goal is blocked on the variable Var.

@
@
The principal functor of the term Term has name Name and arity Arity.

@
Performs a garbage collection.

@
Enables garbage collection.

@
@
The next printing character from the stream Stream or from the current input stream is C.

@
@
The next character from the stream Stream or from the current input stream is C.

@
The current value of the mutable term Mutable is Datum.

@
@
A hook predicate. Defines an alternative goal to be called in place of a call to an unknown predicate.

@
X is currently free of unbound variables.

@
Halts Prolog. (returns to C in recursive calls to Prolog from C).

@
Halts Prolog immediately, returning Code.

@
Hookable, prints a help message (not available in Runtime Systems).

@
If P then Q else R, exploring all solutions of P.

@
Executes the procedure call Term.

@
Executes a list of user defined goals (not available in Runtime Systems).

@
Adds Goal to the list of goals executed by initialization/0 (not available in Runtime Systems).

@
Term is a most general instance of the record or clause uniquely identified by Ref.

@
X is currently instantiated to an integer.

@
Y is the value of the arithmetic expression X.

@
The list List1 sorted by key yields List2.

@
Sets leashing mode to Mode (not available in Runtime Systems).

@
The length of list List is Length.

@
@
A hook predicate, telling how to expand library(File) file names.

@
N is the number of lines read/written on stream Stream.

@
N is the number of characters read/written on the current line of Stream.

@
@
Lists the interpreted predicate(s) specified by Specs or all interpreted predicates in the type-in module. Any variables in the listed clauses are internally bound to ground terms before printing. If this causes any blocked goals to be executed, the behavior is undefined.

@
Loads fcompiled file(s) Files into Prolog (will not write any progress or error messages in Runtime Systems.)

@
Hookable, links object files ObjectFiles into Prolog.

@
Not a built-in predicate; meta_predicate declaration.

@
Not a built-in predicate; mode declaration.

@
Sets the type-in module to Module; See section Basic Concepts (not available in Runtime Systems).

@
Not a built-in predicate; multifile declaration.

@
Value is the current value of the Muse flag FlagName.

@
OldValue and NewValue are the old and new values of the Muse flag FlagName.

@
Display all Muse flag settings.

@
Synchronize for being leftmost in Muse.

@
@
Generate a Muse trace file for Goal.

@
@
The name of atom or number Const is the string CharList.

@
@
Outputs a new line on stream Stream or on the current output stream.

@
Switches off debugging (not available in Runtime Systems).

@
Disables reporting of file errors.

@
Disables garbage collection.

@
X is a non-variable.

@
Removes spy-points from the predicate(s) specified by Spec (not available in Runtime Systems).

@
Removes all spy-points (not available in Runtime Systems).

@
Switches off debugging (not available in Runtime Systems).

@
X is currently instantiated to a number.

@
@
The name of the number Number is the list of characters CharList.

@
Number the variables in the term Term from N to M-1.

@
Executes the procedure call ProtectedGoal. If during the execution raise_exception(Exception) is called, and Exception matches Pattern, the execution of ProtectedGoal abort, Pattern is unified with a copy of Exception and Handler is called.

@
Makes atom(s) Name an operator of type Type precedence Precedence.

@
Opens file FileName in mode Mode as stream Stream.

@
Opens an output stream to the null device.

@
True.

@
@
Not a built-in predicate; parallel declaration.

@
@
N is the character code of the next character peeked at from Stream or from the current input stream.

@
@
Grammar rules. The list List can be parsed as a phrase of type Phrase. The rest of the list is Remainder or empty.

@
@
A hook predicate, tells print/1 what to do.

@
@
Pretty prints Clause on the stream Stream or on the current output stream.

@
@
A hook predicate, tells print_message/2 what to do.

@
@
Head is the most general goal of a currently defined predicate that has the property Prop.

@
Generates interface code for ObjectFiles (not available in Runtime Systems).

@
@
Hookable, portrays or else writes the term Term on the stream Stream or on the current output stream.

@
Hookable, portrays or else writes Message of a given Severity on the standard error stream.

@
Data is the profiling data collected from the instrumented predicates defined in the file(s) Files with selection and resolution Selection and Resolution respectively (not available in Runtime Systems nor in Muse).

@
The profiling counters for the instrumented predicates in the file(s) Files are zeroed (not available in Runtime Systems nor in Muse).

@
Value is the current value of FlagName.

@
OldValue and NewValue are the old and new values of FlagName.

@
Value is the value of the compilation/loading context variable identified by Key.

@
Changes the prompt from Old to New.

@
Not a built-in predicate; public declaration.

@
@
The next character sent to the stream Stream or to the current output stream is C.

@
Causes abortion of a part of the execution tree scoped by the closest enclosing on_exception/3 invocation with its first argument matching Exception.

@
@
Reads the term Term from the stream Stream or from the current input stream.

@
@
Reads the term Term from the stream Stream or from the current input stream with extra Options.

@
Updates the program with interpreted clauses from file(s) Files (not available in Runtime Systems).

@
Makes the term Term the first record under key Key with unique identifier Ref.

@
The term Term is currently recorded under key Key with unique identifier Ref.

@
Makes the term Term the last record under key Key with unique identifier Ref.

@
Initializes Prolog, reconsulting `~/.sicstusrc' if it exists (returns to C in recursive calls to Prolog from C).

@
Succeeds repeatedly.

@
Tries to locate and load library files that export the specified predicates. Creates index files if necessary (not available in Runtime Systems).

@
Restores the state saved in file File (not available in Runtime Systems).

@
Erases repeatedly the next interpreted clause of form Clause.

@
Erases all clauses whose head matches Head.

@
@
Saves the current state of Prolog in file File; Return is 0 after a save and 1 after a restore (not available in Runtime Systems).

@
Saves the current state of the Prolog data base in file File (not available in Runtime Systems).

@
Makes file File the current input stream.

@
The current input stream is named File.

@
Sets the stream Stream to the byte offset Offset relative to Method, and NewLocation is the new byte offset from the beginning of the file after the operation.

@
Closes the current input stream.

@
@
Not a built-in predicate; sequential declaration.

@
Sets the current input stream to Stream.

@
Sets the current output stream to Stream.

@
Position is a term representing a new position of Stream, which is then set to the new position.

@
Set is the set of instances of Template such that Goal is satisfied (not just provable).

@
X is currently uninstantiated or atomic.

@
@
Skips characters from Stream or from the current input stream until after character C.

@
@
Skips characters from Stream or from the current input stream until the next LFD.

@
The list List1 sorted into order yields List2.

@
@
@
The predicate Pred is defined in the file File (not available in Runtime Systems.)

@
Sets spy-points on the predicate(s) specified by Spec (not available in Runtime Systems).

@
Sets conditional spy-point on the predicate for Goal (not available in Runtime Systems).

@
Outputs various execution statistics.

@
The execution statistics key Key has value Value.

@
@
StreamCode is an integer representing a pointer to the internal representation of Stream.

@
Sets/reads the interrupt handler connected to the stream Stream (not available in Muse).

@
Position is a term representing the current position of Stream.

@
Returns a list ReadStreams containing streams with pending characters. Only the streams in the list Streams are checked. TimeOut specifies a timeout on the form off or Sec:MicroSec (not available in Muse).

@
@
Outputs N spaces to the stream Stream or to the current output stream.

@
Makes file File the current output stream.

@
The current output stream is named File.

@
@
A hook predicate, tells expand_term/2 what to do.

@
Closes the current output stream.

@
Switches on debugging and start tracing immediately (not available in Runtime Systems).

@
Succeeds.

@
Flushes the standard output stream buffer.

@
The next printing character input from the standard input stream is C.

@
The next character input from the standard input stream is C.

@
Outputs a new line on the standard output stream.

@
The next character output to the standard output stream is C.

@
Skips characters from the standard input stream until after character C.

@
Outputs N spaces to the standard output stream.

@
The goal call(Term) is executed on backtracking (not available in Muse).

@
Changes action on undefined predicates from OldState to NewState (not available in Runtime Systems).

@
@
A hook predicate. Defines an alternative goal to be called in place of a call to an unknown predicate.

@
Updates the current value of the mutable term Mutable to become Datum.

@
Loads the module file(s) Files if necessary and import all public predicates. (In Runtime Systems, it can only load `.ql' files.)

@
Loads the module file File if necessary and imports the predicates in PredicateList. (In Runtime Systems, it can only load `.ql' files.)

@
@
Imports PredicateList from Module if it is instantiated and the module is currently in the system, otherwise behaves like use_module/2 plus unifies Module to the module defined by the file.

@
@
A hook predicate, tells help/0 what to do.

@
X is currently uninstantiated.

@
Displays introductory and/or system identification messages (not available in Runtime Systems).

@
Adds the atom Message to the list of introductory messages (not available in Runtime Systems).

@
Blocks Goal until the Condition is true.

@
@
Writes the term Term on the stream Stream or on the current output stream.

@
@
Writes Term on the stream Stream or on the current output stream so that it may be read back.

@
@
Writes the term Term on the stream Stream or on the current output stream with extra Options.

@
@
Writes the term Term on the stream Stream or on the current output stream, quoting names where necessary.

Go to the previous, next section.