Аксиоматический метод доказательства соответствия формализованных в различных моделях данных запросов
Аннотация
Аксиоматический метод в программировании используется давно и с целью более формального и точного описания процессов. Основное направление аксиоматизации в программировании было направлено на доказательство частичной правильности (верификацию) программ. Вместе с тем, ряд работ был ориентирован на обработку больших потоков данных – файлов. В них рассматриваются алгоритмы как унарных, так и бинарных операций и на основе аксиом доказывается их частичная правильность. Кроме того, аксиоматический подход позволил решить ряд задач в области разработки программного обеспечения для различных системных и прикладных областей. В статье рассматриваются аксиоматический метод, который позволяет формализовать объекты обработки данных и операции преобразования объектов посредством специального описания исходных объектов, и объекта – результата преобразования. В статье рассматривается возможность преобразования на основе аксиоматики для массовой обработки данных алгебраических выражений запросов, формализованных в одной модели данных, в частности в многомерно-матричной в другую – реляционную модель данных. Необходимость такого преобразования состоит в том, что выражение в многомерно-матричной модели значительно проще, чем в реляционной. Его проще преобразовывать с целью оптимизации запроса, и оно позволяет решить проблему распараллеливания запроса как на уровне задачи, так и на уровне отдельных операций. Для этой цели даны теоретико-множественные алгебраические определения двух основных операций обработки данных, соответствующих слиянию строго и нестрого упорядоченных файлов. На основе этих определений приведены аксиоматические описания этих операций. Приведены определения операций сложения и умножения многомерных матриц. Сконструированы соответствующие им операции-запросы в реляционной модели данных. Это соответствие доказано на основе аксиоматического метода. Показано, что каждый запрос на обработку данных есть теорема, и сделан вывод о эквивалентности моделей как аксиоматических теорий. Приведен пример, который показывает, как устанавливается такое соответствие.
Литература
2. Hoare C.A.R. An axiomatic basis for computer programming. Communications of the ACM. 1969;10(12):576-580. https://doi.org/10.1145/363235.36325
3. Hoare C.A.R. Towards a Theory of Parallel Programming. In: Hansen P.B. (eds) The Origin of Concurrent Programming. New York, NY: Springer; 1972. p. 231-244. https://doi.org/10.1007/978-1-4757-3472-0_6
4. Hoare C.A.R. Parallel programming: An axiomatic approach. In: Bauer F.L., et al. Language Hierarchies and Interfaces. Lecture Notes in Computer Science. Vol. 46. Berlin, Heidelberg: Springer; 1976. р. 11-42. https://doi.org/10.1007/3-540-07994-7_47
5. Anureev I.S., Maryasov I.V., Nepomniaschy V.A. C-programs verification based on mixed axiomatic semantics. Automatic Control and Computer Sciences. 2011;45:485-500. https://doi.org/10.3103/S0146411611070029
6. Nepomnyashchiy V.A., Ryakin O.M. Verifikaciya programm obrabotki dannyh s ispol'zovaniem avtomatnoj modeli fajlov [Verification of Data Processing Programs Using a File Automaton Model]. Journal of Applied Informatics. 1988;(14):180-190. (In Russ., abstract in Eng.) EDN: YIIPYZ
7. Nepomnyashchiy V.A., Ryakin O.M. Prikladnye metody verifikatsii program [Applied program verification methods]. M.: Radio i svyaz; 1988. 255 p. (In Russ.) EDN: RVKWLN
8. Kryvyj S.L., Maksimets A.N. Verifikatsija programm: sostojanie, problemy, rezultaty. I [Program Verification: Current State, Challenges, and Outcomes. I]. Cybernetics and Systems Analysis. 2013;49(6):3-14. Available at: http://jnas.nbuv.gov.ua/article/UJRN-0000407572 (accessed 16.07.2023). (In Russ., abstract in Eng.)
9. Promsky A.V. Operacionnaya i aksiomaticheskaya semantiki yazyka Si [Operational and Axiomatic Semantics of the C Language]. In: Chetvertyj sibirskij kongress po prikladnoj i industrial'noj matematike (INPRIM-2000) = The Fourth Siberian Congress on Applied and Industrial Mathematics (INPRIM‑2000). Part II. Novosibirsk: Publ. House of the Institute of Mathematics, SB RAS; 2000. p. 125. (In Russ.)
10. Gorodnyaya L.V. From Discrete Mathematics to the Semantics of Programming Languages. In: All‑Russian Scientific Conference on "Mathematical Foundations of Informatics and Information and Communication Systems": Proceedings. All‑Russian Scientific Conference. Tver: TvSU; 2021. p. 141-155. (In Russ., abstract in Eng.) https://doi.org/10.26456/mfcsics-21-22.
11. Nepomnyashchiy V.A. Verifikaciya programm obrabotki fajlov na yazyke Paskal' [File processing program verification in Pascal]. Programmirovanie. 1981;(2):34-43. (In Russ., abstract in Eng.) EDN: TGZYPZ
12. Nepomnyashchiy V.A. Problemno-orientirovannyj podhod k verifikacii programm obrabotki fajlov [Problem‑Oriented Approach to the Verification of File Processing Programs]. Programmirovanie. 1989;15(5):5-16. (In Russ., abstract in Eng.) EDN: XWNQPZ
13. Stapp L. Axiomatic approach to the system of files. In: Salwicki A. (eds) Logics of Programs and Their Applications. Logic of Programs 1980. Lecture Notes in Computer Science. Vol. 148. Berlin, Heidelberg: Springer; 1983. p. 270-294. https://doi.org/10.1007/3-540-11981-7_20
14. Andrews G.R., Reitman R.P. An axiomatic approach to information flow in programs. ACM Transactions on Programming Languages and Systems (TOPLAS). 1980;2(1):56-76. https://doi.org/10.1145/357084.35708
15. Chen Y.T., Tanik M.M. An axiomatic approach of software functionality measure. In: The Third International Workshop on Rapid System Prototyping. NC, USA, Research Triangle Park: IEEE Press; 1992. p. 181-187. https://doi.org/10.1109/IWRSP.1992.243908
16. Hintersteiner J.D., Nain A.S. Integrating Software into Systems: An Axiomatic Design Approach. In: Proceedings of the 3rd International Conference on Engineering Design and Automation. Vancouver, B. C. Canada; 1999. p. 1-4. Available at: https://www.axiomaticdesign.com/wp-content/uploads/eda99.pdf (accessed 16.07.2023).
17. Rodriguez W., et al. Developing a mobile learning environment: An axiomatic approach. Journal of International Technology and Information Management. 2018;23(3):3. https://doi.org/10.58729/1941-6679.1075
18. Karsten M., et al. An Axiomatic Basis for Communication. ACM SIGCOMM Computer Communication Review. 2007;37(4):217-228. https://doi.org/10.1145/1282427.1282405
19. Munerman V.I. Mass Data Processing. Algebraic Models And Methods: Monographie. М.: INFRA-М; 2023. 229 p. (In Russ., abstract in Eng.) https://doi.org/10.12737/1906037
20. Dijkstra E.W. A Discipline of Programming. Englewood Cliffs: Prentice-Hall, 1997. 240 p.
21. Munerman V.I. An axiomatic method of the formalization of mass data processing in highly available systems. Highly Available Systems. 2017;13(2):56-62. (In Russ., abstract in Eng.) EDN: ZBKLTN
22. Munerman V., Munerman D. An Axiomatic Approach to the Data Models Formalization for Mass Data Processing. In: 2020 IEEE Conference of Russian Young Researchers in Electrical and Electronic Engineering (EIConRus). St. Petersburg and Moscow, Russia: IEEE Press; 2020. p. 1996-2000. https://doi.org/10.1109/EIConRus49466.2020.9039205
23. Sokolov N.P. Functions of multidimensional matrices and their applications for the solutions of linear systems of partial differential equations. Ukrainian Mathematical Journal. 1970;22(6):657-674. https://doi.org/10.1007/BF01086271
24. Zakharov V.N., Munerman V.I. Parallel'naya realizaciya obrabotki intensivno ispol'zuemyh dannyh na osnove algebry mnogomernyh matric [Parallel implementation of processing intensively used data based on the algebra of multidimensional matrices]. In: Selected Papers of the XVII International Conference on Data Analytics and Management in Data Intensive Domains (DAMDID/RCDL 2015). Obninsk, Russia: MEPhi; 2015. p. 217-223. (In Russ., abstract in Eng.)
25. Munerman V.I. Construction of Hardware-Software Complexes Architecture to Improve Massively Data Processing. Highly Available Systems. 2015;11(2):13-18. (In Russ., abstract in Eng.) EDN: UBGECV

Это произведение доступно по лицензии Creative Commons «Attribution» («Атрибуция») 4.0 Всемирная.
Редакционная политика журнала основывается на традиционных этических принципах российской научной периодики и строится с учетом этических норм работы редакторов и издателей, закрепленных в Кодексе поведения и руководящих принципах наилучшей практики для редактора журнала (Code of Conduct and Best Practice Guidelines for Journal Editors) и Кодексе поведения для издателя журнала (Code of Conduct for Journal Publishers), разработанных Комитетом по публикационной этике - Committee on Publication Ethics (COPE). В процессе издательской деятельности редколлегия журнала руководствуется международными правилами охраны авторского права, нормами действующего законодательства РФ, международными издательскими стандартами и обязательной ссылке на первоисточник.
Журнал позволяет авторам сохранять авторское право без ограничений. Журнал позволяет авторам сохранить права на публикацию без ограничений.
Издательская политика в области авторского права и архивирования определяются «зеленым цветом» в базе данных SHERPA/RoMEO.
Все статьи распространяются на условиях лицензии Creative Commons «Attribution» («Атрибуция») 4.0 Всемирная, которая позволяет другим использовать, распространять, дополнять эту работу с обязательной ссылкой на оригинальную работу и публикацию в этом журналe.
