Pub Date : 2024-05-22DOI: 10.1134/s0361768824020087
A. V. Korol’kova, M. N. Gevorkyan, A. V. Fedorov, K. A. Shtepa, D. S. Kulyabov
Abstract
Different implementations of Clifford algebra: spinors, quaternions, and geometric algebra, are used to describe physical and technical systems. The geometric algebra formalism is a relatively new approach, destined to be used primarily by engineers and applied researchers. In a number of works, the authors examined the implementation of the geometric algebra formalism for computer algebra systems. In this article, the authors extend elliptic geometric algebra to hyperbolic space-time algebra. The results are illustrated by different representations of Maxwell’s equations. Using a computer algebra system, Maxwell’s vacuum equations in the space-time algebra representation are converted to Maxwell’s equations in vector formalism. In addition to practical application, the authors would like to draw attention to the didactic significance of these studies.
{"title":"Symbolic Studies of Maxwell’s Equations in Space-Time Algebra Formalism","authors":"A. V. Korol’kova, M. N. Gevorkyan, A. V. Fedorov, K. A. Shtepa, D. S. Kulyabov","doi":"10.1134/s0361768824020087","DOIUrl":"https://doi.org/10.1134/s0361768824020087","url":null,"abstract":"<h3 data-test=\"abstract-sub-heading\">Abstract</h3><p>Different implementations of Clifford algebra: spinors, quaternions, and geometric algebra, are used to describe physical and technical systems. The geometric algebra formalism is a relatively new approach, destined to be used primarily by engineers and applied researchers. In a number of works, the authors examined the implementation of the geometric algebra formalism for computer algebra systems. In this article, the authors extend elliptic geometric algebra to hyperbolic space-time algebra. The results are illustrated by different representations of Maxwell’s equations. Using a computer algebra system, Maxwell’s vacuum equations in the space-time algebra representation are converted to Maxwell’s equations in vector formalism. In addition to practical application, the authors would like to draw attention to the didactic significance of these studies.</p>","PeriodicalId":54555,"journal":{"name":"Programming and Computer Software","volume":null,"pages":null},"PeriodicalIF":0.7,"publicationDate":"2024-05-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141153263","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2024-05-22DOI: 10.1134/s0361768824020099
V. I. Kuzovatov, A. A. Kytmanov, E. K. Myshkina
Abstract
A method to calculate partial sums of some multiple numerical series arising when searching for the resultant of a polynomial and an entire function is proposed. One can apply a symbolic algorithm that uses recurrent Newton formulas to find power sums of roots included in this formula without finding the very roots of the system. The algorithm that implements the proposed approach to calculate partial sums of multiple numerical series is implemented in Maple. Examples of using this algorithm to find partial sums of some classes of multiple numerical series are given.
摘要 提出了一种计算在搜索多项式与整个函数的结果时产生的某些多重数列的部分和的方法。我们可以使用一种符号算法,利用牛顿递归公式求出该公式中包含的根的幂和,而无需求出系统的根。在 Maple 中实现了所提出的计算多个数值级数部分和的算法。文中给出了使用该算法求某些类多重数列的部分和的示例。
{"title":"On Calculating Partial Sums of Multiple Numerical Series by Methods of Computer Algebra","authors":"V. I. Kuzovatov, A. A. Kytmanov, E. K. Myshkina","doi":"10.1134/s0361768824020099","DOIUrl":"https://doi.org/10.1134/s0361768824020099","url":null,"abstract":"<h3 data-test=\"abstract-sub-heading\">Abstract</h3><p>A method to calculate partial sums of some multiple numerical series arising when searching for the resultant of a polynomial and an entire function is proposed. One can apply a symbolic algorithm that uses recurrent Newton formulas to find power sums of roots included in this formula without finding the very roots of the system. The algorithm that implements the proposed approach to calculate partial sums of multiple numerical series is implemented in Maple. Examples of using this algorithm to find partial sums of some classes of multiple numerical series are given.</p>","PeriodicalId":54555,"journal":{"name":"Programming and Computer Software","volume":null,"pages":null},"PeriodicalIF":0.7,"publicationDate":"2024-05-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141153121","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2024-05-22DOI: 10.1134/s0361768824020130
V. Salnikov
Abstract
In this paper, we continue to consider the problem of recovering the port-Hamiltonian structure for an arbitrary system of differential equations. We complement our previous study on this topic by explaining the choice of machine learning algorithms and discussing some details of their application. We also consider the possibility provided by this approach for a potentially new definition of canonical forms and classification of systems of differential equations.
{"title":"Port-Hamiltonian Systems: Structure Recognition and Applications","authors":"V. Salnikov","doi":"10.1134/s0361768824020130","DOIUrl":"https://doi.org/10.1134/s0361768824020130","url":null,"abstract":"<h3 data-test=\"abstract-sub-heading\">Abstract</h3><p>In this paper, we continue to consider the problem of recovering the port-Hamiltonian structure for an arbitrary system of differential equations. We complement our previous study on this topic by explaining the choice of machine learning algorithms and discussing some details of their application. We also consider the possibility provided by this approach for a potentially new definition of canonical forms and classification of systems of differential equations.</p>","PeriodicalId":54555,"journal":{"name":"Programming and Computer Software","volume":null,"pages":null},"PeriodicalIF":0.7,"publicationDate":"2024-05-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141153082","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2024-05-22DOI: 10.1134/s0361768824020129
A. A. Ryabenko, D. E. Khmelnov
Abstract
Laurent solutions of systems of linear ordinary differential equations with truncated power series as coefficients are considered. The Laurent series in the solutions are also truncated. As a means for constructing such solutions, induced recurrent systems are used; earlier, an algorithm for the case when the induced recurrent system has a nonsingular leading matrix was proposed. For the series in solutions, this algorithm finds the maximum possible number of terms that are invariant with respect to any prolongation of the truncated coefficients of the original system. Results on extending the applicability of the earlier proposed algorithm to the case when the leading matrix is singular using the EG-elimination algorithm as an auxiliary tool. An implementation of the proposed algorithm in the form of a Maple procedure is given and examples of its use are presented.
摘要 考虑了以截断幂级数为系数的线性常微分方程系统的洛朗解。解中的洛朗级数也是截断的。作为构建这种解的一种方法,使用了诱导递归系统;早些时候,针对诱导递归系统具有非奇异前导矩阵的情况提出了一种算法。对于解中的数列,该算法找到了与原始系统截断系数的任何延长相关的不变项的最大可能数目。使用 EG 消除算法作为辅助工具,将早先提出的算法的适用性扩展到前导矩阵是奇异的情况。以 Maple 程序的形式给出了拟议算法的实现方法,并介绍了其使用实例。
{"title":"Searching for Laurent Solutions of Truncated Systems of Linear Differential Equations with the Use of EG-Eliminations","authors":"A. A. Ryabenko, D. E. Khmelnov","doi":"10.1134/s0361768824020129","DOIUrl":"https://doi.org/10.1134/s0361768824020129","url":null,"abstract":"<h3 data-test=\"abstract-sub-heading\">Abstract</h3><p>Laurent solutions of systems of linear ordinary differential equations with truncated power series as coefficients are considered. The Laurent series in the solutions are also truncated. As a means for constructing such solutions, induced recurrent systems are used; earlier, an algorithm for the case when the induced recurrent system has a nonsingular leading matrix was proposed. For the series in solutions, this algorithm finds the maximum possible number of terms that are invariant with respect to any prolongation of the truncated coefficients of the original system. Results on extending the applicability of the earlier proposed algorithm to the case when the leading matrix is singular using the EG-elimination algorithm as an auxiliary tool. An implementation of the proposed algorithm in the form of a Maple procedure is given and examples of its use are presented.</p>","PeriodicalId":54555,"journal":{"name":"Programming and Computer Software","volume":null,"pages":null},"PeriodicalIF":0.7,"publicationDate":"2024-05-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141153083","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2024-05-22DOI: 10.1134/s0361768824010043
D. V. Koznov, E. Yu. Ledeneva, D. V. Luciv, P. I. Braslavski
Abstract
Code comments are an essential part of software documentation. Many software projects suffer from the problem of low-quality comments that are often produced by copy-paste. In case of similar methods, classes, etc. copy-pasted comments with minor modifications are justified. However, in many cases this approach leads to degraded documentation quality and, subsequently, to problematic maintenance and development of the project. In this study, we address the problem of near-duplicate code comments detection, which can potentially improve software documentation. We have conducted a thorough evaluation of traditional string similarity metrics and modern machine learning methods. In our experiment, we use a collection of Javadoc comments from four industrial open-source Java projects. We have found out that LCS (Longest Common Subsequence) is the best similarity algorithm taking into account both quality (Precision 94%, Recall 74%) and performance.
{"title":"Calculating Similarity of Javadoc Comments","authors":"D. V. Koznov, E. Yu. Ledeneva, D. V. Luciv, P. I. Braslavski","doi":"10.1134/s0361768824010043","DOIUrl":"https://doi.org/10.1134/s0361768824010043","url":null,"abstract":"<h3 data-test=\"abstract-sub-heading\">Abstract</h3><p>Code comments are an essential part of software documentation. Many software projects suffer from the problem of low-quality comments that are often produced by copy-paste. In case of similar methods, classes, etc. copy-pasted comments with minor modifications are justified. However, in many cases this approach leads to degraded documentation quality and, subsequently, to problematic maintenance and development of the project. In this study, we address the problem of near-duplicate code comments detection, which can potentially improve software documentation. We have conducted a thorough evaluation of traditional string similarity metrics and modern machine learning methods. In our experiment, we use a collection of Javadoc comments from four industrial open-source Java projects. We have found out that LCS (Longest Common Subsequence) is the best similarity algorithm taking into account both quality (Precision 94%, Recall 74%) and performance.</p>","PeriodicalId":54555,"journal":{"name":"Programming and Computer Software","volume":null,"pages":null},"PeriodicalIF":0.7,"publicationDate":"2024-05-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141153265","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2024-05-22DOI: 10.1134/s0361768824020051
A. V. Demidova, O. V. Druzhinina, O. N. Masina, A. A. Petrov
Abstract
This paper considers the problem of constructing compartmental models of dynamic systems by using a software package for symbolic calculation written in Julia. The software package is aimed at unifying the formalized construction of compartmental models, taking into account the meaningful description of possible interactions among compartments and the influence of various factors on the evolution of systems. An approach to the development of the instrumental and methodological basis for modeling the dynamic systems the behavior of which can be described by one-step processes is developed. The proposed software package enables the symbolic representation of the differential equations of the model in both stochastic and deterministic cases. It is implemented in Julia and uses the Julia Symbolics computer algebra library. A comparison between the Julia Symbolics tools and some other computer algebra systems is carried out. The application of the developed software package to a compartmental model is considered. The results can be used to solve problems of constructing and studying dynamic models in natural sciences that are represented by one-step processes.
摘要 本文探讨了使用 Julia 编写的符号计算软件包构建动态系统分区模型的问题。该软件包旨在统一分区模型的形式化构建,同时考虑到分区之间可能的相互作用以及各种因素对系统演化的影响的有意义描述。开发了一种方法,为动态系统建模提供工具和方法论基础,这些系统的行为可以用一步过程来描述。所提出的软件包能够在随机和确定两种情况下用符号表示模型的微分方程。该软件包采用 Julia 实现,并使用 Julia Symbolics 计算机代数库。对 Julia Symbolics 工具和其他一些计算机代数系统进行了比较。考虑了将开发的软件包应用于分室模型的问题。其结果可用于解决构建和研究自然科学中由一步过程表示的动态模型的问题。
{"title":"Constructing Compartmental Models of Dynamic Systems Using a Software Package for Symbolic Computation in Julia","authors":"A. V. Demidova, O. V. Druzhinina, O. N. Masina, A. A. Petrov","doi":"10.1134/s0361768824020051","DOIUrl":"https://doi.org/10.1134/s0361768824020051","url":null,"abstract":"<h3 data-test=\"abstract-sub-heading\">Abstract</h3><p>This paper considers the problem of constructing compartmental models of dynamic systems by using a software package for symbolic calculation written in Julia. The software package is aimed at unifying the formalized construction of compartmental models, taking into account the meaningful description of possible interactions among compartments and the influence of various factors on the evolution of systems. An approach to the development of the instrumental and methodological basis for modeling the dynamic systems the behavior of which can be described by one-step processes is developed. The proposed software package enables the symbolic representation of the differential equations of the model in both stochastic and deterministic cases. It is implemented in Julia and uses the Julia Symbolics computer algebra library. A comparison between the Julia Symbolics tools and some other computer algebra systems is carried out. The application of the developed software package to a compartmental model is considered. The results can be used to solve problems of constructing and studying dynamic models in natural sciences that are represented by one-step processes.</p>","PeriodicalId":54555,"journal":{"name":"Programming and Computer Software","volume":null,"pages":null},"PeriodicalIF":0.7,"publicationDate":"2024-05-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141153123","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2024-05-22DOI: 10.1134/s0361768824010110
A. A. Timakov
Abstract
One of the basic aspects of information flow control in applications is a security policy language. This language should allow one to define security policies for evaluation of environment elements in coherence with higher-level access control rules. Hence, the language is expected to be flexible because there may be different access control paradigms (mandatory, role-based, etc.) implemented at the system level. The application may also have its own specific restrictions. Finally, it is also desirable that the language support declassification (controlled release of information) during computations. Paralocks is one of such languages. This research is devoted to the logical semantics of a modified version of Paralocks implemented in TLA+. Paralocks represents a language basis for the PLIF information flow control platform, which is developed with author’s participation for the analysis of PL/SQL program blocks. It includes proofs of the partial order and lattice defined on a set of security policy expressions.
{"title":"Description of Paralocks Language Semantics in TLA+","authors":"A. A. Timakov","doi":"10.1134/s0361768824010110","DOIUrl":"https://doi.org/10.1134/s0361768824010110","url":null,"abstract":"<h3 data-test=\"abstract-sub-heading\">Abstract</h3><p>One of the basic aspects of information flow control in applications is a security policy language. This language should allow one to define security policies for evaluation of environment elements in coherence with higher-level access control rules. Hence, the language is expected to be flexible because there may be different access control paradigms (mandatory, role-based, etc.) implemented at the system level. The application may also have its own specific restrictions. Finally, it is also desirable that the language support declassification (controlled release of information) during computations. Paralocks is one of such languages. This research is devoted to the logical semantics of a modified version of Paralocks implemented in TLA+. Paralocks represents a language basis for the PLIF information flow control platform, which is developed with author’s participation for the analysis of PL/SQL program blocks. It includes proofs of the partial order and lattice defined on a set of security policy expressions.</p>","PeriodicalId":54555,"journal":{"name":"Programming and Computer Software","volume":null,"pages":null},"PeriodicalIF":0.7,"publicationDate":"2024-05-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141153095","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2024-03-12DOI: 10.1134/s0361768823100055
O. Yu. Pershin, A. A. Mukhtarov, V. M. Vishnevsky, A. A. Larionov
Abstract
Topology synthesis in integrated design of wireless communication networks is considered. An iterative method has been developed for placing base stations of a broadband network along extended transportation routes. The problem of base station placement is formulated as an extremal problem on a finite set in the form of a special combinatorial model. An algorithm of the branch and bound method (BBM) has been developed to solve this problem. This algorithm serves as the basis for finding a sequence of best variants for the placement of base stations. Numerical calculations confirming the efficiency of the proposed algorithm are described.
{"title":"Optimal Placement of Base Stations in Integrated Design of Wireless Networks","authors":"O. Yu. Pershin, A. A. Mukhtarov, V. M. Vishnevsky, A. A. Larionov","doi":"10.1134/s0361768823100055","DOIUrl":"https://doi.org/10.1134/s0361768823100055","url":null,"abstract":"<h3 data-test=\"abstract-sub-heading\">Abstract</h3><p>Topology synthesis in integrated design of wireless communication networks is considered. An iterative method has been developed for placing base stations of a broadband network along extended transportation routes. The problem of base station placement is formulated as an extremal problem on a finite set in the form of a special combinatorial model. An algorithm of the branch and bound method (BBM) has been developed to solve this problem. This algorithm serves as the basis for finding a sequence of best variants for the placement of base stations. Numerical calculations confirming the efficiency of the proposed algorithm are described.</p>","PeriodicalId":54555,"journal":{"name":"Programming and Computer Software","volume":null,"pages":null},"PeriodicalIF":0.7,"publicationDate":"2024-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140115066","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2024-03-12DOI: 10.1134/s0361768823100031
D. A. Makarov, V. A. Puzach
Abstract
One of the open problems in modern control theory is synthesis of adaptive control for nonlinear systems with parametric uncertainty and analysis of stability of the corresponding closed-loop system. Fuzzy logic is one of the approaches that can take into account nonlinearity and uncertainty of the plant. Affine systems constitute a class of nonlinear systems often used to solve various practical problems. For this class, there are a number of methods for synthesis of controllers, in particular, a method based on the matrix Riccati equation with state-dependent coefficients. In this paper, for a given class of nonlinear systems, an adaptation mechanism of a neuro-fuzzy controller that approximates the control synthesized by the SDRE method is used for the first time. The main contribution of this work is the architecture of the neuro-fuzzy network and methods for its initialization. The proposed approach is applied to the model of a two-link manipulator with uncertain coefficients. The conducted numerical experiments demonstrate the effectiveness of the synthesized control in terms of the selected quality criteria.
{"title":"Synthesis and Initialization of Adaptive Neuro-Fuzzy Control Based on the SDRE Technique for a Two-Link Manipulator","authors":"D. A. Makarov, V. A. Puzach","doi":"10.1134/s0361768823100031","DOIUrl":"https://doi.org/10.1134/s0361768823100031","url":null,"abstract":"<h3 data-test=\"abstract-sub-heading\">Abstract</h3><p>One of the open problems in modern control theory is synthesis of adaptive control for nonlinear systems with parametric uncertainty and analysis of stability of the corresponding closed-loop system. Fuzzy logic is one of the approaches that can take into account nonlinearity and uncertainty of the plant. Affine systems constitute a class of nonlinear systems often used to solve various practical problems. For this class, there are a number of methods for synthesis of controllers, in particular, a method based on the matrix Riccati equation with state-dependent coefficients. In this paper, for a given class of nonlinear systems, an adaptation mechanism of a neuro-fuzzy controller that approximates the control synthesized by the SDRE method is used for the first time. The main contribution of this work is the architecture of the neuro-fuzzy network and methods for its initialization. The proposed approach is applied to the model of a two-link manipulator with uncertain coefficients. The conducted numerical experiments demonstrate the effectiveness of the synthesized control in terms of the selected quality criteria.</p>","PeriodicalId":54555,"journal":{"name":"Programming and Computer Software","volume":null,"pages":null},"PeriodicalIF":0.7,"publicationDate":"2024-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140881679","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2024-03-12DOI: 10.1134/s0361768823100092
S. Sargsyan
Abstract
There is a wide range of fuzzing techniques for security assurance. Communication protocols and programs accepting complex structured data, including compilers, can be efficiently tested with a corresponding fuzzing approach. The main advantage of the fuzzing is actual data, which demonstrates the defects of the target software. The performance of fuzzing primarily depends on the quality of generated data. Existing fuzzing tools provide a fixed set of data generation algorithms, which doesn’t consider the specifics of the target program. There are several scenarios when the performance of the fuzzing may suffer. The target may execute different parts of the code based on a comparison of the offsets of the input data with some constant value. For such cases, random mutations will invalidate input data and lead to lower code coverage.
In this paper, we present a new approach for effective input data generation. We use static analysis to extract information regarding the input data offsets’ comparisons with constant values. Then we use this information during input data generation. Experimental evaluation of the developed method on several projects proves the efficiency of the developed method. Our approach allowed up to 91% increase in the number of executed paths for the same execution count.
{"title":"Improving Fuzzing Using Input Data Offsets Comparison Information","authors":"S. Sargsyan","doi":"10.1134/s0361768823100092","DOIUrl":"https://doi.org/10.1134/s0361768823100092","url":null,"abstract":"<h3 data-test=\"abstract-sub-heading\">Abstract</h3><p>There is a wide range of fuzzing techniques for security assurance. Communication protocols and programs accepting complex structured data, including compilers, can be efficiently tested with a corresponding fuzzing approach. The main advantage of the fuzzing is actual data, which demonstrates the defects of the target software. The performance of fuzzing primarily depends on the quality of generated data. Existing fuzzing tools provide a fixed set of data generation algorithms, which doesn’t consider the specifics of the target program. There are several scenarios when the performance of the fuzzing may suffer. The target may execute different parts of the code based on a comparison of the offsets of the input data with some constant value. For such cases, random mutations will invalidate input data and lead to lower code coverage.</p><p>In this paper, we present a new approach for effective input data generation. We use static analysis to extract information regarding the input data offsets’ comparisons with constant values. Then we use this information during input data generation. Experimental evaluation of the developed method on several projects proves the efficiency of the developed method. Our approach allowed up to 91% increase in the number of executed paths for the same execution count.</p>","PeriodicalId":54555,"journal":{"name":"Programming and Computer Software","volume":null,"pages":null},"PeriodicalIF":0.7,"publicationDate":"2024-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"140115058","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}