Availability:built-in
 source_file(:Pred, 
?File)True if the predicate specified by Pred is owned by file
File, where File is an absolute path name (see
absolute_file_name/2). 
Can be used with any instantiation pattern, but the database only 
maintains the source file for each predicate. If
Pred is a multifile predicate this predicate 
succeeds for all files that contribute clauses to Pred.59The 
current implementation performs a linear scan through all clauses to 
establish this set of files. See also clause_property/2. 
Note that the relation between files and predicates is more complicated 
if include/1 
is used. The predicate describes the owner of the predicate. 
See
include/1 
for details.
source_file(:Pred, 
?File)True if the predicate specified by Pred is owned by file
File, where File is an absolute path name (see
absolute_file_name/2). 
Can be used with any instantiation pattern, but the database only 
maintains the source file for each predicate. If
Pred is a multifile predicate this predicate 
succeeds for all files that contribute clauses to Pred.59The 
current implementation performs a linear scan through all clauses to 
establish this set of files. See also clause_property/2. 
Note that the relation between files and predicates is more complicated 
if include/1 
is used. The predicate describes the owner of the predicate. 
See
include/1 
for details.