Prolog/Predicati built-in

Wikibooks, manuali e libri di testo liberi.
CopertinaProlog/Copertina
  1. IntroduzioneProlog/Introduzione
BasiProlog/Basi
  1. BasiProlog/Primi passi
  2. RegoleProlog/Basi
  3. Regole ricorsiveProlog/Basi
  4. VariabiliProlog/Basi
  5. ListeProlog/Basi
  6. Matematica, Funzioni ed UguaglianzaProlog/Basi
  7. Mettere il tutto assiemeProlog/Basi
  8. Risoluzione di un rompicapo logicoProlog/Basi
ProgrammazioneProlog/Programmazione
  1. Tagli e NegazioneProlog/Programmazione
  2. Leggere e scrivere il codiceProlog/Programmazione
  3. Liste di differenzaProlog/Programmazione
  4. Grammatiche a clausole finiteProlog/Programmazione
  5. Motori di inferenzaProlog/Programmazione
Argomenti avanzatiProlog/Argomenti avanzati
  1. Mappe associativeProlog/Argomenti avanzati
  2. Tecniche di ricercaProlog/Argomenti avanzati
  3. OrdinamentoProlog/Argomenti avanzati
  4. Grafica: XPCEProlog/Argomenti avanzati
Predicati built-inProlog/Predicati built-in
  1. Predicati built-inProlog/Predicati built-in
  2. Funzioni ricorsiveProlog/Funzioni ricorsive
  1. Termini di collaudoProlog/Predicati built-in/Termini di collaudo
  2. Costrutti Bagof, Setof e FindallProlog/Predicati built-in/Costrutti Bagof, Setof e Findall
  3. OrdinamentoProlog/Predicati built-in/Ordinamento
  4. I/OProlog/Predicati built-in/I/O
Ulteriori risorseProlog/Ulteriori risorse
  1. Cos'e' il Prolog?Prolog/Ulteriori risorse
  2. Storia del PrologProlog/Ulteriori risorse
  3. Introduzione alla logicaProlog/Ulteriori risorse
  4. GlossarioProlog/Ulteriori risorse
  5. Alcune risposte a domande comuniProlog/Ulteriori risorse
  6. Esercizi (collegamento esterno)Prolog/Ulteriori risorse
ApprofondimentiProlog/Approfondimenti
  1. Programmazione di ordine superiore)Prolog/Approfondimenti
  2. Programazione su vincoli logiciProlog/Approfondimenti
  3. Grammatiche a clausole definiteProlog/Approfondimenti
  4. Combinazioni di linguaggiProlog/Approfondimenti
  5. Selezione di alcuni argomenti interessanti tratti dagli usergroupProlog/Approfondimenti
  6. Collegamenti EsterniProlog/Approfondimenti

Lista di predicati built-in nel Prolog ISO standard.

unificazione Termini[modifica]

=/2
Unificazione Prolog
unify_with_occurs_check/2
(\=)/2
Prolog non unificabile

Test[modifica]

var/1
Vero se il termine corrente è una variabile
atom/1
Vero se il termine corrente è legato ad un atomo
integer/1
Vero se il temirne e' intero
float/1
Vero se il termine è un numero in virgola mobile
atomic/1
Vero se il termine e' atomo intero o in virgola mobile
compound/1
Vero se il termine è composto
nonvar/1
Vero se il termine corrente non è una variabile
number/1
Vero se il termine corrente è un numero intero o in virgola mobile

Comparazione[modifica]

(@=<)/2
Termine meno di o uguale a
(==)/2
Termine identico
(\==)/2
Termine non identico
(@<)/2
Termine inferiore a
(@>)/2
Termine superiore a
(@>=)/2
Termine più grande di o uguale a

Creazione e decomposizione di termini[modifica]

funtore/3
arg/3
(=../2)
copy_term/2

Valutazione aritmetica[modifica]

is/2

Comparazione aritmetica[modifica]

'=:='/2
uguaglianza aritmetica
'=\='/2
Disuguaglianza aritmetica
'<'/2
minore aritmetico
'=<'/2
minore o uguale di aritmetico
'>'/2
Maggiore aritmetico
'>='/2
"Maggiore o uguale di" aritmetico

Vincoli[modifica]

Clause retrieval and information[modifica]

clause/2
current_predicate/1

Creazione e distruzione di vincoli[modifica]

asserta/1
assertz/1
retract/1
abolish/1

Tutte le soluzioni[modifica]

findall/3
bagof/3
setof/3

Input e output[modifica]

Selezione e controllo di flusso[modifica]

current_input/1
current_output/1
set_input/1
set_output/1
open/4, open/3
Aprire uno stream di dati
close/1, close/2
Chiudere uno stream di dati
stream_property/2
at_end_of_stream/1, at_end_of_stream/0
set_stream_position/2

Caratteri input-output[modifica]

get_char/2, get_char/1
get_code/2, get_code/1
peek_char/2, peek_char/1
peek_code/2, peek_code/1
put_char/2, put_char/1
put_code/2, put_code/1
nl/0, nl/1

Lettura da stream binari[modifica]

get_byte/2, get_byte/1
peek_byte/2, peek_byte/1
put_byte/2, put_byte/1

Termini input e output[modifica]

read_term/2, read_term/3
read/1, read/2

Termini di scrittura[modifica]

write_term/3, write_term/2
write/1, write/2
writeq/1, writeq/2
write_canonical/1, write_canonical/2

Operatori[modifica]

op/3
current_op/3

Conversione di caratteri[modifica]

char_conversion/2
current_char_conversion/2

Logica e controllo[modifica]

(\+)/1
Not provable
once/1
repeat/0

Atom processing[modifica]

atom_length/2
atom_concat/3
sub_atom/5
atom_chars
atom_codes/2
char_code/2
number_chars/2
number_codes/2

Implementazione definita[modifica]

set_prolog_flag/2
current_prolog_flag/2
halt/0, halt/1

Funtori[modifica]

Funtori di valore[modifica]

(+)/2
Addizione
(-)/2
Sottrazione
(*)/2
Moltiplicazione
(//)/2
Divisione intero
(/)/2
Divisione
(rem)/2
Rimando
(mod)/2
Modulo
(-)/1
Negazione
(abs)/1
Valore assoluto
(sign)/1
Segno
(float_integer_part)/1
Parte intera
(float_fractional_part)/1
Parte frazionale
(float)/1
Float coercion
(floor)/1
Eccesso
(truncate)/1
Troncamento
(round)/1
Arrotondamento
(ceiling)/1
Ceiling

Funzioni aritmetiche e di bit[modifica]

(**)/2
Potenza
sin/1
Seno
cos/1
Coseno
atan/1
Arcotangente
exp/1
Esponente
log/1
Logaritmo
sqrt/1
Radice quadrata
(>>)/2
Scorrimento Bit a destra
(<<)/2
Scorrimento bit a sinistra
(/\)/2
Bitwise and
(\/)/2
Bitwise or
(\)/1
Bitwise complemento