IP Library Granted Patent US 9,934,217
Granted Patent B2
US 9,934,217 · App. 13/952,474 · Granted Apr 3, 2018

Index for electronic string of symbols

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,934,217
App. No.
13/952,474
Granted
Apr 3, 2018
Kind
B2
Abstract

In one embodiment, a method includes accessing a string of symbols by a computing device. The string is divided into one or more string components each including at least one of the symbols, and each string component is associated with at least one string-position identifier. The string components and their respective associated string-position identifiers are stored for the string of symbols.

Claims (63)

1. A method comprising:

by a computing device, accessing a string of symbols associated with a predetermined word;

by the computing device, dividing the string of symbols into one or more string components each comprising at least one of the symbols;

by the computing device, associating each of the string components with a string-position identifier based on at least one predetermined rule;

by the computing device, associating an additional string component with one of the string-position identifiers associated with the string components, wherein the additional string component is different from the string component associated with that string-position identifier; and

by the computing device, generating a stored record associated with the word, wherein the stored record comprises:

the one or more string components and their respective associated string-position identifiers; and

the additional string component and its associated string-position identifier;

wherein the additional string component:

has a phonetic similarity to the string component associated with the same string-position identifier associated with the additional string component;

comprises a first symbol having a corresponding first input key being located near a second input key on a symbol-input layout of a client computing device, the second input key corresponding to one of the symbols associated with the string component associated with the same string-position identifier associated with the additional string component;

is defined by a user of the client computing device;

is determined from past usage of the client computing device; or

is determined from past usage of one or more other client computing devices.

2. The method of claim 1 , further comprising, by the computing device:

associating one or more other string components with each of one or more other string-position identifiers; and

storing in the record the other string components and their respective associated other string-position identifiers.

3. The method of claim 1 , wherein the string of symbols comprises a word.

4. A method comprising:

by a computing device, receiving a string of symbols input by a user of client computing device;

by the computing device, dividing the received string of symbols into one or more received string components each comprising at least one of the symbols;

by the computing device, associating each of the received string components with a string-position identifier;

by the computing device, accessing a plurality of records, each record associated with a predetermined word and a corresponding predetermined string of symbols, each record comprising:

one or more second string components each associated with a second string-position identifier based on at least one predetermined rule, each of the second string components comprising at least one of the predetermined string of symbols; and

an additional string component associated with one of the second string-position identifiers, wherein the additional string component is different from the second string component associated with that second string-position identifier;

by the computing device, comparing, for each of one or more of the accessed records, at least some of the received string components and their associated string-position identifiers with at least some of the second string components and the additional string component and their associated second string-position identifiers of the accessed record;

by the computing device, selecting based on the comparison one or more of the compared records; and

by the computing device, providing the predetermined word associated with at least one of the selected records for display to the user;

wherein the additional string component:

has a phonetic similarity to the second string component associated with the same second string-position identifier associated with the additional string component;

comprises a first symbol having a corresponding first input key being located near a second input key on a symbol-input layout of the client computing device, the second input key corresponding to one of the symbols associated with the second string component associated with the same second string-position identifier associated with the additional string component;

is defined by a user of the client computing device;

is determined from past usage of the client computing device; or

is determined from past usage of one or more other client computing devices.

5. The method of claim 4 , wherein the string of symbols input by the user of the client computing device comprises a partially-completed word; and

the predetermined word provided for display to the user is a completed word.

6. The method of claim 5 , wherein the partially-completed string of symbols input by the user of the client computing device comprises a partially-completed query or portion of the query; and

the predetermined word provided for display to the user comprises a completed query or portion of the query.

7. The method of claim 4 , wherein the string of symbols input by the user of the client computing device comprises a misspelled word; and

the predetermined word provided for display to the user is a correctly-spelled word.

8. The method of claim 4 , wherein the selected record associated with the predetermined word provided for display to the user comprises a set of string components and associated respective string-position identifiers that match the received string components and their respective string-position identifiers, wherein set of string components and their respective string-position identifiers are selected from the one or more second string components and the additional string component and their respective second string-position identifiers.

9. The method of claim 4 , wherein selecting based on the comparison comprises scoring the selected record associated with the predetermined word provided for display.

10. The method of claim 9 , wherein the score is based one or more weights, each weight associated with at least one of the received string components.

11. The method of claim 10 , wherein a value of at least one of the weights depends at least in part on a similarity between the respective string-position identifier associated with the received string component associated with the weight and the second string-position identifier of a corresponding second string component in the selected record associated with the predetermined word provided for display.

12. The method of claim 10 , wherein the score is based on a sum of the weights.

13. The method of claim 9 , wherein the score of the selected record associated with the predetermined word provided for display is greater than a predetermined threshold score.

14. The method of claim 9 , wherein the step of providing further comprises providing the predetermined words respectively associated with a plurality of the selected records for display to the user ordered according to their score.

15. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

receive a string of symbols input by a user of client computing device;

divide the received string of symbols into one or more received string components each comprising at least one of the symbols;

associate each of the received string components with a string-position identifier;

access a plurality of records, each record associated with a predetermined word and a corresponding predetermined string of symbols, each record comprising:

one or more second string components each associated with a second string-position identifier based on at least one predetermined rule, each of the second string components comprising at least one of the predetermined string of symbols; and

an additional string component associated with one of the second string-position identifiers, wherein the additional string component is different from the second string component associated with that second string-position identifier;

compare for each of one or more of the accessed records, at least some of the received string components and their associated string-position identifiers with at least some of the second string components and the additional string component and their associated second string-position identifiers of the accessed record;

select based on the comparison one or more of the compared records; and

provide the predetermined word associated with at least one of the selected records for display to the user;

wherein the additional string component:

has a phonetic similarity to the second string component associated with the same second string-position identifier associated with the additional string component;

comprises a first symbol having a corresponding first input key being located near a second input key on a symbol-input layout of the client computing device, the second input key corresponding to one of the symbols associated with the second string component associated with the same second string-position identifier associated with the additional string component;

is defined by a user of the client computing device;

is determined from past usage of the client computing device; or

is determined from past usage of one or more other client computing.

Assignments (2)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2013
From: SANKAR, SRIRAM
To: FACEBOOK, INC.
Reel/Frame 031178/0644 →