<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">mais</journal-id><journal-title-group><journal-title xml:lang="ru">Моделирование и анализ информационных систем</journal-title><trans-title-group xml:lang="en"><trans-title>Modeling and Analysis of Information Systems</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">1818-1015</issn><issn pub-type="epub">2313-5417</issn><publisher><publisher-name>Yaroslavl State University</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.18255/1818-1015-2015-4-507-520</article-id><article-id custom-type="elpub" pub-id-type="custom">mais-269</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>Оригинальные статьи</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="en"><subject>Articles</subject></subj-group></article-categories><title-group><article-title>О выразительности подхода к построению ПЛК-программ по LTL-спецификации</article-title><trans-title-group xml:lang="en"><trans-title>On the Expressiveness of the Approach to Constructing PLC-programs by LTL-Speciﬁcation</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Кузьмин</surname><given-names>Е. В.</given-names></name><name name-style="western" xml:lang="en"><surname>Kuzmin</surname><given-names>E. V.</given-names></name></name-alternatives><bio xml:lang="ru"><p>доктор физ.-мат. наук, доцент, профессор кафедры теоретической информатики</p><p>ул. Советская, 14, г. Ярославль, 150000 Россия</p></bio><bio xml:lang="en"><p>doctor of science, associate professor</p><p>Sovetskaya str., 14, Yaroslavl, 150000, Russia</p></bio><email xlink:type="simple">kuzmin@uniyar.ac.ru</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Рябухин</surname><given-names>Д. А.</given-names></name><name name-style="western" xml:lang="en"><surname>Ryabukhin</surname><given-names>D. A.</given-names></name></name-alternatives><bio xml:lang="ru"><p> аспирант</p><p>ул. Советская, 14, г. Ярославль, 150000 Россия</p></bio><bio xml:lang="en"><p>graduate student</p><p>Sovetskaya str., 14, Yaroslavl, 150000, Russia</p></bio><email xlink:type="simple">dmitriy_ryabukhin@mail.ru</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Соколов</surname><given-names>В. А.</given-names></name><name name-style="western" xml:lang="en"><surname>Sokolov</surname><given-names>V. A.</given-names></name></name-alternatives><bio xml:lang="ru"><p>доктор физ.-мат. наук, профессор, зав. кафедрой теоретической информатики</p><p>ул. Советская, 14, г. Ярославль, 150000 Россия,</p></bio><bio xml:lang="en"><p>doctor of science, professor</p><p>Sovetskaya str., 14, Yaroslavl, 150000, Russia</p></bio><email xlink:type="simple">sokolov@uniyar.ac.ru</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Ярославский государственный университет им. П.Г. Демидова</institution><country>Россия</country></aff><aff xml:lang="en"><institution>P.G. Demidov Yaroslavl State University</institution><country>Russian Federation</country></aff></aff-alternatives><pub-date pub-type="collection"><year>2015</year></pub-date><pub-date pub-type="epub"><day>20</day><month>08</month><year>2015</year></pub-date><volume>22</volume><issue>4</issue><fpage>507</fpage><lpage>520</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Кузьмин Е.В., Рябухин Д.А., Соколов В.А., 2015</copyright-statement><copyright-year>2015</copyright-year><copyright-holder xml:lang="ru">Кузьмин Е.В., Рябухин Д.А., Соколов В.А.</copyright-holder><copyright-holder xml:lang="en">Kuzmin E.V., Ryabukhin D.A., Sokolov V.A.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://www.mais-journal.ru/jour/article/view/269">https://www.mais-journal.ru/jour/article/view/269</self-uri><abstract><p>Статья посвящена подходу к построению и верификации «дискретных» программ логических контроллеров (ПЛК) по LTL-спецификации. Этот подход обеспечивает возможность анализа корректности программ логических контроллеров с помощью метода проверки модели (Model Checking). В рамках подхода в качестве языка спецификации программного поведения используется язык темпоральной логики LTL. Анализ корректности LTL-спецификации относительно программных свойств производится автоматически с помощью программного средства символьной проверки модели Cadence SMV. В статье демонстрируется состоятельность подхода к построению и верификации ПЛК-программ по LTL-спецификации с точки зрения тьюринговой мощности. Доказывается, что в соответствии с этим подходом для произвольной счётчиковой машины Минского может быть построена LTL-спецификация, по которой осуществляется её программная реализация на любом из языков программирования ПЛК стандарта МЭК 61131-3. Поскольку счётчиковые машины Минского равномощны машинам Тьюринга, то и рассматриваемый подход к программированию ПЛК будет обладать тьюринговой мощностью. В доказательстве основное внимание уделяется заданию поведения счётчиковой машины в виде набора LTL-формул и сопоставлению этим формулам конструкций языков ST и SFC. SFC представляет интерес с точки зрения специфики графического языка, а язык ST рассматривается в качестве базового в том смысле, что реализация счётчиковой машины на языках IL, FBD/CFC и LD сводится к переписыванию на них конструкций ST-программы. Идея доказательства демонстрируется на примере трехсчетчиковой машины Минского, реализующей функцию возведения числа в квадрат.</p></abstract><trans-abstract xml:lang="en"><p>The article is devoted to the approach to constructing and veriﬁcation of discrete PLC-programs by LTL-speciﬁcation. This approach provides an ability of correctness analysis of PLC-programs by the model checking method. The linear temporal logic LTL is used as a language of speciﬁcation of the program behavior. The correctness analysis of LTL-speciﬁcation is automatically performed by the symbolic model checking tool Cadence SMV. The article demonstrates the consistency of the approach to constructing and veriﬁcation of PLC programs by LTL-speciﬁcation from the point of view of Turing power. It is proved, that in accordance with this approach for any Minsky counter machine can be built an LTL-speciﬁcation, which is used for machine implementation in any PLC programming language of standard IEC 61131-3. Minsky machines equipollent Turing machines, and the considered approach also has Turing power. The proof focuses on representation of a counter machine behavior in the form of a set of LTL-formulas and matching these formulas to constructions of ST and SFC languages. SFC is interesting as a speciﬁc graphical language. ST is considered as a basic language because an implementation of a counter machine in IL, FBD/CFC and LD languages is reduced to rewriting blocks of ST-program. The idea of the proof is demonstrated by an example of a Minsky 3-counter machine, which implements a function of squaring.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>программируемые логические контроллеры (ПЛК)</kwd><kwd>построение и верификация ПЛК-программ</kwd><kwd>LTL-спецификация</kwd><kwd>счётчиковые машины Минского</kwd></kwd-group><kwd-group xml:lang="en"><kwd>programmable logic controllers (PLC)</kwd><kwd>construction and veriﬁcation of PLC-programs</kwd><kwd>LTL-speciﬁcation</kwd><kwd>Minsky counter machines</kwd></kwd-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Кузьмин Е.В., Рябухин Д.А., Соколов В.А., “Моделирование согласованного поведения ПЛК-датчиков”, Моделирование и анализ информационных систем, 21:4 (2014), 75–90; [Kuzmin E. V., Ryabukhin D. A., Sokolov V. A., “Modeling a Consistent Behavior of PLC-Sensors”, Modeling and Analysis of Information Systems, 21:4 (2014), 75–90, (in Russian).]</mixed-citation><mixed-citation xml:lang="en">Кузьмин Е.В., Рябухин Д.А., Соколов В.А., “Моделирование согласованного поведения ПЛК-датчиков”, Моделирование и анализ информационных систем, 21:4 (2014), 75–90; [Kuzmin E. V., Ryabukhin D. A., Sokolov V. A., “Modeling a Consistent Behavior of PLC-Sensors”, Modeling and Analysis of Information Systems, 21:4 (2014), 75–90, (in Russian).]</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">Рябухин Д.А., Кузьмин Е.В., Соколов В.А., “Построение IL-программ ПЛК по LTL- спецификации”, Моделирование и анализ информационных систем, 21:2 (2014), 26– 38; [Ryabukhin D. A., Kuzmin E. V., Sokolov V. A., “Construction of PLC IL-programs by LTL-speciﬁcation”, Modeling and Analysis of Information Systems, 21:2 (2014), 26–38, (in Russian).]</mixed-citation><mixed-citation xml:lang="en">Рябухин Д.А., Кузьмин Е.В., Соколов В.А., “Построение IL-программ ПЛК по LTL- спецификации”, Моделирование и анализ информационных систем, 21:2 (2014), 26– 38; [Ryabukhin D. A., Kuzmin E. V., Sokolov V. A., “Construction of PLC IL-programs by LTL-speciﬁcation”, Modeling and Analysis of Information Systems, 21:2 (2014), 26–38, (in Russian).]</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Кузьмин Е.В., Соколов В.А., Рябухин Д.А., “Построение и верификация LD- программ ПЛК по LTL-спецификации”, Моделирование и анализ информационных систем, 20:6 (2013), 78–94; [Kuzmin E. V., Sokolov V. A., Ryabukhin D. A., “Construction and Veriﬁcation of PLC LD-programs by LTL-speciﬁcation”, Modeling and Analysis of Information Systems, 20:6 (2013), 78–94, (in Russian).]</mixed-citation><mixed-citation xml:lang="en">Кузьмин Е.В., Соколов В.А., Рябухин Д.А., “Построение и верификация LD- программ ПЛК по LTL-спецификации”, Моделирование и анализ информационных систем, 20:6 (2013), 78–94; [Kuzmin E. V., Sokolov V. A., Ryabukhin D. A., “Construction and Veriﬁcation of PLC LD-programs by LTL-speciﬁcation”, Modeling and Analysis of Information Systems, 20:6 (2013), 78–94, (in Russian).]</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">Кузьмин Е.В., Соколов В.А., Рябухин Д.А., “Построение и верификация ПЛК-программ по LTL-спецификации”, Моделирование и анализ информационных систем, 20:4 (2013), 5–22; [Kuzmin E. V., Sokolov V. A., Ryabukhin D. A., “Construction and Veriﬁcation of PLC-programs by LTL-speciﬁcation”, Modeling and Analysis of Information Systems, 20:4 (2013), 5–22, (in Russian).]</mixed-citation><mixed-citation xml:lang="en">Кузьмин Е.В., Соколов В.А., Рябухин Д.А., “Построение и верификация ПЛК-программ по LTL-спецификации”, Моделирование и анализ информационных систем, 20:4 (2013), 5–22; [Kuzmin E. V., Sokolov V. A., Ryabukhin D. A., “Construction and Veriﬁcation of PLC-programs by LTL-speciﬁcation”, Modeling and Analysis of Information Systems, 20:4 (2013), 5–22, (in Russian).]</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">Кузьмин Е.В., Соколов В.А., “Моделирование, спецификация и построение программ логических контроллеров”, Моделирование и анализ информационных систем, 20:2 (2013), 104–120; [Kuzmin E. V., Sokolov V. A., “Modeling, Speciﬁcation and Construction of PLC-programs”, Modeling and Analysis of Information Systems, 20:2 (2013), 104–120, (in Russian).]</mixed-citation><mixed-citation xml:lang="en">Кузьмин Е.В., Соколов В.А., “Моделирование, спецификация и построение программ логических контроллеров”, Моделирование и анализ информационных систем, 20:2 (2013), 104–120; [Kuzmin E. V., Sokolov V. A., “Modeling, Speciﬁcation and Construction of PLC-programs”, Modeling and Analysis of Information Systems, 20:2 (2013), 104–120, (in Russian).]</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">Минский М., Вычисления и автоматы, М.: Мир, 1971; [Minsky M., Computation: Finite and Inﬁnite Machines, Prentice-Hall, Inc., 1967.]</mixed-citation><mixed-citation xml:lang="en">Минский М., Вычисления и автоматы, М.: Мир, 1971; [Minsky M., Computation: Finite and Inﬁnite Machines, Prentice-Hall, Inc., 1967.]</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Петров И.В., Программируемые контроллеры. Стандартные языки и приемы прикладного проектирования, М.: СОЛОН-Пресс, 2004; [Petrov I.V., Programmiruemye kontrollery. Standartnye jazyki i priemy prikladnogo proektirovanija, M.: SOLON-Press, 2004, (in Russian).]</mixed-citation><mixed-citation xml:lang="en">Петров И.В., Программируемые контроллеры. Стандартные языки и приемы прикладного проектирования, М.: СОЛОН-Пресс, 2004; [Petrov I.V., Programmiruemye kontrollery. Standartnye jazyki i priemy prikladnogo proektirovanija, M.: SOLON-Press, 2004, (in Russian).]</mixed-citation></citation-alternatives></ref><ref id="cit8"><label>8</label><citation-alternatives><mixed-citation xml:lang="ru">Baier C., Katoen J.-P., Principles of Model Checking, The MIT Press, 2008.</mixed-citation><mixed-citation xml:lang="en">Baier C., Katoen J.-P., Principles of Model Checking, The MIT Press, 2008.</mixed-citation></citation-alternatives></ref><ref id="cit9"><label>9</label><citation-alternatives><mixed-citation xml:lang="ru">Clark E. M., Grumberg O., Peled D. A., Model Checking, The MIT Press, 2001.</mixed-citation><mixed-citation xml:lang="en">Clark E. M., Grumberg O., Peled D. A., Model Checking, The MIT Press, 2001.</mixed-citation></citation-alternatives></ref><ref id="cit10"><label>10</label><citation-alternatives><mixed-citation xml:lang="ru">CoDeSys, Controller Development System, http://www.3s-software.com/.</mixed-citation><mixed-citation xml:lang="en">CoDeSys, Controller Development System, http://www.3s-software.com/.</mixed-citation></citation-alternatives></ref><ref id="cit11"><label>11</label><citation-alternatives><mixed-citation xml:lang="ru">Kuzmin E. V., Sokolov V. A., Ryabukhin D. A., “Construction and Veriﬁcation of PLC LD Programs by the LTL Speciﬁcation”, Automatic Control and Computer Sciences, 48:7 (2014), 424–436.</mixed-citation><mixed-citation xml:lang="en">Kuzmin E. V., Sokolov V. A., Ryabukhin D. A., “Construction and Veriﬁcation of PLC LD Programs by the LTL Speciﬁcation”, Automatic Control and Computer Sciences, 48:7 (2014), 424–436.</mixed-citation></citation-alternatives></ref><ref id="cit12"><label>12</label><citation-alternatives><mixed-citation xml:lang="ru">Kuzmin E. V., Sokolov V. A., “Modeling, Speciﬁcation and Construction of PLC-rograms”, Automatic Control and Computer Sciences, 48:7 (2014), 554–563.</mixed-citation><mixed-citation xml:lang="en">Kuzmin E. V., Sokolov V. A., “Modeling, Speciﬁcation and Construction of PLC-rograms”, Automatic Control and Computer Sciences, 48:7 (2014), 554–563.</mixed-citation></citation-alternatives></ref><ref id="cit13"><label>13</label><citation-alternatives><mixed-citation xml:lang="ru">Kuzmin E. V., Ryabukhin D. A., Sokolov V. A., “Modeling a Consistent Behavior of PLC-Sensors”, Automatic Control and Computer Sciences, 48:7 (2014), 602–614.</mixed-citation><mixed-citation xml:lang="en">Kuzmin E. V., Ryabukhin D. A., Sokolov V. A., “Modeling a Consistent Behavior of PLC-Sensors”, Automatic Control and Computer Sciences, 48:7 (2014), 602–614.</mixed-citation></citation-alternatives></ref><ref id="cit14"><label>14</label><citation-alternatives><mixed-citation xml:lang="ru">Parr E. A., Programmable Controllers. An engineer’s guide, Newnes, 2003.</mixed-citation><mixed-citation xml:lang="en">Parr E. A., Programmable Controllers. An engineer’s guide, Newnes, 2003.</mixed-citation></citation-alternatives></ref><ref id="cit15"><label>15</label><citation-alternatives><mixed-citation xml:lang="ru">Schroeppel R., A Two Counter Machine Cannot Calculate 2N, Memo 257. Massachusetts Institute of Technology, Artiﬁcial Intelligence Laboratory, 1972.</mixed-citation><mixed-citation xml:lang="en">Schroeppel R., A Two Counter Machine Cannot Calculate 2N, Memo 257. Massachusetts Institute of Technology, Artiﬁcial Intelligence Laboratory, 1972.</mixed-citation></citation-alternatives></ref><ref id="cit16"><label>16</label><citation-alternatives><mixed-citation xml:lang="ru">SMV, The Cadence SMV Model Checker, http://www.kenmcmil.com/smv.html.</mixed-citation><mixed-citation xml:lang="en">SMV, The Cadence SMV Model Checker, http://www.kenmcmil.com/smv.html.</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
