Patents by Inventor Benjamin Goth Zorn
Benjamin Goth Zorn 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).
-
Publication number: 20240143928Abstract: The automated generation of a natural language explanation of what code does. The code is structured to perform tasks because the code itself semantically specifies that those tasks are to be performed. A task-centric representation of the code is automatically generated that includes a task representation of each of some or all of the tasks to be performed as specified by the code. Natural language utterances are then automatically generated by generating a corresponding natural language utterance that semantically describes in natural language the corresponding task represented by the corresponding task representation. Controls are rendered for each natural language utterance that each permit a user to edit the corresponding natural language utterance. After editing, the code itself may be automatically modified or regenerated to reflect the changed natural language utterances.Type: ApplicationFiled: October 28, 2022Publication date: May 2, 2024Inventors: Benjamin Goth ZORN, Carina Suzana NEGREANU, Advait SARKAR, Andrew Donald GORDON, John Herbert Martin WILLIAMS, Xieyang LIU, Neil Blunt TORONTO, Sruti Srinivasa RAGAVAN, Brian Paul SLININGER
-
Publication number: 20240135113Abstract: The indirect querying of models to determine capabilities possessed by the model. Such indirect queries take the form of model input that potentially includes a natural language input user data. Such model input is structured such that the output of the model is either not natural language at all, or else is natural language that is not semantically responsive to the natural language input. Nevertheless, the output is evaluated to estimate or determine the capability possessed by the model. Thus, models may be more fully utilized to their better potential.Type: ApplicationFiled: October 19, 2022Publication date: April 25, 2024Inventors: Benjamin Goth ZORN, Carina Suzana NEGREANU, Neil Blunt TORONTO, Brian Paul SLININGER, Andrew Donald GORDON, Advait SARKAR, Elnaz NOURI, Vu Minh LE, Christian Leopold Bejamin POELITZ, Shraddha Govind BARKE, Sruti Srinivasa RAGAVAN
-
Publication number: 20230418815Abstract: The generation of a response to a task prompt that represents a task to perform on declarative code. The response is generated with the aid of a language model that was trained on imperative code. The declarative code includes declarations about data. A task prompt represents a task to perform on the declarative code. At least a portion of the declarative code and at least a portion of the task prompt are converted into input imperative code. The input imperative code is then caused to be provided as input to the language model, resulting in the language model generating output imperative code. At least a portion of the output imperative code is then converted into a response to the task prompt.Type: ApplicationFiled: June 24, 2022Publication date: December 28, 2023Inventors: Benjamin Goth ZORN, Carina Suzana NEGREANU, Neil Blunt TORONTO, Brian Paul SLININGER, Andrew Donald GORDON, Advait SARKAR, Sruti Srinivasa RAGAVAN
-
Publication number: 20200019603Abstract: Systems, methods, and computer-readable storage devices are disclosed for improved table identification in a spreadsheet. One method including: receiving a spreadsheet including at least one table; identifying, using machine learning, one or more classes of a plurality of classes for each cell of the received spreadsheet, wherein the plurality of classes include corners and not-a-corner; and inducing at least one table in the received spreadsheet based on the one or more identified classes for each cell of the received spreadsheet.Type: ApplicationFiled: July 13, 2018Publication date: January 16, 2020Applicant: Microsoft Technology Licensing, LLCInventors: Benjamin Goth ZORN, Marc Manuel Johannes BROCKSCHMIDT, Pallavi CHOUDHURY, Oleksandr POLOZOV, Rishabh SINGH, Saswat PADHI
-
Patent number: 10409892Abstract: Data formatting rules to convert data from one form to another form are automatically determined based on a user's edits. A machine learning heuristic is applied to a user's edits to determine a data formatting rule that may be applied to data. For example, a user may make edits that add/remove characters from data, concatenate data, extract data, rename data, and the like. The machine learning heuristic may be automatically triggered in response to an event (e.g. after a predetermined number of edits are made to a same type of data) or manually triggered (e.g. selecting a user interface option). The data formatting rule may be applied to other data and the results of the formatting reviewable by the user. Based on further edits/reviews, the data formatting rule may be updated. The data formatting rules may be stored for later use.Type: GrantFiled: January 26, 2011Date of Patent: September 10, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Chad Rothschiller, Daniel Battagin, Christopher Benedict, Rodrigo Moreira-Silveira, Dmitri O. Danilov, Eric Cohen, Sumit Gulwani, Dany Rouhana, Rishabh Singh, Benjamin Goth Zorn, Ramarathnam Venkatesan
-
Patent number: 9891895Abstract: Systems and methods for increasing user confidence in results that are produced by one or more programs that are generated by an underlying Programming-By-Example (PBE) system based on user input examples. A plurality of generated programs that have been generated using one or more user input examples that are indicative of an output that should be achieved to comply with a user determined result are received. The generated programs are narrowed based on one or more sub-expressions of the programs that are likely to cause the resultant program to comply with the user determined result. The one or more sub-expressions are exposed. Input that selects at least one of the one or more exposed sub-expressions to thereby identify the one of the generated programs that will result in the user determined result is received.Type: GrantFiled: September 14, 2015Date of Patent: February 13, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Sumit Gulwani, Benjamin Goth Zorn, Rishabh Singh, Mark Marron, Oleksandr Polozov, Vu Minh Le, Mikael Mayer, Gustavo Araujo Soares, Maxim Grechkin
-
Publication number: 20170075661Abstract: Systems and methods for increasing user confidence in results that are produced by one or more programs that are generated by an underlying Programming-By-Example (PBE) system based on user input examples. A plurality of generated programs that have been generated using one or more user input examples that are indicative of an output that should be achieved to comply with a user determined result are received. The generated programs are narrowed based on one or more sub-expressions of the programs that are likely to cause the resultant program to comply with the user determined result. The one or more sub-expressions are exposed. Input that selects at least one of the one or more exposed sub-expressions to thereby identify the one of the generated programs that will result in the user determined result is received.Type: ApplicationFiled: September 14, 2015Publication date: March 16, 2017Inventors: Sumit Gulwani, Benjamin Goth Zorn, Rishabh Singh, Mark Marron, Oleksandr Polozov, Vu Minh Le, Mikael Mayer, Gustavo Araujo Soares, Maxim Grechkin
-
Patent number: 9038185Abstract: Techniques for execution of multiple execution paths are described. In one or more embodiments, an execution of a portion of executable code is conditioned upon a particular environment-specific value. For example, the execution of the executable code can cause one type of output if the value of the variable equals a particular value, and can cause a different type of output if the value of the variable equals a different value. Techniques discussed herein can enable the executable code to be executed such that multiple outputs are produced, e.g., by executing the code according to the different values for the variable. In implementations, the multiple outputs can be analyzed for various attributes, such as presence of malware, implementation and coding errors, and so on.Type: GrantFiled: December 28, 2011Date of Patent: May 19, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Benjamin Livshits, Benjamin Goth Zorn, Christian Seifert, Clemens Kolbitsch
-
Patent number: 8713679Abstract: This document describes techniques for detection of code-based malware. According to some embodiments, the techniques utilize a collection of known malicious code and know benign code and determine which features of each type of code can be used to determine whether unclassified code is malicious or benign. The features can then be used to train a classifier (e.g., a Bayesian classifier) to characterize unclassified code as malicious or benign. In at least some embodiments, the techniques can be used as part of and/or in cooperation with a web browser to inspect web content (e.g., a web page) to determine if the content includes code-based malware.Type: GrantFiled: February 18, 2011Date of Patent: April 29, 2014Assignee: Microsoft CorporationInventors: Benjamin Goth Zorn, Benjamin Livshits, Charles M. Curtsinger, Christian Seifert
-
Publication number: 20130174258Abstract: Techniques for execution of multiple execution paths are described. In one or more embodiments, an execution of a portion of executable code is conditioned upon a particular environment-specific value. For example, the execution of the executable code can cause one type of output if the value of the variable equals a particular value, and can cause a different type of output if the value of the variable equals a different value. Techniques discussed herein can enable the executable code to be executed such that multiple outputs are produced, e.g., by executing the code according to the different values for the variable. In implementations, the multiple outputs can be analyzed for various attributes, such as presence of malware, implementation and coding errors, and so on.Type: ApplicationFiled: December 28, 2011Publication date: July 4, 2013Applicant: Microsoft CorporationInventors: Benjamin Livshits, Benjamin Goth Zorn, Christian Seifert, Clemens Kolbitsch
-
Publication number: 20120216280Abstract: This document describes techniques for detection of code-based malware. According to some embodiments, the techniques utilize a collection of known malicious code and know benign code and determine which features of each type of code can be used to determine whether unclassified code is malicious or benign. The features can then be used to train a classifier (e.g., a Bayesian classifier) to characterize unclassified code as malicious or benign. In at least some embodiments, the techniques can be used as part of and/or in cooperation with a web browser to inspect web content (e.g., a web page) to determine if the content includes code-based malware.Type: ApplicationFiled: February 18, 2011Publication date: August 23, 2012Applicant: MICROSOFT CORPORATIONInventors: Benjamin Goth Zorn, Benjamin Livshits, Charles M. Curtsinger, Christian Seifert
-
Publication number: 20120192051Abstract: Data formatting rules to convert data from one form to another form are automatically determined based on a user's edits. A machine learning heuristic is applied to a user's edits to determine a data formatting rule that may be applied to data. For example, a user may make edits that add/remove characters from data, concatenate data, extract data, rename data, and the like. The machine learning heuristic may be automatically triggered in response to an event (e.g. after a predetermined number of edits are made to a same type of data) or manually triggered (e.g. selecting a user interface option). The data formatting rule may be applied to other data and the results of the formatting reviewable by the user. Based on further edits/reviews, the data formatting rule may be updated. The data formatting rules may be stored for later use.Type: ApplicationFiled: January 26, 2011Publication date: July 26, 2012Applicant: MICROSOFT CORPORATIONInventors: Chad Rothschiller, Daniel Battagin, Christopher Benedict, Rodrigo Moreira-Silveira, Dmitri O. Danilov, Eric Cohen, Sumit Gulwani, Dany Rouhana, Rishabh Singh, Benjamin Goth Zorn, Ramarathnam Venkatesan
-
Publication number: 20110219357Abstract: A method described herein includes at a computing device, receiving, over a network connection, a data packet from an external source, wherein the data packet comprises a compressed abstract syntax tree (AST)-based representation of source code written in a scripting language. The method further includes decompressing the compressed AST-based representation of the source code to generate a decompressed AST. The method also includes causing at least one processor on the computing device to execute at least one instruction represented in the decompressed AST subsequent to the compressed AST-based representation of the source code being decompressed.Type: ApplicationFiled: March 2, 2010Publication date: September 8, 2011Applicant: Microsoft CorporationInventors: Benjamin Livshits, Benjamin Goth Zorn, Martin Burtscher, Gaurav Sinha
-
Publication number: 20110191848Abstract: A method disclosed herein includes acts of receiving code at a Just-in-Time compiler executing in an application on a computing device and compiling the code to generate machine code and causing the machine code to be placed on at least one page that is accessible by at least one processor on the computing device, wherein the Just-in-Time compiler compiles the code utilizing at least one technique for preventing a Just-in-Time spraying attack.Type: ApplicationFiled: February 3, 2010Publication date: August 4, 2011Applicant: Microsoft CorporationInventors: Benjamin Goth Zorn, Benjamin Livshits, Reid Borsuk, John Joseph Lambert, Matthew Ryan Miller, Louis Lafreniere, Peter Stuart Beck, Joshua Theodore Goodman, Timothy William Burrell, Steven Edward Lucco