A permission error occurs when an operation is attempted that is among the kinds of operation that the system is in general capable of performing, and among the kinds that you are in general allowed to request, but this particular time it isn't permitted. Usually, the reason for a permission error is that the owner of one of the objects has requested that the object be protected.
An example of this inside Prolog is attempting to change a predicate that
has not been declared
File system protection is the main cause of such errors.
The exception code associated with a permission error is
permission_error(Goal, Operation, ObjectType, Culprit, Message)
Some Operations recognized by the system include:
0-- no operation specified
'find absolute path of'
'get the time stamp of'
'set prompt on'
'use close(filename) on'
clausesaccess clauses of
''provides no further information.