Patents by Inventor Emery Berger

Emery Berger 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: 10102241
    Abstract: The techniques described herein use statistical reasoning to determine whether a spreadsheet (e.g., cells) includes potential errors. The techniques determine a partition within a spreadsheet where the partition includes cells that share characteristics (e.g., same row or column, same type of content, same formatting, etc.). Once determined, the partition is evaluated based on defined properties. A property is applied to generate property values so that an anomaly can be identified. An anomaly can occur when a cell in the partition has a property value that is inconsistent with other property values of other cells in the same partition (e.g., an intra-partition anomaly). An anomaly can also occur when a cell in the partition has a property value that is inconsistent with property values of cells in a different partition (e.g., an inter-partition anomaly). The techniques analyze the anomalies to determine a priority value indicative of a likelihood of a potential error.
    Type: Grant
    Filed: May 20, 2016
    Date of Patent: October 16, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Benjamin G. Zorn, Emery Berger
  • Publication number: 20170337238
    Abstract: The techniques described herein use statistical reasoning to determine whether a spreadsheet (e.g., cells) includes potential errors. The techniques determine a partition within a spreadsheet where the partition includes cells that share characteristics (e.g., same row or column, same type of content, same formatting, etc.). Once determined, the partition is evaluated based on defined properties. A property is applied to generate property values so that an anomaly can be identified. An anomaly can occur when a cell in the partition has a property value that is inconsistent with other property values of other cells in the same partition (e.g., an intra-partition anomaly). An anomaly can also occur when a cell in the partition has a property value that is inconsistent with property values of cells in a different partition (e.g., an inter-partition anomaly). The techniques analyze the anomalies to determine a priority value indicative of a likelihood of a potential error.
    Type: Application
    Filed: May 20, 2016
    Publication date: November 23, 2017
    Inventors: Benjamin G. Zorn, Emery Berger
  • Publication number: 20070234297
    Abstract: Software program robustness is improved by successfully masking memory safety errors in the software program. For instance, at least some memory safety errors in a software program can be masked by using a runtime memory manager that approximates the semantics of an infinite heap memory manager. In one example, an approximation of an infinite heap memory manager is implemented by configuring a parameterized memory manager with parameter values such as padding to be added to each allocation on the heap and the amount of deferment before executing a call to free memory on the heap. Ideal configurations balance expected robustness with costs such as added memory and processing time. Ideal configurations can be identified through systematic search of a coordinate space of selected parameters. Ideal configurations can also be identified by statistically correlating success/failure data collected from execution of deployed instances of the software program to the configuration of the memory managers used therein.
    Type: Application
    Filed: March 31, 2006
    Publication date: October 4, 2007
    Applicant: Microsoft Corporation
    Inventors: Benjamin Zorn, Emery Berger
  • Publication number: 20070234296
    Abstract: Improved robustness of software program executions is achieved via randomization of their execution contexts. For instance, errors related to runtime allocation of memory on the heap can be probabilistically addressed by generating an approximation of the infinite heap and using a randomized memory manager to allocate memory on the heap. In addition to stand alone randomization, several replicas of a software program are executed, each with a memory manager configured with different randomization seeds for randomly allocating memory on an approximation of an infinite heap. Outputs of correctly executing instances of the replicas are determined by accepting the output that at least two of the replicas agree upon.
    Type: Application
    Filed: March 31, 2006
    Publication date: October 4, 2007
    Applicant: Microsoft Corporation
    Inventors: Benjamin Zorn, Emery Berger