CN117311678B - Equivalent embedding method for synthesizing program module sequencing group function of AI system - Google Patents

Equivalent embedding method for synthesizing program module sequencing group function of AI system Download PDF

Info

Publication number
CN117311678B
CN117311678B CN202310991958.0A CN202310991958A CN117311678B CN 117311678 B CN117311678 B CN 117311678B CN 202310991958 A CN202310991958 A CN 202310991958A CN 117311678 B CN117311678 B CN 117311678B
Authority
CN
China
Prior art keywords
sequence
program
tight
order
space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310991958.0A
Other languages
Chinese (zh)
Other versions
CN117311678A (en
Inventor
张霄
黄虹银
马程
邓科
梁倩云
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan University
Original Assignee
Sichuan University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sichuan University filed Critical Sichuan University
Priority to CN202310991958.0A priority Critical patent/CN117311678B/en
Publication of CN117311678A publication Critical patent/CN117311678A/en
Application granted granted Critical
Publication of CN117311678B publication Critical patent/CN117311678B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The invention discloses an equivalent embedding method for synthesizing a program module sequencing group function of an AI system, which comprises the following steps: according to the structure of the AI system flow graph, establishing a program topology space and a program module class topology space, carrying out sequence classification on the program modules by establishing a sequence classification operator and a sequence point judgment operator, and establishing sequence relations among the program modules according to the sequence classification; obtaining the maximum tight sequence of the sequence relation among the program modules according to the tight sequence, and carrying out function synthesis extraction of the sequential assembly of the program modules on the AI system function modules according to the maximum tight sequence; and carrying out formal semanteme on language components of the program language by using formal semanteme to obtain a program flow diagram, obtaining a maximum tight sequence according to the program flow diagram, and obtaining a formal semantic module of an output result of a corresponding functional module according to the maximum tight sequence to complete equivalent embedding of program module sequencing assembly function synthesis of the AI system.

Description

Equivalent embedding method for synthesizing program module sequencing group function of AI system
Technical Field
The invention relates to the field of computers, in particular to an equivalent embedding method for synthesizing a program module sequencing group connection function of an AI system.
Background
For a certain determined AI system, how to split the AI system automatically according to the function size of the AI system can be divided into a plurality of functional modules, so that the local and the whole functions of the AI system are better and objectively described, a user in the non-AI related professional field can objectively and directly understand the AI system, and therefore, the user can propose the suggestion and the requirement of the user for the function and the operation of the AI system by combining the professional knowledge of the user, and the AI system cannot be split automatically according to the function size of the user in the prior art.
Disclosure of Invention
The invention aims to overcome the defects of the prior art and provides an equivalent embedding method for synthesizing a program module sequencing group function of an AI system, which comprises the following steps:
step one, establishing a program topology space and a program module class topology space according to the structure of an AI system flow graph, carrying out order classification on program modules by establishing an order classification operator and an order point judgment operator, and establishing an order relation among the program modules according to the order classification;
Step two, based on the sequence relation among the program modules, obtaining the maximum sequence of the sequence relation among the program modules according to the sequence, and carrying out function synthesis extraction of the sequence assembly of the program modules on the AI system function modules according to the maximum sequence;
and thirdly, carrying out formal semanteme on language components of the program language by using formal semanteme to obtain a program flow diagram, obtaining a maximum tight sequence according to the program flow diagram, obtaining formal semantic modules of output results of corresponding functional modules according to the maximum tight sequence, and completing equivalent embedding of program module sequencing and assembly function synthesis of the AI system.
Further, the establishing a program topology space and a program module class topology space according to the structure of the AI system flow diagram includes:
The collection of program modules is referred to as a program collection, any program module X i being referred to as an element X i in the program collection, for any program collection By/>Is a set of elements:
Called as Power set of/>Is/>Called/>Is a subset family of (a);
The program topology space is as follows:
Is a collection,/> Called a topological space, if set/>The method meets the following conditions:
(i)
(ii) Aggregation Any two of the inner open sets/>Satisfy/>
(iii)Subset/>
The open set of program topology space is a set of a plurality of program modules, and the program topology space isI.e.
The program module class topology space is as follows: if Y is a finite set of n program module classes, then the order of Y is called n, and is noted as Y=n or Y n; the open set of the program module class topology space is a set of a plurality of program module classes, and the program module class topology space is thatI.e./>
Further, the step of establishing the sequence relation between the program modules by establishing the sequence classification operator and the sequence point judgment operator to perform sequence classification on the program modules comprises the following steps:
The sequence classification operator T i is as follows: mapping X i to a pseudo-base Y j:TiXi=Yj in a similar space, wherein X i is a pseudo-base in a program space, Y j is a pseudo-base in the similar space, and the pseudo-base is a program module and a program module class which are irrelevant in characteristics in the program space and the program module class space; obtaining the type of the program module through the sequence classification operator;
The sequence point judgment operator M is as follows: the method is used for judging and classifying the sequence starting point, the sequence ending point and the residual points; the sequence starting point is a sequence starting point of a first program module of a program with a complete function module, and the sequence ending point is a sequence ending point of a last program module of a program with a complete function module; the residual points are program modules which are neither sequence starting points nor sequence ending points; and judging the classification of the program modules and the tight sequence relation among the program modules through a sequence point judging operator.
Further, the tightening sequence is as follows: is provided withFor n in program topology space (n.gtoreq.1 and/>)) Program modules, if the n program modules/>After sequential execution, the program can run, then/>Sequentially form a tight sequence relationship, which is marked as/>
Further, the maximum tight sequence is as follows: no extremely small tight sequence is used as a subsequent tight sequence of the tight sequence, and no extremely small tight sequence takes the tight sequence as the subsequent tight sequence, and the extremely large tight sequence is obtained;
the minimum tight sequence is a tight sequence without a true tight sequence, and the true tight sequence is as follows: is provided with For n program modules in the program topology space, and/>Is a tight order, if s is present (s is not less than 1 and not more than n and/>) Personal program module/>Satisfy the tight sequence relation/>Then call/>Is that Is a sub-tight sequence of (2); if s < n is also satisfied, then/>Is thatIs a true sequence of the seeds;
The subsequent tight sequence is as follows: is provided with Is n+m program modules in program topology space, and/>Are all in tight order, if Also in tight order, the term/>Is thatIs a subsequent order of the sequence.
Further, the function synthesis extraction for performing program module sequential assembly on the AI system function module according to the maximum tight sequence includes:
according to the program modules of the AI system and the tight sequence relation of the program modules, traversing all the extremely tight sequences to complete the function synthesis extraction of the program module ordered assembly.
The beneficial effects of the invention are as follows: the method comprises the steps of firstly establishing a program topological space and a program module class topological space, and completing order classification of program modules by establishing a classification operator and an order point judgment operator. After completing the order classification, we define a new order relation, i.e. a tight order, thus determining the ordered set of "granularity program modules". Based on order classification and order assembly, we provide a method for functional synthesis and extraction of program module order assembly by searching for a very tight order.
Drawings
FIG. 1 is a flow chart of an equivalent embedding method for program module sequencing batch function synthesis of an AI system;
FIG. 2 is a schematic diagram of example 1 in close-order;
FIG. 3 is a schematic diagram of example 2 in close-order;
FIG. 4 is a schematic diagram of a tight sequence and sub-tight sequence;
FIG. 5 is a schematic diagram of a tight sequence and a subsequent tight sequence;
FIG. 6 is a schematic diagram of tight and maximum tight sequences;
FIG. 7 is a schematic diagram of a tight sequence and nodes thereof;
FIG. 8 is a schematic diagram of a sequential convergence example 1;
FIG. 9 is a schematic diagram of a sequential convergence example 2;
FIG. 10 is a schematic diagram of an example tight sequence set error;
FIG. 11 is a schematic diagram of an example tight sequence of program modules;
FIG. 12 is a schematic diagram of an example tight sequence of program modules;
FIG. 13 is a schematic diagram of an example program code;
Fig. 14 is a program flow diagram example schematic.
Detailed Description
The technical solution of the present invention will be described in further detail with reference to the accompanying drawings, but the scope of the present invention is not limited to the following description.
For the purpose of making the technical solution and advantages of the present invention more apparent, the present invention will be further described in detail with reference to the accompanying drawings and examples. It should be understood that the particular embodiments described herein are illustrative only and are not intended to limit the invention, i.e., the embodiments described are merely some, but not all, of the embodiments of the invention. The components of the embodiments of the present invention generally described and illustrated in the figures herein may be arranged and designed in a wide variety of different configurations.
Thus, the following detailed description of the embodiments of the invention, as presented in the figures, is not intended to limit the scope of the invention, as claimed, but is merely representative of selected embodiments of the invention. All other embodiments, which can be made by a person skilled in the art without making any inventive effort, are intended to be within the scope of the present invention. It is noted that relational terms such as "first" and "second", and the like, are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions.
Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article or apparatus that comprises the element.
The features and capabilities of the present invention are described in further detail below in connection with the examples.
As shown in fig. 1, the equivalent embedding method for synthesizing the program module sequencing batch function of the AI system is characterized by comprising the following steps:
step one, establishing a program topology space and a program module class topology space according to the structure of an AI system flow graph, carrying out order classification on program modules by establishing an order classification operator and an order point judgment operator, and establishing an order relation among the program modules according to the order classification;
Step two, based on the sequence relation among the program modules, obtaining the maximum sequence of the sequence relation among the program modules according to the sequence, and carrying out function synthesis extraction of the sequence assembly of the program modules on the AI system function modules according to the maximum sequence;
and thirdly, carrying out formal semanteme on language components of the program language by using formal semanteme to obtain a program flow diagram, obtaining a maximum tight sequence according to the program flow diagram, obtaining formal semantic modules of output results of corresponding functional modules according to the maximum tight sequence, and completing equivalent embedding of program module sequencing and assembly function synthesis of the AI system.
The establishing a program topology space and a program module class topology space according to the structure of the AI system flow graph comprises the following steps:
The collection of program modules is referred to as a program collection, any program module X i being referred to as an element X i in the program collection, for any program collection By/>Is a set of elements:
Called as Power set of/>Is/>Called/>Is a subset family of (a);
The program topology space is as follows:
Is a collection,/> Called a topological space, if set/>The method meets the following conditions:
(i)
(ii) Aggregation Any two of the inner open sets/>Satisfy/>
(iii)Subset/>
The open set of program topology space is a set of a plurality of program modules, and the program topology space isI.e.
The program module class topology space is as follows: if Y is a finite set of n program module classes, then the order of Y is called n, and is noted as Y=n or Y n; the open set of the program module class topology space is a set of a plurality of program module classes, and the program module class topology space is thatI.e./>
The program modules are classified in sequence by establishing a sequence classification operator and a sequence point judgment operator, and the sequence relation among the program modules is established according to the sequence classification, comprising the following steps:
The sequence classification operator T i is as follows: mapping X i to a pseudo-base Y j:TiXi=Yj in a similar space, wherein X i is a pseudo-base in a program space, Y j is a pseudo-base in the similar space, and the pseudo-base is a program module and a program module class which are irrelevant in characteristics in the program space and the program module class space; obtaining the type of the program module through the sequence classification operator;
The sequence point judgment operator M is as follows: the method is used for judging and classifying the sequence starting point, the sequence ending point and the residual points; the sequence starting point is a sequence starting point of a first program module of a program with a complete function module, and the sequence ending point is a sequence ending point of a last program module of a program with a complete function module; the residual points are program modules which are neither sequence starting points nor sequence ending points; and judging the classification of the program modules and the tight sequence relation among the program modules through a sequence point judging operator.
The tight sequence is as follows: is provided withFor n in program topology space (n.gtoreq.1 and/>)) Program modules, if the n program modules/>After sequential execution, the program can run, then/>Sequentially form a tight sequence relationship, which is marked as/>
The maximum tight sequence is as follows: no extremely small tight sequence is used as a subsequent tight sequence of the tight sequence, and no extremely small tight sequence takes the tight sequence as the subsequent tight sequence, and the extremely large tight sequence is obtained;
the minimum tight sequence is a tight sequence without a true tight sequence, and the true tight sequence is as follows: is provided with For n program modules in the program topology space, and/>Is a tight order, if s is present (s is not less than 1 and not more than n and/>) Personal program module/>Satisfy the tight sequence relation/>Then call/>Is that Is a sub-tight sequence of (2); if s < n is also satisfied, then/>Is thatIs a true sequence of the seeds;
The subsequent tight sequence is as follows: is provided with Is n+m program modules in program topology space, and/> Are all in tight order, if Also in tight order, the term/>Is thatIs a subsequent order of the sequence.
The function synthesis extraction of program module sequential assembly is carried out on the AI system function module according to the maximum tight sequence, and the method comprises the following steps:
according to the program modules of the AI system and the tight sequence relation of the program modules, traversing all the extremely tight sequences to complete the function synthesis extraction of the program module ordered assembly.
The method comprises the steps of firstly establishing a program topological space and a program module class topological space, and completing order classification of program modules by establishing a classification operator and an order point judgment operator. After completing the order classification, we define a new order relation, i.e. a tight order, thus determining the ordered set of "granularity program modules". Based on order classification and order assembly, we provide a method for functional synthesis and extraction of program module order assembly by searching for a very tight order. On the basis of the above work, we complete the equivalent embedding work of the program module sequential assembling function synthesis, give the equivalent embedding method of the program module sequential assembling function synthesis, and select a more representative illustration to show and explain the equivalent embedding method.
2. Determining order classification of granularity program modules
In order to enable the sequence classification operator and the sequence point judgment operator to better perform corresponding sequence classification and judgment on the program modules, a program topology space and a program module class topology space are established, and the sequence classification operator and the sequence point judgment operator are defined on the basis.
Program topology space
Introducing a concept of a program module, namely researching abstract commonalities after the individuality of the program is removed and dividing intervals in order to examine the overall characteristics and the structure of the program; secondly, the language of the program is very simple, various connotations of the study objects can be distinguished more carefully, and the method has strong generalization when the possibility of various combinations is examined.
To order to sort program modules sequentially, we consider building a program topology space and analyzing the nature of the program topology space. To build a program topology space we first need to define a program collection and further build the program topology space on its basis and analyze its properties.
1. Program set
Whereas we have divided programs into modules, these modules imply a specific variety of implementation code. We then define the program set as follows:
Definition 1 (program set) the set of all program modules is called a program set, any one of the program modules X i being called an element X i in the program set.
Definition 2 (power set) for any program setBy/>Is a set of elements:
Called as A power set of (a). /(I)Is/>Called/>Is a subset family of (a).
In order to discover the implicit rules among program modules, the program modules are better classified by utilizing mathematical abstract languages, and a program topology space is further defined on the basis of a program set.
2. Program topology space
In order to discover the implicit rules among program modules, the program modules are better classified by utilizing mathematical abstract languages, and a program topology space is further defined on the basis of a program set.
To define a program topology space, we first give its topology definition as follows:
Is a collection,/> Called a topological space, if set/>The following axiom is satisfied:
(i)
(ii) Aggregation Any two of the inner open sets/>Satisfy/>
(iii)Subset/>
On the basis of the definition above, we give the program topology space definition as follows:
definition 3 (program topology space) we define an open set of program topology space as a set of program modules, the program topology space being I.e./>
For this newly defined open set and program topology space, we verify three properties of the topology space below, thus explaining that the program topology space we define as such is well defined.
(I) Since the total number of program modules is a plurality of, we can obtain the program module set
(Ii) Let A and B be as defined aboveIf a n B is also a set of program modules, and contains a plurality of program modules, so as to meet the definition of the open set;
(iii) Arbitrary to subset of program topology space Is also a collection of program modules, and/>The number of program modules in the topology space is not more than the number of program modules in the topology space, thereby/>Or a collection of program modules, thereby
Thus, we demonstrate that the program topology space in definition 3 does have a topology, and is thus a topology space.
3. Program topology spatial properties
After the program topology space is established, we further explore the nature of the space in order to better sort the program modules therein.
3.1, Connectivity and first countability
Connectivity: if it isThere is no pair of non-open subsets without crossing/>And/>Make/>We call/>Is communicated.
Theorem 1 program topology space is connected.
The first number: in the program topology spaceIn any program module X, selecting a countable cluster of the neighborhood of X as: so that each neighborhood of X contains at least/> Is an element of the group. In program topology space/>Each point of (2) has a countable neighborhood basis, so the term program topology space/>Is a first countable.
3.2 Algorithm in program topology space
To better represent any complete program in program space, we need to define the algorithm between program modules:
Definition 4 (program topology space operator) set For serial operation of two programs in program topology space,/>The two programs are operated in parallel.
It can be found that in the program topology spaceIn/>Meets the exchange law and the combination law,/>And/>Satisfies the left distribution law, but/>The switching law and the combining law are not satisfied.
(i)Not meeting the law of exchange
And (3) proving: Indicating that run a is performed before run B,
Indicating that run B is performed before run a,
Indicating that the results of running A and then running B are the same as those of running B and then running A,
In actual operation, however, the order of execution of the two programs interchangeably does not always hold,
Thereby making itThe switching law is not satisfied.
(ii)Not satisfy the law of binding
And (3) proving: Representing that run a then run B, last run C,
Representing that run B followed by run C, run a last,
Indicating that sequential run A, B, C and sequential run B, C, A result are identical,
However, in actual operation, sequential operation A, B, C and sequential operation B, C, A are not always the same.
Thereby making itThe binding law is not satisfied.
(iii)The switching law is satisfied: /(I)
And (3) proving: Representing the parallel operation of a and B,
Representing running B and a in parallel,
Indicating that parallel run A, B and parallel run B, A result are identical,
This is clearly true.
Thereby making itSatisfying the switching law.
(iv)The binding law is satisfied: /(I)
And (3) proving: representing that after parallel operation A and B, parallel operation is performed with C,
Representing that the parallel operation B and C are performed, and then the parallel operation with the A is performed,
Indicating that the two operation sequences have the same operation result,
This is clearly true.
Thereby making itSatisfying the binding law.
(v)And/>The left allocation law is satisfied: /(I)
And (3) proving: indicating that the results of running C in parallel with A, B are run serially,
Representing that C is run in parallel with the results of serial runs a and B respectively,
Indicating that the results of the two sequences of operations described above are the same,
This is clearly true.
Thereby making itAnd/>Satisfying the left allocation law.
We can also find out according to the characteristics of the procedure,And/>The right allocation law is not satisfied. In fact, the tight order formed by program modules does not exist/>Such a representation.
(II) program module class topology space
The topological space of the program module class displays the trend or rule of the data structure of the program module class, associates the program module class which seems to be irrelevant, is helpful for understanding the functions and purposes of the complete program, and the structural relationship among the program module classes also has the property of keeping unchanged under the subsequent processing. We present mathematical definitions and related inferences of program module class space that facilitate our comparison when considering the whole and part of the program, and which visual representations to use.
The generalization of thinking is represented by its discarding of non-essential attributes of a class of things and its reflection of common essential features. Depending on the nature and purpose of the function, the classes of program modules may be divided into a limited number, and we can deduce the following:
Definition 5 (program module class set) if Y is a finite set of n program module classes, then the order of Y is called n, and is noted as |y|=n, or Y n.
Based on the topology space definition, we can give a detailed definition of the topology space of the program module class.
Definition 6 (program module class topology space) we define an open set of program module class topology spaces as a set of several program module classes, the program module class topology spaces beingI.e./>
For this newly defined open set and program topology space, we verify the three properties of the topology space below, thus explaining that the program module class topology space we define as such is well defined.
(I) Since the total number of program module classes is a plurality, we can obtain the set of program module classesBy definition,/>
(Ii) Let A and B be as defined aboveIf a n B is also a set of program module classes, and contains a plurality of program module classes, so as to meet the definition of the open set;
(iii) Subset of class topology space for arbitrary program modules Is also a collection of program module classes, and/>The number of the program module classes in the program topology space is not more than the number of the program module classes, thereby/>Or a collection of classes of program modules, thereby/>
Thus, we demonstrate that the program module class topology space in definition 3 does have a topology, and is thus a topology space.
Definition 7 (base of topology) set (Y n, τ) to be a class space,If for/>May be represented as a sum of some program module classes in δ, then δ is referred to as a base of topology τ.
The definition of program module class and class space is obvious; each program module may find its corresponding class of program modules. However, the complete program is often an orderly combination of a plurality of programs, and the whole things are reproduced in thinking according to the internal connection of the programs. Without integration, the information materials of program thinking are fragmented and segmented, cannot be unified into a whole, and are difficult to know exactly about each part, side and attribute. If the classification and synthesis of the program module class set Y n are considered, we have the following definitions:
definition 8 (partition) set Y n as a class set, n is not less than 2, if A, B is a non-empty program module class set of Y, and the following is satisfied:
Then { A, B } is referred to as a split of Y n. The number of all possible segmentations on Y n is noted as Y (n). From the meaning of the segmentation we can derive the following deductions:
deducing: if τ is the topology on Y n, it consists of four sets:
a and B are non-space classification sets of Y n, and if the non-space classification sets are unequal, the A and the B must meet the conditions:
Or a partition where the set family { A, B } is Y n; or τ is a full ordered set of per-set inclusion relationships: Or/>
One feature of class space is that there is no notion of program module class distance, whereas point-to-point relationships are to be built on the basis of other principles. The class space uses program module classes themselves as sets and thus exhibit various characteristics, which are useful in describing problems.
In designing a program's thinking, it is important to have the ability to evaluate the number of features of the program and to evaluate quantitative features related to its transformations and other programs. Class space is the space that destroys some of the thought logic and builds new thought logic. If the logic does not change, there is no transition from a mathematical topological point of view. It is possible to use class space to study program ideas, evaluate the complexity of programs, build new relationships between programs, and the topology of the programs determines their actual nature. It is also useful to use class space when studying program specific functions.
(III) order classification operator and order point judgment operator
1. Sequence classification operator
On the basis of the topological space, the convenience provided by the topological space is utilized, and the sequence classification is carried out on the programs, so that the programs are converted from all the programs into the categories, and a valuable structure is provided.
We need to determine the type of a program, and build a mapping of program space to class space, i.e. knownFor the program topology space, Y is the program module class topology space, X i is the pseudo-base under the program space, Y j is the pseudo-base under the class space, on the basis of which we give the definition of the pseudo-base and the order classification operator as follows:
definition 9 (pseudo-base) is a program module and a class of program modules that are required to be feature independent under program space and program module class space.
Wherein,
{ Y j } represents: { judgment; identifying; setting; acquiring; creating; modifying; conversion; calculating; searching; preserving; loading; ....;
{ X i } represents: { program modules }.
Definition 10 (order sort operator) T i represents the mapping of X i to a space-like pseudo-base Y j:TiXi=Yj.
The procedure of program module sequence classification cannot be described by a simple mathematical procedure, one part of the program module sequence classification has a standard, the other part of the module sequence classification has a standard, the standards cannot be expressed by mathematical operators, and the standards exceed the definition of general operators and need to redefine and create new operators.
Assuming that we consider operators as a set, i.e. construct an operator space, we study the properties of the space made up of operators, and we can get a transformation from local to global consideration.
Definition 11 (order classification operator space) the order classification operator is regarded as an element to form a new operator space: The expression slave/> An overall sequence classification operator to Y for any given/>It does not satisfy:
(A+B)(X)=AX+BX;
(αA)(X)=αAx.
Namely, a nonlinear operator space. Also here we present a representation of the total subset of calculations.
2. Sequence point judgment operator
While sorting program modules sequentially, we need to make special decisions about program modules that help us find out which program modules can be the start or end of a piece of program, and for such program modules we define as follows:
Definition 12 (sequence starting point) for a program with complete functional modules, we define its first program module as the sequence starting point.
Definition 13 (sequence end point) for a segment of program with complete functional modules, we define its last program module as the sequence end point.
The presence of sequence start points and sequence end points, collectively referred to as sequence points, can help us extract program function modules more quickly and quickly because a complete function module must start with a sequence start point and end with a sequence end point. In this regard, we consider building a sequence point judgment operator to help us judge a program module as a sequence point.
First, general operators are discussed in the excipient space, however, the properties of the previously defined space do not give uniform metrics nor linear space. Thus, the operator defined herein does not have linearity. Meanwhile, the operators herein are unbounded, nonlinear, discontinuous. An operator as defined herein may be referred to as a "pseudo operator," or a "generalized operator. It has the functions of mapping operators, etc., and is discussed in non-linear space.
Definition 14 (sequence point judgment operator) definition operator M is used to judge and classify sequence start point, sequence end point, and remainder (program module which is neither sequence start point nor sequence end point is called remainder). Specifically: the operator M acts on the element X to be judged respectively, wherein X is any module in the set; the operator M acts on an element, and if the element meets any sequence point in three types, the output is 1.
For example: m (X) = (1, 0, 1) T determines that the element X can be used as either an order start point or an order end point, M (Y) = (1, 0) T determines that the element X can be used as an order start point but not an order end point, and M (Z) = (0, 1, 0) T determines that the element X can be used as either an order start point or an order end point, where the output form is represented by a vector. It follows that the operator acts on any element and that the result is linear, which is a feature.
Here we can see that a program module is likely to be both an order start point and an order end point. By observing the vector output by the sequence point judgment operator, we can analyze the values of the different components to judge whether the corresponding program module is the sequence (final) point.
3. Determining ordered set of granularity program modules
On the basis of a program module topological space and a program module class topological space, the program modules in the program module topological space are sequentially classified by adopting a sequence classification operator, so that a sequence relation among the program modules can be better established; based on the sequence relation among the program modules, the sequence assembly of the granularity program modules can be determined, so that the aim of grading and extracting the function modules of the whole AI system according to a certain granularity is fulfilled.
By order relation we are familiar with a set that is "completely ordered in sequence" like an integer, rational number, real number, in which the relation between any two members is "ordered", i.e. can be relatively large. However, in objective practice, such "fully ordered" ordered sets are too ideal, and less than such "perfect" and "partially ordered" sets are more common. This is as follows:
and (3) partial sequence: if P is a set, the binary relation on P is called a partial order relation, if:
(i) Autoreactivity:
(ii) Antisymmetry:
(iii) Transmissibility: this time (P, <) is a partial sequence set. For any a, b ε P, if a < b, then it is read as "a is contained in b" or "a is less than or equal to b".
As can be seen from the above definition, the partial order retains the "autoreactivity", "antisymmetry" and "transitivity" commonly used in the whole order, and removes the "completeness" of "any two objects can be compared in size". Although partial sequences have greater inclusion than full sequences, there are many contradictions and problems with partial sequences as the sequence relationships between program modules. For this, we assume that all program modules constitute a partial order set P with a binary relation (P, <), where < denotes the order of execution of the programs, for any X i,Xj ε P we read X i<Xj as "run first X j then X i", and next we will prove that the partial order relation on set P is not true, as follows:
(i) Does not satisfy the autoreactivity
And (3) proving: we optionally determine whether any program module X i,Xi e P in the class is self-reflexive
It is understood that X i<Xi is true, X i<Xi represents that the determination is performed twice in succession
The operation is true.
In actual operation, however, it is meaningless to perform the judgment operation twice in succession,
Therefore, X i<Xi is not effective in practical applications.
The sequence relationships between program modules do not satisfy the autoreactivity.
(Ii) Not meeting the antisymmetry
And (3) proving: we optionally program modules X i and X j,Xi,Xj e P,
As can be seen from the anti-symmetry,
X i<Xj indicates that "run X j before execute X i" holds,
X j<Xi indicates that "run X i before execute X j" holds,
In actual operation, however, the order of execution of the two programs interchangeably does not represent
The two procedures have the same function as each other,
So X i=Xj is not always true in practical applications.
The order relationship between program modules does not satisfy the antisymmetry.
(Iii) Not meeting the transmissibility
And (3) proving: we choose program module X i,Xj,Xk,Xi,Xj,Xk e P,
As can be seen from the transitivity,
X i<Xj indicates that "run X j before execute X i" holds,
X j<Xk indicates that "run X k before execute X j" holds.
At this point, however, the program may report errors,
So X i<Xk is not always true in practical applications.
The order relationship between program modules does not satisfy transitivity.
From the above, it can be seen that the partial sequence relationship is difficult to apply to the operation process of a section of program. Therefore, we try to consider the pre-order with higher inclusion degree, but from the definition of pre-order, it is known that pre-order does not satisfy antisymmetry, but still needs to satisfy reflexibility and transitivity, which indicates that there is a contradiction and problem in using pre-order as an order relation between program modules. So far, we note that the conventional sequence relationships are hardly used to characterize the running of programs.
For this, we consider the characteristics of the program at run time: firstly, program modules must be executed in sequence, and different execution sequences may have different functions; secondly, each program module is indispensable in the running process of the program, and if a certain program module is absent, errors may occur even if the rest of the program modules are executed in sequence. Based on this we have established a new order relation, defined as follows:
Definition 15 (tight order) set For n in program topology space (n.gtoreq.1 and/>)) Program modules, if the n program modules/>After sequential execution, the program can run, we call/>Sequentially form a tight sequence relationship, which is marked as/>
For example: let X 1,X2,X3 be performed in the following order:
FIG. 2 compact example 1
Then X 1,X2,X3 can satisfy the tight order relationship X 1→X2→X3; meanwhile, if X 1,X2,X3 can be performed in another order as follows:
FIG. 3 compact example 2
Then X 1,X2,X3 may also satisfy the tight order relationship X 2→X3→X1, noting that the two tight orders are completely different tight orders.
Based on the definition of the tight sequence, the mathematical conclusion of the tight sequence is more widely extended, and necessary mathematical definitions are provided, so that the tight sequence can be more finely characterized in running of the program. This allows us to build a ordered set of corresponding granularity program modules, thereby obtaining more accurately the function modules we want when extracting them. Thus, these necessary mathematical definitions we give the following:
Definition 16 (sub-tight order) set For n program modules in the program topology space, andIs a tight order, if s is present (s is not less than 1 and not more than n and/>) Personal program module/>Satisfy the tight order relation Then call/>For/>Is a sub-tight sequence of (c). In addition, if s < n is also satisfied, the formula is called/>For/>Is a true sequence of the sequence.
For example: the method is provided with the following tight sequences:
(i)X1→X2→X3→X4→X5
FIG. 4 order and sub-order
Then X1,X2,X3,X4,X5,X1→X2,X2→X3,X3→X4,X4→X5,X1→X2→X3,X2→X3→X4,X3→X4→X5,X1→X2→X3→X4,X2→X3→X4→X5 is the sub-order of X 1→X2→X3→X4→X5.
From the above example, it is noted that the sub-sequences of a sequence are not unique, and if there are n program modules in a sequence, we can find that it has n very small sequences, n-1 sequences containing two program modules, and so on, that it has a sub-sequence ofAnd each. Thus we have illustrated a sub-compact ordering of a compact sequence of n program modulesAnd each.
Definition 17 (very little tight) tight sequences the tight sequences of no true sub tight sequences are called very little tight sequences (in fact, very little tight sequences are one program module).
Definition 18 (subsequent order) setIs n+m program modules in program topology space, and/> Are all in tight order, if Also in tight order, the term/>Is thatIs a subsequent order of the sequence.
For example: the method is provided with the following tight sequences:
(i)X1→X2→X3→X4→X5
FIG. 5 order and subsequent order
Then X 2→X3,X2→X3→X4,X2→X3→X4→X5 is the next-to-sequence of X 1→X2→X3→X4→X5.
It is noted from the above examples that the following sequence of one sequence is not unique. At the same time, however, we can observe that since the elements contained in each individual tight order are deterministic and the order relationship between these elements is also deterministic, the subsequent minimal tight order is unique for each individual tight order. If we replace the subsequent minimal tight sequence, the resulting tight sequence is independent of the original tight sequence.
Definition 19 (extremely large compact) there is no extremely small compact as its subsequent compact nor is there any extremely small compact as it is the subsequent compact.
For example: the method is provided with the following tight sequences:
FIG. 6 tight sequence and maximum tight sequence
X1→X2→X3→X5→X7,X1→X2→X3→X6,X1→X2→X4 Is a very tight order.
Definition 20 (tight order node) if a very small tight order has more than one subsequent tight order, then the very small tight order is referred to as a tight order node.
For example: the method is provided with the following tight sequences:
FIG. 7 compact and node thereof
Then X 2,X3 is the next node.
Furthermore, the existence of the order can help us find a possible relationship between two program modules, and for this, we give a definition of convergence of the order, specifically as follows:
Definition 21 (convergence in order) for two program modules X i,Xj in program topology space, if we can find a tight order Then refer to X i in order/>Converging to X j.
Note that the tight order in which X i can converge to X j may be more than one, as follows:
For example: the method is provided with the following two tight sequences:
(i)X1→X2→X3
FIG. 8 Convergence example 1 in order
(Ii) X 1→X4→X3, as shown in FIG. 9
Then X 1 converges to X 3 in either order X 1→X2→X3 or X 1→X4→X3
Converging to X 3.
4. Functional synthesis extraction of program module ordered assembly
After the ordered assembly of the granularity program modules is established and determined by adopting the tight order, the functional synthesis of the ordered assembly of the program modules can be extracted on the basis, and a corresponding basis is established for the subsequent equivalent embedding method.
The function synthesis of the program module sequential assembly is extracted, so that the extremely tight sequence is required to be searched; for any program, to find the maximum order in the program, we consider all program modules in the program and the order relation relationship between them as a set with the order relation, called an order set. In connection with the definition of program modules and a tight sequence, we know that a tight sequence set is a "tree", i.e. it is not possible to appear as shown in FIG. 10;
for any one tight sequence set We can prove/>There must be a very tight order, which means that for arbitrary programs there must be a complete functional module, on the basis of which we can also prove a stronger conclusion.
Theorem 2 given a tight sequence setThen/>Any one of the sequences must be able to be in/>Is expanded into a very tight sequence, namely,Any one of the sequences must be included in/>In a very tight order.
And (3) proving: taking at willTight sequence/>/>
If it isWith subsequent tightening/>
According to the definition of the following tight sequence,
Is available in the form ofAlso/>In the order of the steps,
Due toThe number of program modules in (a) is limited,
By means of a mathematical induction method,
We can get a new oneThe tightening sequence without subsequent tightening sequence is
And is also provided withIs a sub-sequence of the method,
Similarly, ifIs/>Is a certain tight sequence/>Is used for the subsequent tight sequence of the (a),
Is available in the form ofAlso/>In the order of the steps,
By means of a mathematical induction method,
We can get a new oneTightening sequence without subsequent tightening sequence
To sum up we getIs extremely tight in (a)
And it usesIs a sub-sequence.
Thereby, theorem is proved.
The above theorem states that there must be a very large order in the tight order set in which there is a tight order, whereas since we define a tight order in the tight order set there must be a tight order (not considered hereIs an empty set) so that there must be a very high order in any one of the sequences, which also means that for any one of the programs that can run independently we can find at least one complete functional module from it. Note that although only the presence of a very large order in the tight order set is illustrated in the text of theorem, the specific form and the number of the presence are not pointed out. However, we present a method for constructing a very tight order by using a mathematical induction method in the proving process of theorem, which helps us to screen out a program module with complete functions from one program, namely, the very tight order.
It is desirable to organically combine program modules to form functional modules. By the division criteria of the functional modules and the program modules, the problem is transformed into finding the maximum tight order in the tight order set, and in the following we will give corresponding methods for different situations.
When facing a program flow diagram with a simpler structure and lower overall complexity, a mathematical induction method can be adopted to search out a maximum tight sequence step by step, the process can help us to analyze the geometric structure of the whole program flow diagram more accurately, understand the geometric operation logic of the program, and finally obtain a plurality of maximum tight sequences, which are also the required maximum tight sequences, and the specific mathematical induction method is given in theorem 2, and the general idea is as follows:
In order to find a very tight order with mathematical induction, we first give the following definition.
Definition 22 (tight sequence set cutoff point) in a tight sequence set, if a very small tight sequence has no subsequent tight sequence, the very small tight sequence is defined as tight sequence set cutoff point.
Definition 23 (starting point of tight sequence) if a very small tight sequence does not have a tight sequence with it as the subsequent tight sequence, the very small tight sequence is defined as the starting point of tight sequence.
Particularly, in practical situations, the input of the starting point of the tight sequence is the input of the whole program, and the output of the cut-off point of the tight sequence is the output of the whole program.
For a tight sequence set formed by a plurality of limited program modules and sequence relations thereof, a mathematical induction method is considered, but node choosing and sorting problems easily occur from a tight sequence starting point to a tight sequence cut-off point in a one-by-one manner according to the tight sequence relations, so that the tight sequence starting point is considered from the tight sequence cut-off point to the tight sequence starting point in a one-by-one manner. As will be seen from the following theorem, such an order is the very large order we need to find.
Theorem 3. A compact is a very large compact, the constraint that the compact converges from a compact starting point to a compact cut-off point.
And (3) proving: one tight order is a very large tight order;
The method has no subsequent tight sequence, and has no tight sequence and takes the subsequent tight sequence as the subsequent tight sequence;
the method comprises a tight sequence set starting point and a tight sequence set intercepting point;
it converges from a tight sequence starting point to a tight sequence cut-off point.
Thereby theorem is complete.
For example: let a, b, c, d, e, f, g, h, i, j, k be the program module in the program topology space and have the following example of a tight sequence of program modules of flowchart 11;
Considering the above flowchart as a tight sequence set, we can know that a is the tight sequence set start point and e, h, k, j is the tight sequence set cut-off point.
E is the subsequent tight sequence of d, d is the subsequent tight sequence of c, c is the subsequent tight sequence of b, b is the subsequent tight sequence of a, so that we get a tight sequence a- →b- →c- →d- > e converging from a to e in order, i.e. a maximal tight sequence.
H is the subsequent tight sequence of g, g is the subsequent tight sequence of f, f is the subsequent tight sequence of b, and b is the subsequent tight sequence of a, so that we obtain a tight sequence a- & gtb- & gtf- & gtg- & gth converging from a to h in order, i.e. a maximum tight sequence.
K is the subsequent order of i, i is the subsequent order of g, g is the subsequent order of f, f is the subsequent order of b, b is the subsequent order of a, so we get a order a- & gtb- & gtf- & gtg- & gti- & gtk converging from a to k in order, i.e. a maximum order.
J is the subsequent order of i, i is the subsequent order of g, g is the subsequent order of f, f is the subsequent order of b, b is the subsequent order of a, so we get a order a- & gtb- & gtf- & gtg- & gti- & gtj converging from a to k in order, i.e. a maximum order.
Looking at the above mathematical induction method, we can find that the mathematical induction method has extremely strong regularity when searching for extremely tight sequences, and many operations are highly repeated, which can be completely realized by using a computer instead, and the mathematical induction method can be well algorithmic.
Meanwhile, the geometric limitation can be jumped out, and the maximum tight sequence can be found out from the algebraic point of view through the operation relation existing between the tight sequences, and the specific method is as follows:
Reviewing the definition we give in the program topology space and its properties:
Is provided with Serial operation for program topological space program module,/>And (5) performing parallel operation on the program modules. Wherein/>Meets the exchange law and the combination law,/>And/>Satisfies the left distribution law, but/>The switching law and the combining law are not satisfied.
With the above definition and properties, we can express the program modules and their tight sequences by these two operations. So we get the expression about the program module and reuseAnd/>Spread the left distribution law of (2) to obtain an arbitrary/>Expressions that are not in any brackets. And these/>Connected only/>The expression of (2) is the extremely tight order we want to find.
For example: let a, b, c, d, e, f, g, h, i, j, k be the program module in the program topology space and have the following flowchart 12;
We can map the program into program topology space And/>The expression is as follows: /(I)
The above method comprises the steps of:
Thereby four extremely tight sequences are obtained:
a→b→c→d→e
a→b→f→g→h
a→b→f→g→i→k
a→b→f→g→i→j
We can find that both algorithms can traverse all possible very tight sequences.
Based on the two methods, according to different situations, different algorithms can be selected to find the needed maximum tight sequence, and after finding the maximum tight sequence, the function synthesis extraction of the corresponding program module ordered assembly is completed. On this basis, we can further study the equivalent embedding of program module sequential group function synthesis.
5. Equivalent embedding for program module sequencing and assembling function synthesis
Equivalent embedding method for functional synthesis
In order to complete the equivalent embedding of the program module sequencing group function synthesis, we first observe the structure of the whole AI system flow graph, construct a set of program modules and program module classes, discuss the nature of the set, and then further define a new special topology space on the basis of the set. By researching the special structure and the related property of the topological spaces, definition of a sequence classification operator and a sequence point judgment operator is given on the basis of the topological spaces, and finally the sequence classification of the granularity program modules is determined, a regular space is constructed for the sequence assembly of the program modules, so that the sequence relation can be prevented from being deconstructed from a plurality of disordered program modules.
After the program modules are subjected to corresponding sequence classification and judgment by adopting the sequence classification operator and the sequence point judgment operator, the sequence relation among the program modules is further constructed. Firstly, we consider the traditional sequence relations of full sequence, partial sequence, pre-sequence and the like, but the traditional sequence relations have a plurality of intrinsic contradictions when describing program operation, so, aiming at the characteristic that program modules need to operate according to specific logic sequence, we develop the definition of 'tight sequence' specially used for describing the sequence relations among the program modules based on the partial theory of the traditional sequence relations, and research and analysis are carried out on the relevant properties of the definition. Finally, the structural relation of the whole AI system is analyzed and abstracted through tight sequence, and the function synthesis and extraction of the program module sequence assembly are completed.
After the function synthesis and extraction of the program module sequential assembly are completed, the equivalent embedding of the program module sequential assembly function synthesis is performed by taking formal semantics as a theoretical basis. First, we abstract the language components of the program language using formal semantics. Secondly, after the formal semanticalization of the program language is completed, we present a formal language that can describe the program language completely. Here, we not only provide the algorithm and mapping rule of calculation, transfer and reduction among expressions, states and sentences by mathematical methods such as abstract summary, inductive summary and analog deduction, but also prove the terminacy, max, reachability and Church-Rosser property, and form corresponding propositions, theorem, definition and deduction. By utilizing the properties, an equivalent embedding method for synthesizing the program module sequencing and assembling functions is provided.
(II) equivalent embedding instantiation of functional Synthesis
After obtaining the equivalent embedding method of the functional synthesis, in order to further verify the correctness and show the superiority of the method, we need to select a code with a representative form and proper complexity as an example, and use the equivalent embedding method to perform equivalent embedding on the code, the specific code is shown in figure 13,
For the above code, it represents data, variables, and objects with Name; s represents a sentence; bloch i represents a block of code. The code defines a class and initializes the class, and defines a method of the class. For this code we give a more specific explanation as follows:
(i) If the input data format is assumed to be 280×280×3, the number of channels (in_channels) of the input convolution layer is 3.
(Ii) For convolution: conv2d (in_channels, 32,3, stride=1, pad=0, bias=false), the contents in brackets are in order: the number of channels (scalar) of input convolutional layer data, the number of channels of convolutional layer output data is 32 (scalar), the size of convolutional kernel is 3 (scalar), step size (stride) is 2, and padding (padding) is 0 offset (bias) is unbiased.
(Iii) For maximum pooling: maxpool2d (3, stride=2, pad=0), the contents in parentheses are in order: the pooling core size of the pooling layer is 3 (scalar), the stride (stride) is 2, and the padding (padding) is 0.
(Iv) The internal case of this container for ordered container :nn.Sequential(Conv2d(160,64,1,stride=1,padding=0,bias=False),Conv2d(64,96,3,stride=1,padding=0,bias=False)), is as follows:
class name1():
def__init__():
super(name1,self).__init__()
self.name2=Conv2d(160,64,1,stride=1,padding=0,bias=False)
self.name3=Conv2d(64,96,3,stride=1,padding=0,bias=False)
def forward(self,input):
input=self.name2(input)
input=self.name3(input)
return input
Wherein, name1, name1, name3 represent objects named by us themselves, and input represents data named and input by us themselves
(V) For tensor stitching: the contents in brackets are, in order, the cat ((x 0, x 1), dim=1): x0, x1 are the two tensors to be stitched, dim=1 means that the two tensors are stitched in dimension 1. Note that in the currently prevailing language, programs start counting from 0.
For the above code we formally semantically apply to it. To semantically formalize it, the system state is s, we first assume that
Name0≡Stem,Name1≡input_channels,Name3≡x,
Name3,0≡x0,Name3,1≡x1.
(I) Structural statement
CLASS NAME 0(nn.Module):Block1, set as B 1;
def __ init __ (self, name 1):Block2, set to B 2;
def forward (self, name 3):Block3, set as B 3;
return Name 3 is set to B 4.
Wherein Block 1=B2;B3.
(Ii) Atomic statements
Super (Name 0, self). __ init __ (), set to a 1;
self.conv_name i=Conv2d(parametersi), set to a conv,i;
self.pool_name i=nn.Maxpool2d(parametersi), set to a pool,i;
self.mixed_name i=nn.Sequential(parametersi), set to a seq,i.
(Iii) Arithmetic expression
Value_name_i=self_name i (value_name), set to a conv,i
Value_name_i=self_pool_name i (value_name), set to a pool,i
Value_name_i=self mixed_name i (value_name), set to a seq,i
Value_name=torch.cat ((value_name 1,value_name2), dim=n), N e N, set to a 4.
Then, the operation transfer process of the running process of the code expressed by the formal semantic expression is as follows:
the reduction method is as follows:
<B1,s>→<B2;B3,s1>.
Next, we can get the program flow diagram 14, after getting the program flow diagram, we can find its maximum order, since this code is only an example, its program flow diagram complexity is low, we can observe that two maximum orders are:
And
Thus, a program can be divided into two functional blocks: and constructing an output result of the network node and the functional module corresponding to the defined thinking type.
First, a network node module is defined
And (3) reduction:
the network then completes the inheritance of the method, next due to:
Block2=Aconv,1;Aconv,2;Aconv,3;Apool,1;Aconv,4;Aseq,1;Aseq,2;Aconv,5;Apool,2,
Thereby obtaining
And (3) reduction:
In summary, the program function module operation of the construction network node is converted into formal semantic operation:
And reduced to formal semantic modules:
<B2,s1>→*s4.
such formal semantic modules are formalizes that construct network node thought types.
Second, the network operation module, due to
And
<B1,s>→<B2;B3,s1>→*<B3,s4>,
Therefore, we only need to discuss:
Block2=aconv,1;aconv,2;aconv,3;apool,1;aconv,4;a4;aseq,1;aseq,2;a4;aconv,5;apool,2;a4;B4.
thus have a transfer relation
Reduction relationship:
thereby forming a formal semantic module defining the output result of the functional module corresponding to the thinking type.
The foregoing is merely a preferred embodiment of the invention, and it is to be understood that the invention is not limited to the form disclosed herein but is not to be construed as excluding other embodiments, but is capable of numerous other combinations, modifications and environments and is capable of modifications within the scope of the inventive concept, either as taught or as a matter of routine skill or knowledge in the relevant art. And that modifications and variations which do not depart from the spirit and scope of the invention are intended to be within the scope of the appended claims.

Claims (1)

1. The equivalent embedding method for synthesizing the program module sequencing group function of the AI system is characterized by comprising the following steps:
step one, establishing a program topology space and a program module class topology space according to the structure of an AI system flow graph, carrying out order classification on program modules by establishing an order classification operator and an order point judgment operator, and establishing an order relation among the program modules according to the order classification;
Step two, based on the sequence relation among the program modules, obtaining the maximum sequence of the sequence relation among the program modules according to the sequence, and carrying out function synthesis extraction of the sequence assembly of the program modules on the AI system function modules according to the maximum sequence;
performing formal semanteme on language components of a program language by using formal semanteme to obtain a program flow diagram, obtaining a maximum tight sequence according to the program flow diagram, and obtaining a formal semantic module of an output result of a corresponding functional module according to the maximum tight sequence to complete equivalent embedding of program module sequencing assembly function synthesis of an AI system;
the establishing a program topology space and a program module class topology space according to the structure of the AI system flow graph comprises the following steps:
The collection of program modules is referred to as a program collection, any program module X i being referred to as an element X i in the program collection, for any program collection By/>Is a set of elements:
Called as Power set of/>Is/>Called/>Is a subset family of (a);
The program topology space is as follows:
Is a collection,/> Called a topological space, if set/>The method meets the following conditions:
(i)
(ii) Aggregation Any two of the inner open sets/>Satisfy/>
(iii)Subset/>
The open set of program topology space is a set of a plurality of program modules, and the program topology space isI.e./>
The program module class topology space is as follows: if Y is a finite set of n program module classes, then the order of Y is called n, and is noted as Y=n or Y n; the open set of the program module class topology space is a set of a plurality of program module classes, and the program module class topology space is thatI.e./>
The program modules are classified in sequence by establishing a sequence classification operator and a sequence point judgment operator, and the sequence relation among the program modules is established according to the sequence classification, comprising the following steps:
The sequence classification operator T i is as follows: mapping X i to a pseudo-base Y j:TiXi=Yj in a similar space, wherein X i is a pseudo-base in a program space, Y j is a pseudo-base in the similar space, and the pseudo-base is a program module and a program module class which are irrelevant in characteristics in the program space and the program module class space; obtaining the type of the program module through the sequence classification operator;
The sequence point judgment operator M is as follows: the method is used for judging and classifying the sequence starting point, the sequence ending point and the residual points; the sequence starting point is a sequence starting point of a first program module of a program with a complete function module, and the sequence ending point is a sequence ending point of a last program module of a program with a complete function module; the residual points are program modules which are neither sequence starting points nor sequence ending points; judging the classification of the program modules and the tight sequence relation among the program modules through a sequence point judging operator;
The tight sequence is as follows: is provided with For n in program topology space (n.gtoreq.1 and/>)) Program modules, if the n program modules/>After sequential execution, the program can run, then/>Sequentially form a tight sequence relationship, which is marked as/>
The maximum tight sequence is as follows: no extremely small tight sequence is used as a subsequent tight sequence of the tight sequence, and no extremely small tight sequence takes the tight sequence as the subsequent tight sequence, and the extremely large tight sequence is obtained;
the minimum tight sequence is a tight sequence without a true tight sequence, and the true tight sequence is as follows: is provided with For n program modules in the program topology space, and/>Is a tight order, if s is present (s is not less than 1 and not more than n and/>) Personal program moduleSatisfy the tight sequence relation/>Then call/>Is that Is a sub-tight sequence of (2); if s < n is also satisfied, then/>Is thatIs a true sequence of the seeds;
The subsequent tight sequence is as follows: is provided with Is n+m program modules in program topology space, and/>Are all in tight order, if Also in tight order, the term/>Is thatSubsequent tightening of (a);
The function synthesis extraction of program module sequential assembly is carried out on the AI system function module according to the maximum tight sequence, and the method comprises the following steps:
according to the program modules of the AI system and the tight sequence relation of the program modules, traversing all the extremely tight sequences to complete the function synthesis extraction of the program module ordered assembly.
CN202310991958.0A 2023-08-04 2023-08-04 Equivalent embedding method for synthesizing program module sequencing group function of AI system Active CN117311678B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310991958.0A CN117311678B (en) 2023-08-04 2023-08-04 Equivalent embedding method for synthesizing program module sequencing group function of AI system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310991958.0A CN117311678B (en) 2023-08-04 2023-08-04 Equivalent embedding method for synthesizing program module sequencing group function of AI system

Publications (2)

Publication Number Publication Date
CN117311678A CN117311678A (en) 2023-12-29
CN117311678B true CN117311678B (en) 2024-06-04

Family

ID=89236147

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310991958.0A Active CN117311678B (en) 2023-08-04 2023-08-04 Equivalent embedding method for synthesizing program module sequencing group function of AI system

Country Status (1)

Country Link
CN (1) CN117311678B (en)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005115498A (en) * 2003-10-06 2005-04-28 Catena Corp Software development pre-processing method, software control method, software development method, and software developing device
WO2006030809A1 (en) * 2004-09-17 2006-03-23 Catena Corporation Software generating method
WO2006038303A1 (en) * 2004-10-07 2006-04-13 Catena Corporation Software creating method
CN102298681A (en) * 2011-06-22 2011-12-28 西北大学 Software identification method based on data stream sliced sheet
CN103646194A (en) * 2013-11-29 2014-03-19 北京广利核系统工程有限公司 Credible sorting method of synchronous data flow procedures based on formal verification
CN108287711A (en) * 2018-03-07 2018-07-17 北京理工大学 A kind of algebraically component representation method and apparatus of software systems
CN109408034A (en) * 2018-03-17 2019-03-01 东南大学 A kind of controlling stream graph building method of object-oriented program
CN111208991A (en) * 2020-01-03 2020-05-29 北京龙归科技有限公司 Workflow-based program development method, electronic device, and storage medium
CN113792008A (en) * 2021-08-31 2021-12-14 北京百度网讯科技有限公司 Method and device for acquiring network topology structure, electronic equipment and storage medium
CN114610297A (en) * 2022-01-27 2022-06-10 新疆品宣生物科技有限责任公司 Automatic programming method for multi-language program codes
CN114675830A (en) * 2022-03-08 2022-06-28 南京南瑞继保电气有限公司 Method and device for deploying edge AI (Artificial Intelligence) and constructing visual AI programming platform and electronic equipment

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040143817A1 (en) * 2003-01-17 2004-07-22 Kunii Tosiyasu L. Information managing apparatus

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005115498A (en) * 2003-10-06 2005-04-28 Catena Corp Software development pre-processing method, software control method, software development method, and software developing device
WO2006030809A1 (en) * 2004-09-17 2006-03-23 Catena Corporation Software generating method
WO2006038303A1 (en) * 2004-10-07 2006-04-13 Catena Corporation Software creating method
CN102298681A (en) * 2011-06-22 2011-12-28 西北大学 Software identification method based on data stream sliced sheet
CN103646194A (en) * 2013-11-29 2014-03-19 北京广利核系统工程有限公司 Credible sorting method of synchronous data flow procedures based on formal verification
CN108287711A (en) * 2018-03-07 2018-07-17 北京理工大学 A kind of algebraically component representation method and apparatus of software systems
CN109408034A (en) * 2018-03-17 2019-03-01 东南大学 A kind of controlling stream graph building method of object-oriented program
CN111208991A (en) * 2020-01-03 2020-05-29 北京龙归科技有限公司 Workflow-based program development method, electronic device, and storage medium
CN113792008A (en) * 2021-08-31 2021-12-14 北京百度网讯科技有限公司 Method and device for acquiring network topology structure, electronic equipment and storage medium
CN114610297A (en) * 2022-01-27 2022-06-10 新疆品宣生物科技有限责任公司 Automatic programming method for multi-language program codes
CN114675830A (en) * 2022-03-08 2022-06-28 南京南瑞继保电气有限公司 Method and device for deploying edge AI (Artificial Intelligence) and constructing visual AI programming platform and electronic equipment

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Extracting business logic from existing COBOL programs as a basis for redevelopment;H.M. Sneed;《Proceedings 9th International workshop on Program Comprehension.IWPC 2001》;20020807;全文 *
Software radio architecture:a mathematical perspective;J.mitola;《IEEE Journal on Selected Areas in Communications》;19990430;第17卷(第4期);全文 *
广义近似空间的拓扑结构;李招文;《应用数学学报》;20091215;第33卷(第4期);全文 *
抽取程序模块功能的计算机辅助系统;朱怡健;《小型微型计算机系统》;19940908(第9期);全文 *
面向深度学习的低代码开发平台的设计与实现;孙禹铭;《中国优秀硕士学位论文全文数据库 (信息科技辑)》;20230215(第2期);全文 *

Also Published As

Publication number Publication date
CN117311678A (en) 2023-12-29

Similar Documents

Publication Publication Date Title
Wu et al. On rule acquisition in incomplete multi-scale decision tables
US10438120B2 (en) Plugin interface and framework for integrating external algorithms with sample data analysis software
Neto et al. Handling high dimensionality contexts in formal concept analysis via binary decision diagrams
Zhang et al. OIM-SM: A method for ontology integration based on semantic mapping
Basto-Fernandes et al. A survey of diversity oriented optimization: Problems, indicators, and algorithms
CN112052177A (en) MC/DC test case set generation method for multi-value coupling signal
Liu Identifying and correcting the defects of the Saaty analytic hierarchy/network process: A comparative study of the Saaty analytic hierarchy/network process and the Markov chain-based analytic network process
CN117311678B (en) Equivalent embedding method for synthesizing program module sequencing group function of AI system
CN117472766A (en) Method and device for generating test case, electronic equipment and medium
Knobbe et al. Multi-relational data mining, using UML for ILP
CN102693295B (en) Database record data query system based on record logical representation
Gómez-López et al. Developing a labelled object-relational constraint database architecture for the projection operator
Carniel et al. fsr: An R package for fuzzy spatial data handling
Cavoto et al. Fishgraph: A network-driven data analysis
Duong et al. A filtering algorithm for constrained clustering with within-cluster sum of dissimilarities criterion
Sharma Design of formal query languages and schemas for graph databases
White et al. Variant generation of software-defined mechatronic systems in model-based systems engineering
Sahoo et al. Prom: A semantic web framework for provenance management in science
Cheston et al. A survey of the algorithmic properties of simplicial, upper bound and middle graphs
CN112052176A (en) Method for generating coverage test case of given condition in multi-value coupling logic
Nimmagadda et al. Implementation of Clustering Through Machine Learning Tool
Wang et al. Multi-granularity design rationale knowledge modeling method
El Abri et al. Learning probabilistic relational models with (partially structured) graph databases
Chen et al. Braiding drive data processing through rote learning
Sher The Enumeration of Minimum Path Covers of Trees

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant