Document frequency 2026-11-05
The document frequency of term is the number of documents in a specified collection that contain it at least once. Repeating a term many times inside one document contributes only one to its document frequency.[ref]
For a collection , write the count using an indicator function:
Here is the raw term frequency. When an inverted index has one document record per containing document, the number of those records in the term's postings list equals . A record's position list can still contain several occurrences.
Consider red red boat, boat red red and blue boat. Red occurs four times but has document frequency two. Boat occurs only three times but has document frequency three. Thus the term with more total occurrences need not appear in more documents. Blue has document frequency one.
Adding another hundred red occurrences to the first document increases its term frequency without changing red's document frequency. Adding a new document containing red increases the latter by one. The collection boundary and preprocessing rules are therefore part of the statistic's definition. In information retrieval, this distinction lets scoring use evidence about how widely a term is distributed, rather than confusing repetition in one document with coverage of many documents.
Inverted index 2026-11-05
An inverted index maps each indexing term to the documents containing it. A term dictionary provides access to a postings list; each posting records a document identifier, sometimes with additional information such as occurrence positions. A positional index retains those positions for queries involving word order.[ref]
Consider documents one red boat, two blue boat and three red train. The postings list for red is 1,3, and that for boat is 1,2. Intersecting them answers red AND boat with document one, without scanning every document's complete text at query time. Sorting document identifiers permits a coordinated traversal of both lists. Preprocessing decisions still matter: an inverted index for case-folded terms answers a different matching question from one preserving exact capitalization. The data structure accelerates access; it does not itself establish relevance.
Phrase query 2026-11-05
A phrase query asks for documents containing a specified sequence of indexed terms in the required order. For an exact phrase query, the occurrences occupy consecutive positions. A document containing every requested word can still fail because its words occur in a different order or with intervening terms.[ref]
Let be the set of positions of term in document . For query terms , an exact match exists when
A positional index stores the information needed to test these offsets. Repeated query terms need their own offsets even though their positions come from the same postings list.[ref]
Number words from one, without removing any. Document 1 is red red boat, document 2 is boat red red, and document 3 is blue boat. The exact phrase query red boat matches only document 1, at positions 2–3. Document 2 has exactly the same term frequencies as document 1, but its boat occurs before both red occurrences. Intersecting document identifiers for the two terms would retain it incorrectly.
Phrase semantics depend on the indexing pipeline. If some words are removed, preserving their position gaps can prevent a false claim of adjacency. A search allowing intervening words is a different matching condition; quotation marks alone do not specify every implementation's preprocessing choices.
Positional index 2026-11-05
A positional index is an inverted index whose postings lists retain the positions of a term's occurrences within each document. These positions distinguish a phrase query from a request for documents merely containing the same words. Positions usually count the terms produced by the indexing pipeline; they need not be character offsets.[ref]
Number words from one. For document 1, red boat red sail, store positions red: 1,3, boat: 2, sail: 4. For document 2, boat red sail, store red: 2, boat: 1, sail: 3. The phrase query red boat asks whether a position of red has a position of boat in the same document. Document 1 qualifies at ; document 2 contains both words but fails. The phrase query red sail matches both documents.
A positional index spends additional storage to preserve ordering information. Removing words during preprocessing without preserving their position gaps can change phrase semantics: the index must specify what counts as adjacent. The same position data can support queries allowing a bounded separation, rather than exact adjacency.
Postings list 2026-11-05
A postings list is the collection of records associated with one term in an inverted index. Each record identifies a document containing the term; optional fields include its term frequency in that document and, for a positional index, occurrence positions. The number of distinct document records is the document frequency, which differs from the total number of occurrences.[ref]
For documents 1 red red boat, 2 blue boat, and 3 red train, the document identifiers in the red postings list are . Its document frequency is two, although red occurs three times. The boat postings list contains . Their intersection is , answering red AND boat.
With identifiers in increasing order, compare the current identifiers and advance whichever is smaller; when equal, emit that identifier and advance both. Each advancement consumes a record, so intersecting lists of lengths costs comparisons in this simple merge algorithm. Ordering gives a direct route from stored evidence to a query result without reading every document's text.[ref]