Patents by Inventor M. Amin Shokrollahi

M. Amin Shokrollahi 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: 9270414
    Abstract: A method of encoding data for transmission from a source to a destination over a communications channel is provided. The method operates on an ordered set of input symbols and includes generating a plurality of redundant symbols from the input symbols based on linear constraints. The method also includes generating a plurality of output symbols from a combined set of symbols including the input symbols and the redundant symbols based on linear combinations, wherein at least one of the linear constraints or combinations is over a first finite field and at least one other of the linear constraints or combinations is over a different second finite field, and such that the ordered set of input symbols can be regenerated to a desired degree of accuracy from any predetermined number of the output symbols.
    Type: Grant
    Filed: February 13, 2007
    Date of Patent: February 23, 2016
    Assignee: Digital Fountain, Inc.
    Inventors: M. Amin Shokrollahi, Michael G. Luby, Mark Watson, Lorenz Minder
  • Patent number: 9236976
    Abstract: A method of encoding data for transmission from a source to a destination over a communications channel is provided. A plurality of redundant symbols are generated from an ordered set of input symbols to be transmitted. A plurality of output symbols are generated from a combined set of symbols including the input symbols and the redundant symbols, wherein the number of possible output symbols is much larger than the number of symbols in the combined set of symbols, wherein at least one output symbol is generated from more than one symbol in the combined set of symbols and from less than all of the symbols in the combined set of symbols, and such that the ordered set of input symbols can be regenerated to a desired degree of accuracy from any predetermined number, N, of the output symbols.
    Type: Grant
    Filed: May 17, 2010
    Date of Patent: January 12, 2016
    Assignee: Digital Fountain, Inc.
    Inventors: M. Amin Shokrollahi, Soren Lassen, Michael G. Luby
  • Patent number: 9236887
    Abstract: A method of encoding data operates on an ordered set of input symbols and includes generating redundant symbols from the input symbols, and includes generating output symbols from a combined set of symbols including the input symbols and the redundant symbols, wherein the number of possible output symbols is much larger than the number of the combined set of symbols, wherein at least one output symbol is generated from more than one symbol in the combined set of symbols and from less than all of the symbols in the combined set of symbols. The redundant symbols are generated from an ordered set of input symbols in a deterministic process such that a first set of static symbols calculated using a first input symbol has a low common membership with a second set of static symbols calculated using a second input symbol distinct from the first input symbol.
    Type: Grant
    Filed: February 29, 2012
    Date of Patent: January 12, 2016
    Assignee: Digital Fountain, Inc.
    Inventors: Michael G. Luby, M. Amin Shokrollahi, Mark Watson
  • Patent number: 9136878
    Abstract: A method of encoding data operates on an ordered set of input symbols and includes generating redundant symbols from the input symbols, and includes generating output symbols from a combined set of symbols including the input symbols and the redundant symbols, wherein the number of possible output symbols is much larger than the number of the combined set of symbols, wherein at least one output symbol is generated from more than one symbol in the combined set of symbols and from less than all of the symbols in the combined set of symbols. The redundant symbols are generated from an ordered set of input symbols in a deterministic process such that a first set of static symbols calculated using a first input symbol has a low common membership with a second set of static symbols calculated using a second input symbol distinct from the first input symbol.
    Type: Grant
    Filed: August 25, 2008
    Date of Patent: September 15, 2015
    Assignee: Digital Fountain, Inc.
    Inventors: Michael G. Luby, M. Amin Shokrollahi, Mark Watson
  • Patent number: 8887020
    Abstract: A communications system includes an encoder that produces a plurality of redundant symbols. For a given key, an output symbol is generated from a combined set of symbols including the input symbols and the redundant symbols. The output symbols are generally independent of each other, and an effectively unbounded number of output symbols (subject to the resolution of the key used) can be generated, if needed. The output symbols are information additive such that a received output symbol is likely to provide additional information for decoding even when many symbols are already received. The output symbols are such that a collection of received output symbols can provide probabilistic information to support error correction.
    Type: Grant
    Filed: October 15, 2008
    Date of Patent: November 11, 2014
    Assignee: Digital Fountain, Inc.
    Inventor: M. Amin Shokrollahi
  • Patent number: 8879319
    Abstract: A multi-level cell flash memory storage device has cells wherein different charge levels represent different information. The storage device can read stored charge from one or more cells, store a rewrite generation value for a group of a plurality of cells in a block of cells, and write to cells, wherein writing to one or more cells without an erase includes an increment of the rewrite generation value, and includes circuitry for reading from cells, including circuitry for reading the rewrite generation value. The storage device can include circuitry for reading from cells includes within the multi-level cell flash memory storage device logic for calculating a stored value of the cells using the rewrite generation value and relative levels of charge on a plurality of cells. The storage device can track hot addresses and cold addresses and perform static or dynamic wear leveling based on accumulated rewrite generation values.
    Type: Grant
    Filed: July 30, 2012
    Date of Patent: November 4, 2014
    Assignee: Ecole Polytechnique Federale de Lausanne (EPFL)
    Inventors: Yuval Cassuto, Luoming Zhang, M. Amin Shokrollahi
  • Publication number: 20130067295
    Abstract: A method of encoding data operates on an ordered set of input symbols and includes generating redundant symbols from the input symbols, and includes generating output symbols from a combined set of symbols including the input symbols and the redundant symbols, wherein the number of possible output symbols is much larger than the number of the combined set of symbols, wherein at least one output symbol is generated from more than one symbol in the combined set of symbols and from less than all of the symbols in the combined set of symbols. The redundant symbols are generated from an ordered set of input symbols in a deterministic process such that a first set of static symbols calculated using a first input symbol has a low common membership with a second set of static symbols calculated using a second input symbol distinct from the first input symbol.
    Type: Application
    Filed: February 29, 2012
    Publication date: March 14, 2013
    Applicant: DIGITAL FOUNTAIN, INC.
    Inventors: Michael G. LUBY, M. Amin SHOKROLLAHI, Mark WATSON
  • Publication number: 20110103519
    Abstract: A method for processing a chain reaction code includes first selecting a source symbol which is associated with an output symbol of degree two or higher (i.e., an output symbol which is itself associated with two or more input symbols), and subsequently deactivating the selected source symbol in an attempt to produce an output symbol of degree one. The inactivation process can be repeated either successively until an output symbol of degree one is identified, and/or whenever the decoding process is unable to locate an output symbol of degree one.
    Type: Application
    Filed: August 28, 2009
    Publication date: May 5, 2011
    Applicant: QUALCOMM Incorporated
    Inventors: M. Amin Shokrollahi, Soren Lassen, Richard Karp
  • Patent number: 7721184
    Abstract: Efficient methods for encoding and decoding Half-Weight codes are disclosed and similar high density codes are disclosed. The efficient methods require at most 3·(k?1)+h/2+1 XORs of symbols to calculate h Half-Weight symbols from k source symbols, where h is of the order of log(k).
    Type: Grant
    Filed: August 11, 2005
    Date of Patent: May 18, 2010
    Assignee: Digital Fountain, Inc.
    Inventors: Michael Luby, M. Amin Shokrollahi
  • Patent number: 7720174
    Abstract: A method of encoding data for transmission from a source to a destination over a communications channel is provided. A plurality of redundant symbols are generated from an ordered set of input symbols to be transmitted. A plurality of output symbols are generated from a combined set of symbols including the input symbols and the redundant symbols, wherein the number of possible output symbols is much larger than the number of symbols in the combined set of symbols, wherein at least one output symbol is generated from more than one symbol in the combined set of symbols and from less than all of the symbols in the combined set of symbols, and such that the ordered set of input symbols can be regenerated to a desired degree of accuracy from any predetermined number, N, of the output symbols.
    Type: Grant
    Filed: February 13, 2006
    Date of Patent: May 18, 2010
    Assignee: Digital Fountain, Inc.
    Inventors: M. Amin Shokrollahi, Soren Lassen, Michael Luby
  • Patent number: 7711068
    Abstract: A method of encoding data for transmission from a source to a destination over a communications channel is provided. A plurality of redundant symbols are generated from an ordered set of input symbols to be transmitted. A plurality of output symbols are generated from a combined set of symbols including the input symbols and the redundant symbols, wherein the number of possible output symbols is much larger than the number of symbols in the combined set of symbols, wherein at least one output symbol is generated from more than one symbol in the combined set of symbols and from less than all of the symbols in the combined set of symbols, and such that the ordered set of input symbols can be regenerated to a desired degree of accuracy from any predetermined number, N, of the output symbols.
    Type: Grant
    Filed: August 20, 2007
    Date of Patent: May 4, 2010
    Assignee: Digital Fountain, Inc.
    Inventors: M. Amin Shokrollahi, Soren Lassen, Michael Luby
  • Patent number: 7676735
    Abstract: In a data decoder for decoding data from received symbols received over a channel from an encoder, a method for decoding data wherein the received data includes erasures and includes source symbols and repair symbols organized into one or more source blocks. The decoder uses a generator matrix, any square submatrix of which is invertible, such that the decoder performs decoding operations concurrently with the arrival of the source symbols and repair symbols that are a part of a source block. Novel methods for interleaving and specifying encoding structure for a large class of FEC codes, scheduling the sending of packets and the like, are also applied in conjunction with the method for decoding data.
    Type: Grant
    Filed: June 9, 2006
    Date of Patent: March 9, 2010
    Assignee: Digital Fountain Inc.
    Inventors: Michael G. Luby, Mark Watson, M. Amin Shokrollahi
  • Patent number: 7644335
    Abstract: In an encoder for encoding symbols of data using a computing device having memory constraints, a method of performing a transformation comprising loading a source block into memory of the computing device, performing an intermediate transformation of less than all of the source block, then replacing a part of the source block with intermediate results in the memory and then completing the transformation such that output symbols stored in the memory form a set of encoded symbols. A decoder can perform decoding steps in an order that allows for use of substantially the same memory for storing the received data and the decoded source block, performing as in-place transformations. Using an in-place transformation, a large portion of memory set aside for received data can be overwritten as that received data is transformed into decoded source data without requiring a similar sized large portion of memory for the decoded source data.
    Type: Grant
    Filed: June 9, 2006
    Date of Patent: January 5, 2010
    Assignee: Qualcomm Incorporated
    Inventors: Michael G. Luby, M. Amin Shokrollahi
  • Patent number: 7633413
    Abstract: A method for processing a chain reaction codes includes first selecting a source symbol which is associated an output symbol of degree two or higher (i.e., an output symbol which is itself associated with two or more input symbols), and subsequently deactivating the selected source symbol in an attempt to produce an output symbol of degree one. The inactivation process can be repeated either successively until an output symbol of degree one is identified, and/or whenever the decoding process is unable to locate an output symbol of degree one.
    Type: Grant
    Filed: August 20, 2007
    Date of Patent: December 15, 2009
    Assignee: QUALCOMM Incorporated
    Inventors: M. Amin Shokrollahi, Soren Lassen, Richard Karp
  • Publication number: 20090307565
    Abstract: Efficient methods for encoding and decoding Half-Weight codes are disclosed and similar high density codes are disclosed. The efficient methods require at most 3·(k?1)+h/2+1 XORs of symbols to calculate h Half-Weight symbols from k source symbols, where h is of the order of log(k).
    Type: Application
    Filed: December 9, 2008
    Publication date: December 10, 2009
    Applicant: Digital Fountain, Inc.
    Inventors: Michael Luby, M. Amin Shokrollahi
  • Publication number: 20090189792
    Abstract: A method of encoding data into a chain reaction code includes generating a set of input symbols from input data. Subsequently, one or more non-systematic output symbols is generated from the set of input symbols, each of the one or more non-systematic output symbols being selected from an alphabet of non-systematic output symbols, and each non-systematic output symbol generated as a function of one or more of the input symbols. As a result of this encoding process, any subset of the set of input symbols is recoverable from (i) a predetermined number of non-systematic output symbols, or (ii) a combination of (a) input symbols which are not included in the subset of input symbols that are to be recovered, and (b) one or more of the non-systematic output symbols.
    Type: Application
    Filed: April 3, 2009
    Publication date: July 30, 2009
    Inventors: M. Amin Shokrollahi, Michael G. Luby
  • Publication number: 20090158114
    Abstract: A communications system includes an encoder that produces a plurality of redundant symbols. For a given key, an output symbol is generated from a combined set of symbols including the input symbols and the redundant symbols. The output symbols are generally independent of each other, and an effectively unbounded number of output symbols (subject to the resolution of the key used) can be generated, if needed. The output symbols are information additive such that a received output symbol is likely to provide additional information for decoding even when many symbols are already received. The output symbols are such that a collection of received output symbols can provide probabilistic information to support error correction.
    Type: Application
    Filed: October 15, 2008
    Publication date: June 18, 2009
    Applicant: Digital Fountain, Inc.
    Inventor: M. Amin Shokrollahi
  • Patent number: 7532132
    Abstract: A method of encoding data into a chain reaction code includes generating a set of input symbols from input data. Subsequently, one or more non-systematic output symbols is generated from the set of input symbols, each of the one or more non-systematic output symbols being selected from an alphabet of non-systematic output symbols, and each non-systematic output symbol generated as a function of one or more of the input symbols. As a result of this encoding process, any subset of the set of input symbols is recoverable from (i) a predetermined number of non-systematic output symbols, or (ii) a combination of (a) input symbols which are not included in the subset of input symbols that are to be recovered, and (b) one or more of the non-systematic output symbols.
    Type: Grant
    Filed: August 20, 2007
    Date of Patent: May 12, 2009
    Assignee: Digital Fountain, Inc.
    Inventors: M. Amin Shokrollahi, Michael G. Luby
  • Publication number: 20090031199
    Abstract: A method of encoding data operates on an ordered set of input symbols and includes generating redundant symbols from the input symbols, and includes generating output symbols from a combined set of symbols including the input symbols and the redundant symbols, wherein the number of possible output symbols is much larger than the number of the combined set of symbols, wherein at least one output symbol is generated from more than one symbol in the combined set of symbols and from less than all of the symbols in the combined set of symbols. The redundant symbols are generated from an ordered set of input symbols in a deterministic process such that a first set of static symbols calculated using a first input symbol has a low common membership with a second set of static symbols calculated using a second input symbol distinct from the first input symbol.
    Type: Application
    Filed: August 25, 2008
    Publication date: January 29, 2009
    Applicant: Digital Fountain, Inc.
    Inventors: Michael G. Luby, M. Amin Shokrollahi, Mark Watson
  • Patent number: RE43741
    Abstract: A method of encoding data into a chain reaction code includes generating a set of input symbols from input data. Subsequently, one or more non-systematic output symbols is generated from the set of input symbols, each of the one or more non-systematic output symbols being selected from an alphabet of non-systematic output symbols, and each non-systematic output symbol generated as a function of one or more of the input symbols. As a result of this encoding process, any subset of the set of input symbols is recoverable from (i) a predetermined number of non-systematic output symbols, or (ii) a combination of (a) input symbols which are not included in the subset of input symbols that are to be recovered, and (b) one or more of the non-systematic output symbols.
    Type: Grant
    Filed: November 17, 2011
    Date of Patent: October 16, 2012
    Assignee: QUALCOMM Incorporated
    Inventors: M. Amin Shokrollahi, Michael G. Luby