G06F8/436

Reducing semantic errors in code generated by machine learning models

Embodiments are disclosed for a method. The method includes identifying a prefix updated by a searcher of a machine learning model. The machine learning model is configured to generate source code in a programming language. The method also includes determining whether the prefix violates a semantic correctness property of the programming language. Additionally, the method includes instructing the searcher, in response to the determination, to prune the prefix from a set of prefixes under consideration by the searcher.

GENERATING RULES FOR MIGRATING DEPENDENCIES OF A SOFTWARE APPLICATION
20230098941 · 2023-03-30 ·

Rules can be generated for migrating dependencies of a software application. For example, a computing device can receive a source version of a dependency of a software application and a target version of the dependency of the software application. The computing device can compare the source version to the target version to determine a difference between the source version and the target version. The computing device can receive a template for a rule indicating a location in the source version to be modified for the software application to support the target version. The template can include a fillable section. The computing device can populate the fillable section of the template with a value based on the difference between the source version and the target version.

CODE RETRIEVAL BASED ON MULTI-CLASS CLASSIFICATION
20230100208 · 2023-03-30 · ·

According to an aspect of an embodiment, operations include receiving a set of NL descriptors and a corresponding set of PL codes. The operations further include determining a first vector associated with each NL descriptor and a second vector associated with each PL code, using language models. The operations further include determining a number of a set of semantic code classes to cluster the set of PL codes into the set of semantic code classes, based on the number, the first vector, and the second vector. The operations further include training a multi-class classifier model to predict a semantic code class, from the set of semantic code classes, corresponding to an input NL descriptor. The operations further include selecting an intra-class predictor model based on the predicted semantic code class. The operations further include training the intra-class predictor model to predict a PL code corresponding to the input NL descriptor.

METHOD AND SYSTEM FOR IDENTIFYING STATIC ANALYSIS ALARMS BASED ON SEMANTICS OF CHANGED SOURCE CODE

This disclosure relates generally to method and system for identifying static analysis alarms based on semantics of changed source code. The disclosed technique is integrated in the proprietary static analysis tool that identifies semantics of the change and reports only impacted alarms. The method receives source code and a property over variables to be verified for identifying one or more impacted alarms. Further, an incremental analysis based on the one or more change program points are performed to mark one or more impacted functions in the current version of the source code and then generating a data flow analysis (DFA) and a program dependence graph (PDG) for the one or more impacted functions. Further, a change-based alarm identification technique is utilized for the one or more impacted static analysis alarms from the one or more impacted functions in the current version of source code based on semantics of change.

Generating closures from abstract representation of source code
11474797 · 2022-10-18 · ·

A device may receive source code and identify, based on the source code, an abstract syntax tree representing an abstract syntactic structure of the source code. Based on the abstract syntax tree, the device may identify a closure, the closure implementing a function based on at least a portion of the abstract syntax tree. In addition, the device may perform an action based on the closure.

Detecting misconfiguration and/or bug(s) in large service(s) using correlated change analysis

Described herein is a system and method for detecting correlated changes (e.g., between code files and configuration files). For a plurality of code files and a plurality of configuration files, a correlated change model is trained to identify correlated changes across the code files and the configuration files using a machine learning algorithm that discovers change rules using a support parameter, and, a confidence parameter, and, a refinement algorithm that refines the discovered change rules. The correlated change model comprising the change rules is stored. The correlated change model can be used to identify potential issue(s) regarding a particular file (e.g., changed code or configuration file(s)). Information regarding the identified potential issue(s) can be provided to a user.

Methods, systems, articles of manufacture and apparatus to identify code semantics
11635949 · 2023-04-25 · ·

Methods, apparatus, systems, and articles of manufacture are disclosed to identify code semantics. An example apparatus includes processor circuitry to perform at least one of first, second, or third operations to instantiate validated repository parse circuitry to identify embedding values corresponding to validated code, syntax analysis circuitry to identify syntax information based on statistical recurrence metrics of the embedding values, bidirectional model circuitry to train a forward semantic model and a backward semantic model based on (a) semantic information corresponding to the syntax information and (b) divisional segmentation information corresponding to the syntax information, and target repository mining circuitry to generate target code model input fragments including learned syntactic information, learned semantic information, and learned divisional segmentation information, the target code model input fragments to facilitate inference with the forward semantic model and the backward semantic model.

Perceptible Indicators That Wires are Attached Correctly to Controller
20230120713 · 2023-04-20 ·

Tools and techniques are described to automate line testing when wiring devices (such as equipment and sensors) to controllers. Controllers have access to databases of the devices that are controlled by them, including wiring diagrams and protocols, such that the controller can automatically check that each wire responds correctly to stimulus from the controller. After testing, a reporting device rapidly shows the results of the line testing.

WHAT-IF ANALYSIS FOR NOTEBOOKS
20230161686 · 2023-05-25 ·

Methods and systems provide for a notebook interactive programming environment, having out-of-order code-cell execution, which communicates potential cell execution outcomes. If an event handler receives an event (e.g., open notebook, code change, code execution, etc.) for a cell, without a request for a specific type of analysis (e.g., data-leakage, stale-state), intra-cell analysis is executed based-on the cell’s abstract semantics, and an abstract state and pre-summaries are output that indicate the cell’s propagation dependency (unbounded variables). If an analysis is associated with the event, starting with the stored abstract state, inter-cell analysis is recursively executed on successor cells having propagation dependencies, until a terminating criteria is reached. Outcomes (e.g., affected cell, line number, bug type, metrics, etc.) are sent via the notebook user-interface to warn users, ahead of concrete code execution, of hypothetical unsafe or safe actions in executing the notebook’s code cells.

Quantum Computing with Hybrid Memory Cube for Data Centers
20230162072 · 2023-05-25 ·

A quantum computing device configured to receive code written using one or more of a plurality of programming languages and convert the received code into quantum assembly language that can be executed by one or more quantum processing units of the quantum computing device. The quantum computing device also includes a hybrid memory cube storage device configured to function as storage for the high data throughput rates associated with the quantum processing units.