Patents by Inventor Rishabh Singh
Rishabh Singh 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: 11487522Abstract: Training and/or utilization of a neural decompiler that can be used to generate, from a lower-level compiled representation, a target source code snippet in a target programming language. In some implementations, the lower-level compiled representation is generated by compiling a base source code snippet that is in a base programming language, thereby enabling translation of the base programming language (e.g., C++) to a target programming language (e.g., Python). In some of those implementations, output(s) from the neural decompiler indicate canonical representation(s) of variables. Technique(s) can be used to match those canonical representation(s) to variable(s) of the base source code snippet. In some implementations, multiple candidate target source code snippets are generated using the neural decompiler, and a subset (e.g., one) is selected based on evaluation(s).Type: GrantFiled: May 12, 2021Date of Patent: November 1, 2022Assignee: X DEVELOPMENT LLCInventors: Rishabh Singh, Nisarg Vyas, Jayendra Parmar, Dhara Kotecha, Artem Goncharuk, David Andre
-
Patent number: 11481210Abstract: Implementations are described herein for using machine learning to perform various tasks related to migrating source code based on relatively few (“few shots”) demonstrations. In various implementations, an autoregressive language model may be conditioned based on demonstration tuple(s). In some implementations, a demonstration tuple may include a pre-migration version of a first source code snippet and a post-migration version of the first source code snippet. In other implementations, demonstration tuples may include other data, such as intermediate forms (e.g., natural language descriptions or pseudocode), input-output pairs demonstrating intended behavior, etc. The autoregressive language model may be trained on corpora of source code and natural language documentation on the subject of computer programming.Type: GrantFiled: December 29, 2020Date of Patent: October 25, 2022Assignee: X DEVELOPMENT LLCInventors: Rishabh Singh, David Andre, Bin Ni, Owen Lewis
-
Patent number: 11481195Abstract: Techniques are described herein for automatically synthesizing programs that include one or more functions in a spreadsheet programming language. A method includes: receiving a first example including input provided in a first cell in a spreadsheet; automatically synthesizing a plurality of candidate programs including a first set of candidate programs consistent with the first example, wherein each candidate program in the first set of candidate programs comprises at least one function in a spreadsheet programming language and, when the candidate program is executed, the candidate program generates output that matches the first example; ranking the plurality of candidate programs; and storing a highest-ranked program of the plurality of candidate programs in association with the first cell in the spreadsheet.Type: GrantFiled: December 15, 2020Date of Patent: October 25, 2022Assignee: GOOGLE LLCInventors: Rishabh Singh, Aaron Zemach, Chiraag Galaiya, Dima Brezhnev, David Lick, Francisco Velasquez, Max Lin, Neha Bhargava, Peilun Zhang, Rahul Srinivasan, Simon Tong, Victoria Taylor, Vishnu Sivaji, Zifan Xiao
-
Publication number: 20220318223Abstract: Methods for rowgroup consolidation with delta accumulation and versioning in distributed systems are performed. The systems provide performant methods of row storage that enable versioned modifications of data while keeping and allowing access to older versions of the data for point-in-time transactions. The accumulation of valid rows, deletes, and modifications is maintained in blobs for rowgroups until a size threshold is reached, at which point the rows are moved into a columnar compressed form. Changes to data and associated metadata are stored locally and globally via appends, maintaining logical consistency. Metadata is stored in footers of files allowing faster access to the metadata and its associated data for transactions and instant rollback via metadata version flipping for aborted transactions, as well as lock-free reads of data.Type: ApplicationFiled: June 25, 2021Publication date: October 6, 2022Inventors: Rishabh Singh AHLUWALIA, Tianhui SHI, Srikumar RANGARAJAN, Steven John LINDELL, Sandeep LINGAM
-
Patent number: 11461081Abstract: Implementations are described herein for adapting existing source code snippets to new contexts. In various implementations, a command may be detected to incorporate an existing source code snippet into destination source code. An embedding may be generated based on the existing source code snippet, e.g., by processing the existing source code snippet using an encoder. The destination source code may be processed to identify one or more decoder constraints. Subject to the one or more decoder constraints, the embedding may be processed using a decoder to generate a new version of the existing source code snippet that is adapted to the destination source code.Type: GrantFiled: January 27, 2021Date of Patent: October 4, 2022Assignee: X DEVELOPMENT LLCInventors: Qianyu Zhang, Bin Ni, Rishabh Singh, Olivia Hatalsky
-
Publication number: 20220236971Abstract: Implementations are described herein for adapting existing source code snippets to new contexts. In various implementations, a command may be detected to incorporate an existing source code snippet into destination source code. An embedding may be generated based on the existing source code snippet, e.g., by processing the existing source code snippet using an encoder. The destination source code may be processed to identify one or more decoder constraints. Subject to the one or more decoder constraints, the embedding may be processed using a decoder to generate a new version of the existing source code snippet that is adapted to the destination source code.Type: ApplicationFiled: January 27, 2021Publication date: July 28, 2022Inventors: Qianyu Zhang, Bin Ni, Rishabh Singh, Olivia Hatalsky
-
Publication number: 20220206785Abstract: Implementations are described herein for using machine learning to perform various tasks related to migrating source code based on relatively few (“few shots”) demonstrations. In various implementations, an autoregressive language model may be conditioned based on demonstration tuple(s). In some implementations, a demonstration tuple may include a pre-migration version of a first source code snippet and a post-migration version of the first source code snippet. In other implementations, demonstration tuples may include other data, such as intermediate forms (e.g., natural language descriptions or pseudocode), input-output pairs demonstrating intended behavior, etc. The autoregressive language model may be trained on corpora of source code and natural language documentation on the subject of computer programming.Type: ApplicationFiled: December 29, 2020Publication date: June 30, 2022Inventors: Rishabh Singh, David Andre, Bin Ni, Owen Lewis
-
Publication number: 20220179625Abstract: The present disclosure provides systems and methods for synthesizing computer-readable code based on the receipt of input and output examples. A computing system in accordance with the disclosure can be configured to receive a given input and output, access and library of operations, and perform a search of a library of operations (e.g., transpose, slice, norm, etc.) that can be applied to the input. By applying the operations to the input and tracking the results, the computing system may identify an expression comprising one or a combination of operations that when applied to the input generates the output. In this manner, implementations of the disclosure may be used to identify one or more solutions that a user having access to the library of operations may use to generate the output from the input.Type: ApplicationFiled: February 21, 2022Publication date: June 9, 2022Inventors: Kensen Shi, Rishabh Singh, David J. Bieber
-
Patent number: 11256485Abstract: The present disclosure provides systems and methods for synthesizing computer-readable code based on the receipt of input and output examples. A computing system in accordance with the disclosure can be configured to receive a given input and output, access and library of operations, and perform a search of a library of operations (e.g., transpose, slice, norm, etc.) that can be applied to the input. By applying the operations to the input and tracking the results, the computing system may identify an expression comprising one or a combination of operations that when applied to the input generates the output. In this manner, implementations of the disclosure may be used to identify one or more solutions that a user having access to the library of operations may use to generate the output from the input.Type: GrantFiled: July 15, 2020Date of Patent: February 22, 2022Assignee: Google LLCInventors: Kensen Shi, Rishabh Singh, David J. Bieber
-
Publication number: 20220043863Abstract: Presented herein are systems, methods, and computer implemented products for persisting queries or filters originating from reports within one dashboard and propagating such queries or filters to reports in other dashboards within an information management user interface environment. Typical information management dashboard user interfaces do not persist or propagate filters originating from one dashboard and apply such filters across multiple related dashboards to generate more granular details of the files and data within the information management environment. By persisting and propagating selected filters across multiple dashboards, the invention presented herein allow for more efficient search, analysis, and execution of certain information management actions based on the queried information.Type: ApplicationFiled: August 7, 2020Publication date: February 10, 2022Inventors: Tanmay Garg, Rishabh Singh
-
Patent number: 11232650Abstract: Systems, methods, and processing nodes determine and perform preventive maintenance on a transport vehicle in a transportation system. The method includes extracting features for previous incidents that have occurred to a plurality of transport vehicles in the transportation system. The method also includes determining a criticality of types of incidents based on the features extracted. The method includes predicting, based on the criticality of types of incidents and the features extracted, details of at least one future incident for a first transport vehicle from the plurality of transport vehicles. The details include a predicted type of the at least one future incident, a predicted time of the at least one future incident, and a predicted criticality of the at least one future incident. Additionally, the method includes performing a prescriptive action for the first transport vehicle to mitigate the at least one future incident in the first transport vehicle.Type: GrantFiled: September 14, 2018Date of Patent: January 25, 2022Assignee: Conduent Business Services, LLCInventors: Arun Rajkumar, Sriranjani Ramakrishnan, Shisagnee Banerjee, Rishabh Singh, Kowshik Chilamkurthi, Prateek Yadav, Narayanan Unny
-
Patent number: 11200139Abstract: In one embodiment, information (workload, performance, and configuration) is obtained about identified sub-systems (a target component plus other components that influence its performance). The identified sub-systems are clustered into workload clusters and also into performance clusters, where identified sub-systems of particular workload clusters have similar workload measurements, and identified sub-systems of particular performance clusters have similar performance metrics. The techniques herein then determine a given mapped performance cluster for a given workload cluster that corresponds to a best set of performance metrics from among all performance clusters mapped to the given workload cluster.Type: GrantFiled: January 16, 2020Date of Patent: December 14, 2021Assignee: Cisco Technology, Inc.Inventors: Rishabh Singh, Saket Mehta, Prerana Singhal
-
Publication number: 20210382697Abstract: Techniques are described herein for automatically synthesizing programs that include one or more functions in a spreadsheet programming language. A method includes: receiving a first example including input provided in a first cell in a spreadsheet; automatically synthesizing a plurality of candidate programs including a first set of candidate programs consistent with the first example, wherein each candidate program in the first set of candidate programs comprises at least one function in a spreadsheet programming language and, when the candidate program is executed, the candidate program generates output that matches the first example; ranking the plurality of candidate programs; and storing a highest-ranked program of the plurality of candidate programs in association with the first cell in the spreadsheet.Type: ApplicationFiled: December 15, 2020Publication date: December 9, 2021Inventors: Rishabh Singh, Aaron Zemach, Chiraag Galaiya, Dima Brezhnev, David Lick, Francisco Velasquez, Max Lin, Neha Bhargava, Peilun Zhang, Rahul Srinivasan, Simon Tong, Victoria Taylor, Vishnu Sivaji, Zifan Xiao
-
Publication number: 20210383060Abstract: Techniques are described herein for automatically synthesizing programs that include one or more functions in a spreadsheet programming language. A method includes: receiving first user input in a first cell in a spreadsheet; automatically synthesizing a program using the first user input in the first cell as a first example, where the program includes at least one function in a spreadsheet programming language and, when the program is executed, the program generates output that matches the first example; determining at least one additional cell in the spreadsheet that is related to the first cell; determining that a display triggering condition is satisfied; and in response to the determining that the display triggering condition is satisfied, displaying, in each of the at least one additional cell, an output of the program corresponding to the additional cell.Type: ApplicationFiled: December 15, 2020Publication date: December 9, 2021Inventors: Rishabh Singh, Aaron Zemach, Chiraag Galaiya, Dima Brezhnev, David Lick, Francisco Velasquez, Max Lin, Neha Bhargava, Peilun Zhang, Rahul Srinivasan, Simon Tong, Victoria Taylor, Vishnu Sivaji, Zifan Xiao
-
Patent number: 11080475Abstract: A device includes a logic machine and a data-holding machine having instructions executable by the logic machine to receive a spreadsheet including a plurality of cells, apply an abstraction to the spreadsheet that defines one or more features of a cell set including one or more cells of the plurality of cells to form an abstracted representation of the spreadsheet, form, for the cell set, an input vector for a machine-learning prediction function from the abstracted representation of the spreadsheet, the machine-learning prediction function configured to output a prediction of one or more properties of the cell set based on the input vector, wherein the machine-learning prediction function is previously trained based on a plurality of previously-created spreadsheets, provide the input vector to the machine-learning prediction function; and output the prediction from the machine-learning prediction function.Type: GrantFiled: January 17, 2017Date of Patent: August 3, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Rishabh Singh, Ben Livshits, Benjamin G. Zorn
-
Publication number: 20210224178Abstract: In one embodiment, information (workload, performance, and configuration) is obtained about identified sub-systems (a target component plus other components that influence its performance). The identified sub-systems are clustered into workload clusters and also into performance clusters, where identified sub-systems of particular workload clusters have similar workload measurements, and identified sub-systems of particular performance clusters have similar performance metrics. The techniques herein then determine a given mapped performance cluster for a given workload cluster that corresponds to a best set of performance metrics from among all performance clusters mapped to the given workload cluster.Type: ApplicationFiled: January 16, 2020Publication date: July 22, 2021Inventors: Rishabh Singh, Saket Mehta, Prerana Singhal
-
Patent number: 10983853Abstract: Provided are methods and systems for automatically generating input grammars for grammar-based fuzzing by utilizing machine-learning techniques and sample inputs. Neural-network-based statistical learning techniques are used for the automatic generation of input grammars. Recurrent neural networks are used for learning a statistical input model that is also generative in that the model is used to generate new inputs based on the probability distribution of the learnt model.Type: GrantFiled: June 30, 2017Date of Patent: April 20, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Patrice Godefroid, Rishabh Singh, Hila Peleg
-
Publication number: 20210019125Abstract: The present disclosure provides systems and methods for synthesizing computer-readable code based on the receipt of input and output examples. A computing system in accordance with the disclosure can be configured to receive a given input and output, access and library of operations, and perform a search of a library of operations (e.g., transpose, slice, norm, etc.) that can be applied to the input. By applying the operations to the input and tracking the results, the computing system may identify an expression comprising one or a combination of operations that when applied to the input generates the output. In this manner, implementations of the disclosure may be used to identify one or more solutions that a user having access to the library of operations may use to generate the output from the input.Type: ApplicationFiled: July 15, 2020Publication date: January 21, 2021Inventors: Kensen Shi, Rishabh Singh, David J. Bieber
-
Patent number: 10817552Abstract: Generally discussed herein are devices, systems, and methods for encoding input-output examples. A method of generating a program using an encoding of input-output examples, may include processing an input example of the input-output examples, using a first long short term memory (LSTM) neural network, one character at a time to produce an input feature vector, processing an output example associated with the input example in the input-output examples, using the LSTM neural network, one character at a time to produce an output feature vector, determining (a) a cross-correlation between the input feature vector and the output feature vector or (b) previously computed feature vectors for a different input-output example that are sufficiently close to the input feature vector and the output feature vector, respectively, and using the determined cross-correlation or previously computed vector, generating a program consistent with the input example and the output example.Type: GrantFiled: March 27, 2017Date of Patent: October 27, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Abdelrahman S. A. Mohamed, Pushmeet Kohli, Rishabh Singh, Emilio Parisotto
-
Patent number: D911098Type: GrantFiled: August 20, 2018Date of Patent: February 23, 2021Assignee: S. C. Johnson & Son, Inc.Inventors: Matthew N. Thurin, Rishabh Singh, Christopher M. Wlezien, Peter I. Capraro, Allan Freas Velzy