This file is indexed.

/usr/share/doc/swi-prolog-doc/Manual/gensym.html is in swi-prolog-doc 5.6.59-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<HTML>
<HEAD>
<TITLE>SWI-Prolog 5.6.59 Reference Manual: Section A.10</TITLE><LINK REL=home HREF="index.html">
<LINK REL=contents HREF="Contents.html">
<LINK REL=index HREF="DocIndex.html">
<LINK REL=previous HREF="debug.html">
<LINK REL=next HREF="lists.html">
<STYLE type="text/css">
/* Style sheet for SWI-Prolog latex2html
*/

dd.defbody
{ margin-bottom: 1em;
}

dt.pubdef
{ background-color: #c5e1ff;
}

pre.code
{ margin-left: 1.5em;
margin-right: 1.5em;
border: 1px dotted;
padding-top: 5px;
padding-left: 5px;
padding-bottom: 5px;
background-color: #f8f8f8;
}

div.navigate
{ text-align: center;
background-color: #f0f0f0;
border: 1px dotted;
padding: 5px;
}

div.title
{ text-align: center;
padding-bottom: 1em;
font-size: 200%;
font-weight: bold;
}

div.author
{ text-align: center;
font-style: italic;
}

div.abstract
{ margin-top: 2em;
background-color: #f0f0f0;
border: 1px dotted;
padding: 5px;
margin-left: 10%; margin-right:10%;
}

div.abstract-title
{ text-align: center;
padding: 5px;
font-size: 120%;
font-weight: bold;
}

div.toc-h1
{ font-size: 200%;
font-weight: bold;
}

div.toc-h2
{ font-size: 120%;
font-weight: bold;
margin-left: 2em;
}

div.toc-h3
{ font-size: 100%;
font-weight: bold;
margin-left: 4em;
}

div.toc-h4
{ font-size: 100%;
margin-left: 6em;
}

span.sec-nr
{ 
}

span.sec-title
{ 
}

span.pred-ext
{ font-weight: bold;
}

span.pred-tag
{ float: right;
font-size: 80%;
font-style: italic;
color: #202020;
}

/* Footnotes */

sup.fn { color: blue; text-decoration: underline; }
span.fn-text { display: none; }
sup.fn span {display: none;}
sup:hover span 
{ display: block !important;
position: absolute; top: auto; left: auto; width: 80%;
color: #000; background: white;
border: 2px solid;
padding: 5px; margin: 10px; z-index: 100;
font-size: smaller;
}
</STYLE>
</HEAD>
<BODY BGCOLOR="white">
<DIV class="navigate"><A class="nav" href="index.html"><IMG SRC="home.gif" BORDER=0 ALT="Home"></A>
<A class="nav" href="Contents.html"><IMG SRC="index.gif" BORDER=0 ALT="Contents"></A>
<A class="nav" href="DocIndex.html"><IMG SRC="yellow_pages.gif" BORDER=0 ALT="Index"></A>
<A class="nav" href="debug.html"><IMG SRC="prev.gif" BORDER=0 ALT="Previous"></A>
<A class="nav" href="lists.html"><IMG SRC="next.gif" BORDER=0 ALT="Next"></A>
</DIV>

<H2><A NAME="sec:A.10"><SPAN class="sec-nr">A.10</SPAN> <SPAN class="sec-title">library( 
gensym ): Generate unique identifiers</SPAN></A></H2>

<A NAME="gensym"></A>

<P>Gensym (<B>Gen</B>erate <B>Sym</B>bols) is an old library for 
generating unique symbols (atoms). Such symbols are generated from a 
base atom which gets a sequence number appended. Of course there is no 
guarantee that `catch22' is not an already defined atom and therefore 
one must be aware these atoms are only unique in an isolated context.

<P>The SWI-Prolog gensym library is thread-safe. The sequence numbers 
are global over all threads and therefore generated atoms are unique 
over all threads.

<DL>
<DT class="pubdef"><A NAME="gensym/2"><STRONG>gensym</STRONG>(<VAR>+Base, 
-Unique</VAR>)</A></DT>
<DD class="defbody">
Generate a unique atom from base <VAR>Base</VAR> and unify it with <VAR>Unique</VAR>.
<VAR>Base</VAR> should be an atom. The first call will return &lt;<VAR>base</VAR>&gt;1 
, the next &lt;<VAR>base</VAR>&gt;2 , etc. Note that this is no warrant 
that the atom is unique in the system.</DD>
<DT class="pubdef"><A NAME="reset_gensym/1"><STRONG>reset_gensym</STRONG>(<VAR>+Base</VAR>)</A></DT>
<DD class="defbody">
Restart generation of identifiers from <VAR>Base</VAR> at &lt;<VAR>Base</VAR>&gt;1. 
Used to make sure a program produces the same results on subsequent 
runs. Use with care.</DD>
<DT class="pubdef"><A NAME="reset_gensym/0"><STRONG>reset_gensym</STRONG></A></DT>
<DD class="defbody">
Reset gensym for all registered keys. This predicate is available for 
compatibility only. New code is strongly advice to avoid the use of 
reset_gensym or at least to reset only the keys used by your program to 
avoid unexpected site-effects on other components.
</DD>
</DL>

</BODY></HTML>