G06F8/447

RANDOMIZED COMPILER OPTIMIZATION SELECTION FOR IMPROVED COMPUTER SECURITY

A method and system provide the ability to compile computer source code. The source code is pre-processed to generate pure source code that includes definitions required for interpretation. The pure source code is formalized in a compiler, into assembly language that is processor specific. The formalization includes determining a set of two or more optimization routines, randomly selecting a selected optimization routine from the set of two or more optimization routines, and applying the selected optimization routine to each segment of the pure source code in a serialized manner. An executable binary file is then output and executed based on the formalized pure source code.

CONVOLUTIONAL NEURAL NETWORK COMPILER FOR PROGRAMMABLE FUNCTIONAL ARRAY (PFA) PROCESSORS
20230070947 · 2023-03-09 ·

Convolutional neural network compilers for programmable functional array processors are provided. One such compiler involves a method for fitting a convolutional neural network (CNN) to a CNN processor to be performed by a compiler, the method comprising: receiving a CNN; converting the CNN into a CNN graph; converting the CNN graph into a memory graph comprising graph primitives corresponding to a plurality of components of the CNN processor including a primary memory; performing a memory analysis to determine an amount of memory required in the primary memory for at least one of the graph primitives; identifying a plurality of tokens within the memory graph to form a token graph, each of the plurality of tokens comprising one or more of the graph primitives; and generating, using the plurality of identified tokens, configuration settings for each of the plurality of components of the CNN processor.

EXTENDING APPLICATION LIFECYCLE MANAGEMENT TO USER-CREATED APPLICATION PLATFORM COMPONENTS

The examples described herein extend application lifecycle management (ALM) processes (e.g., create, update, delete, retrieve, import, export, uninstall, publish) to user-created application platform components. First and second components are generated within an application platform. The first component is customized at least by indicating whether the first component is subject to localization, defining a layering of the first component, and indicating whether the first component is protected from downstream modification. The second component is customized in accordance with customizing the first component, and is further customized by defining a dependency of the second component on the first component. The components are deployed in a target environment with metadata representing the customizations and enabling the ALM processes.

Accessing a migrated member in an updated type

Techniques for accessing a migrated method include: identifying a request to invoke a method defined by a type, the request including one or more arguments associated with respective argument types; identifying, in the type, an older version of the method associated with (a) a method name and (b) a first set of one or more parameter types, and a current version of the method associated with (a) the method name and (b) a second set of one or more parameter types; determining that the argument type(s) match(es) the first set of one or more parameter types; responsive to determining that the argument type(s) match(es) the first set of one or more parameter types: applying one or more conversion functions to convert the argument(s) to the second set of one or more parameter types; executing the current version of the method using the converted argument(s).

Arithmetic enhancement of C-like smart contracts for verifiable computation

A system converts high level source code into an arithmetic circuit that represents the functionality expressed in the source code, such as a smart contract as used in relation to a blockchain platform. The system processes a portion of high level source code to generate an arithmetic circuit. The arithmetic circuit comprises one or more arithmetic gates arranged to represent at least some of the functionality expressed in the source code.

Static enforcement of provable assertions at compile
11474795 · 2022-10-18 · ·

Embodiments described herein provide for a non-transitory machine-readable medium storing instructions to cause one or more processors to perform operations processing, in an integrated development environment, a set of program code to identify an assertion within the set of program code; determining compile-time provability of a condition specified by the assertion; and presenting an error condition in response to failing to determine compile-time provability of the condition specified by the assertion, wherein determining compile-time provability of the condition specified by the assertion includes semantically converting the condition specified by the assertion into a Boolean, reducing the Boolean to an intermediate representation, and processing the intermediate representation to detect an expression within the intermediate representation that is non-constant at compile-time.

Computer architecture for executing quantum programs
11599344 · 2023-03-07 · ·

A computer system, designed according to a particular architecture, compiles and execute a general quantum program. Computer systems designed in accordance with the architecture are suitable for use with a variety of programming languages and a variety of hardware backends. The architecture includes a classical computer and a quantum device (which may be remote from the local computer) which includes both classical execution units and a quantum processing unit (QPU).

Language interoperability to automate code analysis

Language interoperability between source code programs not compatible with an interprocedural static code analyzer is achieved through language-independent representations of the programs. The source code programs are transformed into respective intermediate language instructions from which a language-independent control flow graph and a language-independent type environment is created. A program compatible with the interprocedural static code analyzer is generated from the language-independent control flow graph and the language-independent type environment in order to utilize the interprocedural static code analyzer to detect memory safety faults.

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.

A System and Method for Development and Distribution of Mobility Solutions
20220326923 · 2022-10-13 ·

A system provides a framework/platform for development and distribution of solutions related to vehicles. A processor is configured to render a plurality of modules in at least one terminal device based on an access request. The plurality of modules is displayable on a display interface of the at least one terminal device. The processor is further configured to execute instructions generated from the plurality of modules for development of the solutions. The instructions are generated by a user of the at least one terminal device, which is in communication with a server. The plurality of modules is accessible through an input unit of the at least one terminal device, each of the plurality of modules is usable alone and in combination. The processor stores the developed solutions in the server for distribution.