You are on page 1of 17

PATROLL Winning Submission

US 7,991,784

The ‘784 patent (“Parikh”) is a continuation application that was filed on November 20, 2009
and claims priority back to Jan. 21, 2005. Claim 1 of the patent discloses a method of presenting
character strings to a user in response to the user entering incomplete input. The method includes
computing contextual associations between character strings based upon occurrence of character
strings relative to each other in documents, identifying a selectable character string from a list of
character strings created during the computation of contextual associations, providing the
identified character string to a user for selection, and receiving a selection from the user.

Gibbs, U.S. Patent Application Publication No. 2006/0106769, filed on Nov. 12, 2004, discloses
a method for suggesting predicted query terms or phrases based upon portions of a user’s
incomplete query. “Fingerprint-to-table maps” are created based on historical queries and their
frequency, and are used to suggest possible complete queries based on the user’s incomplete
query. The user may select one of the suggested queries.

Patterson, U.S. Patent Application Publication No. 2006/0020607, filed on July 26, 2004,
discloses a method for identifying related phrases within a document based upon their
occurrence within the document. A number of lists that identify the related phrases are created,
and search queries can be serviced (or autocompleted) based upon the lists.

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com
US 7,991,784 US 2006/0106769 US 2006/0020607
(“Parikh”) (“Gibbs”) (“Patterson”)
1.pre. A method, See Gibbs, Figs. 1, 3, 4, 7, 14 See Patterson, Fig. 2, 4-7.

1.pre.1.a. performed in a “In one embodiment of the invention, portions of a “When a search query is received, it can be compared
character entry system so user's query are transmitted to a search engine against the incomplete phase list 216. If the query (or
that incomplete input before the user has finished entering the a portion thereof) matches an entry in the list, then
character strings input by a complete query. The search engine uses the the search system 120 can lookup the most likely
user interacting with the transmitted portion of the query to predict the user's phrase extensions of the incomplete phrase (the
character entry system, that final query. These predictions are transmitted back phrase extension having the highest information
are part of a series of input to the user. If one of the predictions is the user's gain given the incomplete phrase), and suggest this
character strings which intended query, then the user can select that phrase extension to the user, or automatically search on
establish a context for the predicted query without having to complete entry the phrase extension. For example, if the search
incomplete input character of the query. In some embodiments, the selected query is "President of the United," the search
string, can be completed by query is transmitted to the search engine, which system 120 can automatically suggest to the user
a selection of a presented returns a set of query results corresponding to the "President of the United States" as the search
character string using an selected query.” Gibbs at [0026] (emphasis added) query.” Patterson at [0090]. (emphasis added)
input device connected to
the character entry system,
the method comprising: “When the partial query is transmitted (FIG. 3, See also id. at Fig. 1.
308), it is received at the search engine 208 as
partial query 513. A hash function 514 is applied
to the partial query 513 to create a fingerprint,
i.e., a b-bit binary value (e.g., a 64-bit number). An
applicable fingerprint-to-table map 510 (e.g.,
510-1) is searched for the fingerprint (e.g., 515)
to identify a query completion table 516
associated with the fingerprint. The query
completion table 516 provides an ordered set of

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com
predicted queries relevant to the partial query 513.”
Id. at [0048] (emphasis added)

“The fingerprint (2) 515 represents a fingerprint


value for a partial query. The fingerprint (2) 515
may be calculated, for example, by applying a hash
function to a partial query to create a b-bit binary
value (e.g., a 64-bit number). Accordingly, the
fingerprint-to-table map 510-1 may be searched for
a fingerprint which matches the fingerprint of the
partial query 513 (e.g., fingerprint 515). . . . The
query completion table (2) 516 contains a list of
query completion fingerprints 518-1 to 518-n,
where n represents the number of query completion
fingerprints in the query completion table (2) 516.
In some embodiments, n represents the number of
predicted queries returned to the search assistant
204 (e.g., 10 predicted queries).” Id. at [0061]-
[0062]

See also id. at Fig. 2

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com
PATROLL – Prior Art Crowdsourcing
http://patroll.unifiedpatents.com
See also id. at Fig. 6:

See also id. at Fig. 10:

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com
See also id. at Fig. 11:

1.1. computing contextual See Gibbs at [0048]-[0065] “An information retrieval system uses phrases to index,
associations between retrieve, organize and describe documents. Phrases are
multiple character strings identified that predict the presence of other phrases in
based upon occurrence of documents. Documents are the indexed according to
character strings relative to their included phrases. Related phrases and phrase
each other in documents extensions are also identified. Phrases in a query are
present in the character identified and used to retrieve and rank documents.
entry system, wherein the Phrases are also used to cluster documents in the search
computing contextual results, create document descriptions, and eliminate
associations comprises: duplicate documents from the search results, and from
the index.” Patterson, Abstract.

“Some existing information retrieval systems attempt to


provide retrieval of concepts by using co-occurrence
patterns of individual words.” id. at [0012] (emphasis
added)

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com
“The system is further adapted to identify phrases that
are related to each other, based on a phrase's ability to
predict the presence of other phrases in a document.
More specifically, a prediction measure is used that
relates the actual co-occurrence rate of two phrases
to an expected co-occurrence rate of the two
phrases.” id. at [0015] (emphasis added)

See also “co-occurrence matrix 212”, e.g., at [0059]:


“In addition the various lists, a co-occurrence matrix
212 (G) for the good phrases is maintained. The matrix
G has a dimension of m x m, where m is the number of
good phrases. Each entry G(j, k) in the matrix
represents a pair of good phrases (gj, gk). The co-
occurrence matrix 212 logically (though not necessarily
physically) maintains three separate counts for each
pair (gj, gk) of good phrases with respect to a secondary
window 304 that is centered at the current word i, and
extends +/-h words. In one embodiment, such as
illustrated in FIG. 3, the secondary window 304 is 30
words.”

See also id., Figs. 2-4:

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com
PATROLL – Prior Art Crowdsourcing
http://patroll.unifiedpatents.com
PATROLL – Prior Art Crowdsourcing
http://patroll.unifiedpatents.com
1.1.1 identifying pertinent “An information retrieval system and methodology
documents present in the uses phrases to index, search, rank, and describe
character entry system, documents in the document collection. . . . “The system
is further adapted to identify phrases that are related to
each other, based on a phrase's ability to predict the
presence of other phrases in a document. More

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com
specifically, a prediction measure is used that relates
the actual co-occurrence rate of two phrases to an
expected co-occurrence rate of the two phrases.”
Patterson at [0014]-[0015]

1.1.2 creating a list of “An information retrieval system indexes


character strings contained documents in the document collection by the valid
within documents in the or good phrases. For each phrase, a posting list
character entry system; and identifies the documents that contain the phrase. In
addition, for a given phrase, a second list, vector, or
other structure is used to store data indicating
which of the related phrases of the given phrase are
also present in each document containing the given
phrase. In this manner, the system can readily identify
not only which documents contain which phrases in
response to a search query, but which documents also
contain phrases that are related to query phrases, and
thus more likely to be specifically about the topics or
concepts expressed in the query phrases.” Patterson at
[0016] (emphasis added)

See also Figs. 2-3:

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com
PATROLL – Prior Art Crowdsourcing
http://patroll.unifiedpatents.com
1.1.3. creating an “An information retrieval system uses phrases to index,
interrelationship between retrieve, organize and describe documents. Phrases are
distinct character strings in identified that predict the presence of other phrases in
the list using their documents. Documents are the indexed according to
occurrence in the their included phrases. Related phrases and phrase
documents of the character extensions are also identified. Phrases in a query are
entry system; identified and used to retrieve and rank documents.
Phrases are also used to cluster documents in the search
results, create document descriptions, and eliminate
duplicate documents from the search results, and from
the index.” Patterson, Abstract. (emphasis added)

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com
“Some existing information retrieval systems attempt to
provide retrieval of concepts by using co-occurrence
patterns of individual words.” id. at [0012] (emphasis
added)

“The system is further adapted to identify phrases that


are related to each other, based on a phrase's ability to
predict the presence of other phrases in a document.
More specifically, a prediction measure is used that
relates the actual co-occurrence rate of two phrases
to an expected co-occurrence rate of the two
phrases.” id. at [0015] (emphasis added)

See also “co-occurrence matrix 212”, e.g., at [0059]:


“In addition the various lists, a co-occurrence matrix
212 (G) for the good phrases is maintained. The matrix
G has a dimension of m x m, where m is the number of
good phrases. Each entry G(j, k) in the matrix
represents a pair of good phrases (gj, gk). The co-
occurrence matrix 212 logically (though not necessarily
physically) maintains three separate counts for each
pair (gj, gk) of good phrases with respect to a secondary
window 304 that is centered at the current word i, and
extends +/-h words. In one embodiment, such as
illustrated in FIG. 3, the secondary window 304 is 30
words.”

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com
1.2. in response to the user “[A] partial input is identified by detecting entry of “When a search query is received, it can be compared
inputting a specified a pre-determined number of characters.” Gibbs at against the incomplete phase list 216. If the query (or
threshold of individual [0037]. a portion thereof) matches an entry in the list, then
characters using the input the search system 120 can lookup the most likely
device, identifying at least “In response to the partial search query, the phrase extensions of the incomplete phrase (the
one selectable character search engine 208 returns a set of ordered phrase extension having the highest information gain
string from among the predicted search queries and/or URLs (310) given the incomplete phrase), and suggest this phrase
character strings used in which is presented to the user (312) ordered in extension to the user, or automatically search on the
creating the computed accordance with a ranking criteria.” Id. at [0039]. phrase extension. For example, if the search query is
contextual associations that (emphasis added) "President of the United," the search system 120 can
can complete the automatically suggest to the user "President of the
incomplete input character See also id. at Fig. 6: United States" as the search query.” Patterson at
string in context; [0090]. (emphasis added)

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com
1.3. providing the identified “In response to the partial search query, the search “When a search query is received, it can be compared
at least one selectable engine 208 returns a set of ordered predicted against the incomplete phase list 216. If the query (or a
character string to a user in search queries and/or URLs (310) which is portion thereof) matches an entry in the list, then the

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com
a manner suitable for presented to the user (312) ordered in accordance search system 120 can lookup the most likely phrase
selection by the user using with a ranking criteria.” Gibbs at [0039]. (emphasis extensions of the incomplete phrase (the phrase
the input device; and added) extension having the highest information gain given the
incomplete phrase), and suggest this phrase extension
See also id. at Fig. 11 to the user, or automatically search on the phrase
extension. For example, if the search query is
"President of the United," the search system 120
can automatically suggest to the user "President of
the United States" as the search query.” Patterson at
[0090]. (emphasis added)

1.4. receiving, in the “[T]he user may select one of the queries and/or
system, the user's selection URLs if the user determines that one of the
and completing the predictions matches the intended entry. . . . If the
incomplete input character user selects one of the predictions (302-final), the
string based upon the request is transmitted either to the search
selection. engine 208 as a search request or to a resource host
as a URL request (304), as applicable.” Gibbs at
[0041]. (emphasis added)

PATROLL – Prior Art Crowdsourcing


http://patroll.unifiedpatents.com

You might also like