
Features of Software Implementation of Logical Tasks in Prolog
Author(s) -
Ольга Николаевна Половикова,
V.V. Shiryaev,
Nicholas Oskorbin,
L.L. Smolyakova
Publication year - 2021
Publication title -
izvestiâ altajskogo gosudarstvennogo universiteta
Language(s) - English
Resource type - Journals
eISSN - 1561-9451
pISSN - 1561-9443
DOI - 10.14258/izvasu(2021)1-20
Subject(s) - computer science , prolog , programming language , process (computing) , task (project management) , software , code (set theory) , base (topology) , code generation , state (computer science) , binary number , logical conjunction , binary decision diagram , theoretical computer science , arithmetic , mathematics , systems engineering , engineering , mathematical analysis , set (abstract data type) , key (lock) , computer security
One of the promising areas for using Prolog-systems is to solve logical tasks. This study outlines a solution approach based on the state generation procedure and the verification procedure. A solution to a logical task is presented, which demonstrates in practice the proposed approach and method of specifying a procedure for generating states. In the proposed example, a bit chain is generated that defines the code of a particular letter in the solution of the applied problem. Building a solution by means of code generation with verification allows not storing in the knowledge base a binary tree of all possible codes. The process of generating new states can be associated with the training of the program, with the dynamic formation of the knowledge base. The approach is based on the capabilities of software environments for adding facts and rules to existing ones, which were obtained as the results of the program or its stages. In this case, the entire program is the generating rule. An analysis of the constructed and tested procedures for the dynamic generation of states and the generation of facts allows us to talk about the applicability of such a solution for certain applied problems.