GENERATING LEARNED REPRESENTATIONS OF DIGITAL CIRCUIT DESIGNS

    公开(公告)号:US20240273270A1

    公开(公告)日:2024-08-15

    申请号:US18564797

    申请日:2022-05-31

    Applicant: Google LLC

    CPC classification number: G06F30/323 G06F30/33

    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for generating learned representations of digital circuit designs. One of the systems includes obtaining data representing a program that implements a digital circuit design, the program comprising a plurality of statements; processing the obtained data to generate data representing a graph representing the digital circuit design, the graph comprising: a plurality of nodes representing respective statements of the program, a plurality of first edges each representing a control flow between a pair of statements of the program, and a plurality of second edges each representing a data flow between a pair of statements of the program; and generating a learned representation of the digital circuit design, comprising processing the data representing the graph using a graph neural network to generate a respective learned representation of each statement represented by a node of the graph.

    Systems and Methods for Synthesizing Code from Input and Output Examples

    公开(公告)号:US20230185545A1

    公开(公告)日:2023-06-15

    申请号:US18165047

    申请日:2023-02-06

    Applicant: Google LLC

    CPC classification number: G06F8/36 G06F16/24 G06N5/04 G06N20/00

    Abstract: 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.

    ITERATIVE NEURAL CODE TRANSLATION

    公开(公告)号:US20240394025A1

    公开(公告)日:2024-11-28

    申请号:US18792153

    申请日:2024-08-01

    Applicant: GOOGLE LLC

    Abstract: Techniques are described herein for iterative code generation using neural language models. In various implementations, an original source code snippet in a first programming language may be processed using a translation machine learning model to generate a first translation of the original source code snippet in a second programming language. The first translation of the original source code snippet may be evaluated to identify error(s) in the first translation. Based on the error(s), respective mask(s) may be inserted to generate a masked first translation of the original source code snippet in the second programming language. The masked first translation of the original source code snippet may be processed using the translation machine learning model to generate a second translation of the original source code snippet in the second language. The second translation may include infill(s) of corrected source code in place of one or more of the masks.

    Translating large source code using sparse self- attention

    公开(公告)号:US12093671B2

    公开(公告)日:2024-09-17

    申请号:US17731593

    申请日:2022-04-28

    Applicant: Google LLC

    CPC classification number: G06F8/51

    Abstract: Techniques are described herein for translating source code using sparse-self attention. In various implementations, a source code snippet in a first programming language may be processed to obtain graph(s) representing snippet tokens, and relationships therebetween. Based on the graph(s), a subset of snippet token pairs may be identified from a superset of all possible token pairs in the source code snippet. Each token pair of the subset may include snippet tokens that are represented by nodes connected by one or more edges of the one or more graphs. A self-attention network of a translation machine learning model may be adapted to sparsely attend across the identified subset of token pairs. The source code snippet may then be processed based on the adapted translation machine learning model to generate a translation of the source code snippet in the second programming language.

    Systems and Methods for Synthesizing Code from Input and Output Examples

    公开(公告)号:US20240211218A1

    公开(公告)日:2024-06-27

    申请号:US18529387

    申请日:2023-12-05

    Applicant: Google LLC

    CPC classification number: G06F8/36 G06F16/24 G06N5/04 G06N20/00

    Abstract: 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.

    HIERARCHICAL TRANSLATION BETWEEN LOW-LEVEL PROGRAMMING LANGUAGES AND HIGH-LEVEL PROGRAMMING LANGUAGES

    公开(公告)号:US20240184556A1

    公开(公告)日:2024-06-06

    申请号:US18076199

    申请日:2022-12-06

    Applicant: Google LLC

    Inventor: Rishabh Singh

    CPC classification number: G06F8/51 G06N20/00

    Abstract: Techniques are described herein for translating between low-level languages and high-level languages. A method includes: receiving first source code in assembly language, the first source code including a plurality of code blocks, and each code block of the plurality of code blocks including a plurality of lines of assembly code; for each of the plurality of code blocks: for each of the plurality of lines of assembly code in the code block, processing the line of assembly code to generate a natural language description of the line of assembly code; and processing the code block and the natural language descriptions of the plurality of lines of assembly code in the code block to generate a natural language description of the code block; and processing the natural language descriptions of the plurality of code blocks to generate a natural language description of the first source code.

    PREDICTING AND/OR APPLYING SYMBOLIC TRANSFORMATION TEMPLATES

    公开(公告)号:US20240176604A1

    公开(公告)日:2024-05-30

    申请号:US18070015

    申请日:2022-11-28

    Applicant: Google LLC

    CPC classification number: G06F8/51

    Abstract: Implementations are described herein for predicting symbolic transformation templates to automate source code transformations. In various implementations, pair(s) of predecessor and successor source code snippets may be processed using a symbolic transformation template prediction (STTP) model to predict a symbolic transformation template that includes a predecessor portion that matches the predecessor source code snippet(s) of the pair(s) and a successor portion that matches the successor source code snippet(s) of the pair(s). At least one additional predecessor source code snippet may be identified that matches the predecessor portion of the predicted symbolic transformation template. Placeholders of the predecessor portion of the predicted symbolic transformation template may be bound to one or more tokens of the at least one additional predecessor source code snippet to create binding(s). The successor portion of the predicted symbolic transformation template may be applied to the bindings to generate additional successor source code snippet(s).

    Systems and methods for synthesizing code from input and output examples

    公开(公告)号:US11573774B2

    公开(公告)日:2023-02-07

    申请号:US17676601

    申请日:2022-02-21

    Applicant: Google LLC

    Abstract: 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.

Patent Agency Ranking