control graph
Recently Published Documents


TOTAL DOCUMENTS

26
(FIVE YEARS 9)

H-INDEX

4
(FIVE YEARS 0)

2021 ◽  
Author(s):  
Valeria Gribova ◽  
Philip Moskalenko ◽  
Elena Shalfeeva ◽  
Vadim Timchenko

Author(s):  
O. S Kuropiatnyk ◽  
B. M Yakovenko

Purpose.The main article purpose is to develop and implement the method for identifying the correspondence between the text and the program algorithm represented in the form of a flowchart. As part of the method work conversion of the input data in the graph representation is performed by means of constructive-synthesizing modelling. Methodology. To compare the program text and flowchart, we constructed a mathematical model for converting the program code into a graphical representation on the basis of control structures. To build the model, the apparatus of constructive-synthesizing modeling and its methods were used: specialization, concretization, interpretation and implementation. The graph representation of the text is created taking into account the control operators; the flowcharts are created using a json file containing the description of the diagram elements and their links. To compare the graphs we use the breadth-first search algorithm with the number of identical vertices being counted. To obtain the software implementation of the developed method and models we used the technology of object-oriented programming and CASE-technologies, which are based on the unified modeling language UML. Findings A method is proposed to present the text and the flowchart of the program in a uniform format of the directed graph (control graph) and to evaluate their correspondence by the number of identical vertices. For its formalization and automated usage, we developed constructive-synthesizing models of input data transformers. The program application was developed based on the models and the method. Originality. The methods of constructive-synthesizing modeling in the tasks of processing texts written in artificial languages were further developed. We developed the system of constructors, which transforms text program in C++ into a control graph. Practical value. The results are significant for solving such tasks as assembling program texts for borrowings detection, determining the correspondence of the program algorithms and their software implementations to improve coding skills. The graph representation produced by the developed system of constructors can be used for investigation of influence of optimization and code refactoring on the program complexity using McCabe's metrics.


2021 ◽  
Vol 12 (3) ◽  
pp. 115-126
Author(s):  
V. V. Gribova ◽  
◽  
Ph. M. Moskalenko ◽  
V. A. Timchenko ◽  
E. A. Shalfeeva ◽  
...  

Reducing the complexity of developing software systems that solve complex problems of science and practice, as well as ensuring their viability are among urgent tasks of software engineering. For systems with knowledge bases, as noted in many literature sources, this problem is most acute, despite the fact that significant results have been achieved in its solving. This problem is especially critical for those systems in which one of the requirements is a time limit for decision-making. Given that the used solution methods belong to the class of exhaustive ones that have a large computational complexity, parallelization is required to reduce the execution time. A methodology for using declaratively defined control graph structures for developing problem solvers for systems with knowledge bases is proposed. Special attention is paid to the processing of knowledge base fragments and the possibility of placing architectural components of the solver on different computing devices. The structure of such an information-and-control graph includes related constructs (operators), one of which is marked as "initial". These structures can be divided into two main types: computing control structures and information processing structures. The developer can group individual operators into blocks — for their repeated usage (including organization of recursive calculations). The structure of the graph also includes a description of the data.


Author(s):  
Natal'ya Chistoforova ◽  
Zahar Ushenin

The parameters that need to be controlled have been identified.to maintain the optimal value of the main qualitative indicator of the process. Based on laboratory data, a control graph of hydrogen content in the finished product


2021 ◽  
Vol vol. 22 no. 3, Computational... (Special issues) ◽  
Author(s):  
OLivier Bodini ◽  
Matthieu Dien ◽  
Antoine Genitrini ◽  
Frédéric Peschanski

International audience In this paper we address the problem of understanding Concurrency Theory from a combinatorial point of view. We are interested in quantitative results and algorithmic tools to refine our understanding of the classical combinatorial explosion phenomenon arising in concurrency. This paper is essentially focusing on the the notion of synchronization from the point of view of combinatorics. As a first step, we address the quantitative problem of counting the number of executions of simple processes interacting with synchronization barriers. We elaborate a systematic decomposition of processes that produces a symbolic integral formula to solve the problem. Based on this procedure, we develop a generic algorithm to generate process executions uniformly at random. For some interesting sub-classes of processes we propose very efficient counting and random sampling algorithms. All these algorithms have one important characteristic in common: they work on the control graph of processes and thus do not require the explicit construction of the state-space.


Author(s):  
Vladimir Vasilev ◽  
◽  
Alexander Legalov ◽  

Functional dataflow programming languages are intended for the development of architecture-independent parallel programs and support the control of computations based on data availability. Due to the fact that at present parallel computing systems are very widespread, and their programming in imperative languages is associated with portability problems, the development of architecturally independent parallel programming tools is an urgent task. When such a program is translated, intermediate representations are formed as the information graph and the corresponding control graph. During program execution, data readiness signals are transmitted along the arcs of the control graph. An explicit selection of the control graph allows us not only to change the computational control strategies and ensure the adaptation of the program to the architecture features, but also to apply specific methods for optimizing control dependencies. The paper proposes transformation methods that provide optimization of the control graph. When generating a control graph from an informational one, redundant arcs are introduced into it, the removal of which does not affect the result of the program, but leads to its more efficient execution. It is shown that in dataflow programs, in addition to control dependencies inherent in other programming languages, additional ones associated with the implementation features of deferred or conditional computations described by delayed lists arise. A formal description of redundant dependencies of various types is given, as well as an effective algorithm for their identification. The developed approach can be applied to such dataflow programming languages as PIFAGOR and Smile.


2018 ◽  
Vol 163 ◽  
pp. 93-114 ◽  
Author(s):  
Ahmed Tamrawi ◽  
Suresh Kothari
Keyword(s):  

Sign in / Sign up

Export Citation Format

Share Document