Patents by Inventor Justin Foutts

Justin Foutts has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9378304
    Abstract: A data structure includes three arrays. A first array includes a root node, one or more intermediate nodes, and one or more leaf nodes. A second array includes one or more slices, each of which includes one or more elements; a third array also includes one or more elements. Each root node and intermediate node in the first array points to a respective slice in the second array. Each element in the second array stores a byte and has an associated pointer that points either to a respective intermediate node or to a respective leaf node in the first array. Each leaf node in the first array points to a respective element in the third array, and each element in the third array stores a respective sub-string of bytes. The trie can be particularly advantageous, for example, in applications on resource-constrained computing devices, such as mobile phones, tablets, and other hand-held computing devices.
    Type: Grant
    Filed: August 21, 2013
    Date of Patent: June 28, 2016
    Assignee: Google Inc.
    Inventors: Ulas Kirazci, Justin Foutts
  • Patent number: 9355113
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for encoding and decoding delta values. In one aspect, a method includes accessing a compression buffer having a start position, a sentinel position, and a data storage region; obtaining a first value; determining that a second value stored in the sentinel position does not match a first sentinel value; determining that a third value stored in the start position matches a second sentinel value; and storing the first value at the start position of the compression buffer.
    Type: Grant
    Filed: August 29, 2013
    Date of Patent: May 31, 2016
    Assignee: Google Inc.
    Inventors: Ulas Kirazci, Justin Foutts
  • Publication number: 20140201174
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for encoding and decoding delta values. In one aspect, a method includes accessing a compression buffer having a start position, a sentinel position, and a data storage region; obtaining a first value; determining that a second value stored in the sentinel position does not match a first sentinel value; determining that a third value stored in the start position matches a second sentinel value; and storing the first value at the start position of the compression buffer.
    Type: Application
    Filed: August 29, 2013
    Publication date: July 17, 2014
    Applicant: Google Inc.
    Inventors: Ulas Kirazci, Justin Foutts
  • Publication number: 20140201247
    Abstract: A data structure includes three arrays. A first array includes a root node, one or more intermediate nodes, and one or more leaf nodes. A second array includes one or more slices, each of which includes one or more elements; a third array also includes one or more elements. Each root node and intermediate node in the first array points to a respective slice in the second array. Each element in the second array stores a byte and has an associated pointer that points either to a respective intermediate node or to a respective leaf node in the first array. Each leaf node in the first array points to a respective element in the third array, and each element in the third array stores a respective sub-string of bytes. The trie can be particularly advantageous, for example, in applications on resource-constrained computing devices, such as mobile phones, tablets, and other hand-held computing devices.
    Type: Application
    Filed: August 21, 2013
    Publication date: July 17, 2014
    Applicant: Google Inc.
    Inventors: Ulas Kirazci, Justin Foutts