{"id":372464,"date":"2024-05-21T05:12:54","date_gmt":"2024-05-21T05:12:54","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=372464"},"modified":"-0001-11-30T00:00:00","modified_gmt":"2024-05-21T05:12:54","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=372464","title":{"rendered":"<span>\u0413\u043b\u0443\u0431\u043e\u043a\u0430\u044f \u0422\u0435\u043e\u0440\u0438\u044f \u0421\u0432\u044f\u0437\u0435\u0439 0.0.1<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u0435 \u043f\u0435\u0440\u0432\u043e\u0435 \u0430\u043f\u0440\u0435\u043b\u044f, \u043a\u0430\u043a \u0432\u044b \u043c\u043e\u0433\u043b\u0438 \u0434\u043e\u0433\u0430\u0434\u0430\u0442\u044c\u0441\u044f, \u043c\u044b \u043f\u043e\u0448\u0443\u0442\u0438\u043b\u0438. \u041f\u043e\u0440\u0430 \u044d\u0442\u043e \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c, \u0438 \u0442\u0435\u043f\u0435\u0440\u044c<img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"100\\%\" alt=\"100\\%\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/298\/8ef\/3a6\/2988ef3a67988537121da1f6acea3521.svg\" width=\"46\" height=\"19\"\/>\u0432\u0441\u0451 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u043e.<\/p>\n<h3>TL;DR (too long; didn&#8217;t read)<\/h3>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u043d\u043e\u0433\u043e \u0431\u0443\u043a\u0432, \u043d\u043e \u0435\u0451 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432\u0441\u0435\u0433\u043e 4-\u043c\u044f \u0441\u0438\u043c\u0432\u043e\u043b\u0430\u043c\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Set_theory\">\u0442\u0435\u043e\u0440\u0438\u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432<\/a>:<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L \\to L^2\" alt=\"L \\to L^2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/42d\/52f\/71e\/42d52f71e0454feb23d2d4d6773ab933.svg\" width=\"66\" height=\"21\"\/><\/p>\n<\/blockquote>\n<p>\u0412\u0441\u0451 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u0435 \u0438\u0437 \u043d\u0438\u0445.<\/p>\n<h2>\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0442\u0435\u043e\u0440\u0438\u0439<\/h2>\n<p>\u041d\u0430\u0447\u043d\u0451\u043c \u043c\u044b \u0441\u043e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043e\u0441\u043d\u043e\u0432 \u0434\u0432\u0443\u0445 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Data_model\">\u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0434\u0430\u043d\u043d\u044b\u0445<\/a> \u0438 <a href=\"https:\/\/web.archive.org\/web\/20210814063207\/https:\/\/en.wikipedia.org\/wiki\/Associative_model_of_data\">\u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0445<\/a>. \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u0432\u0432\u0435\u0441\u0442\u0438 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f \u0432 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442.<\/p>\n<h3>\u0420\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0430\u043b\u0433\u0435\u0431\u0440\u0430<\/h3>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Relational_algebra\">\u0420\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0430\u043b\u0433\u0435\u0431\u0440\u0430<\/a> \u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Relational_model\">\u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c<\/a> \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u044b \u043d\u0430 \u043f\u043e\u043d\u044f\u0442\u0438\u044f\u0445 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Relation_(database)\">\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f<\/a> \u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple\">n-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439<\/a>.<\/p>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Relation_(database)\">\u041e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435<\/a> \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Set_(mathematics)\">\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e<\/a> <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple\">n-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439<\/a>:<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{R \\subseteq S_1 \\times S_2 \\times \\dots \\times S_n.}\" alt=\"\\mathbf{R \\subseteq S_1 \\times S_2 \\times \\dots \\times S_n.}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e61\/ff7\/187\/e61ff7187b7395121c7d84e471201746.svg\" width=\"213\" height=\"19\"\/> <a href=\"https:\/\/dl.acm.org\/doi\/abs\/10.1145\/362384.362685\">[1]<\/a><\/p>\n<\/blockquote>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/e8f\/883\/fef\/e8f883fefd210cb011de4adc628c0880.png\" alt=\"\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435\u043c , \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c \u0441\u0442\u0440\u043e\u043a , \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0430\u0449\u0438\u0445 \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u0443 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044e .\" title=\"\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435\u043c , \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c \u0441\u0442\u0440\u043e\u043a , \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0430\u0449\u0438\u0445 \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u0443 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044e .\" width=\"2450\" height=\"1000\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e8f\/883\/fef\/e8f883fefd210cb011de4adc628c0880.png\"\/><\/p>\n<div><figcaption>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435\u043c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{R}\" alt=\"\\mathbf{R}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/203\/6f3\/b34\/2036f3b3468859de12152bc067e47dac.svg\" width=\"14\" height=\"14\"\/>, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c \u0441\u0442\u0440\u043e\u043a <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{r}\" alt=\"\\mathbf{r}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/33d\/2a7\/97e\/33d2a797ee86429db7e38da67483e75f.svg\" width=\"8\" height=\"11\"\/>, \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0430\u0449\u0438\u0445 \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u0443 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{S_1 \\times S_2 \\times \\dots \\times S_n}\" alt=\"\\mathbf{S_1 \\times S_2 \\times \\dots \\times S_n}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/828\/aec\/1c7\/828aec1c78c1359119fc7ccd175da2aa.svg\" width=\"132\" height=\"17\"\/>.<\/figcaption><\/div>\n<\/figure>\n<p>\u0413\u0434\u0435:<\/p>\n<ul>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{R}\" alt=\"\\mathbf{R}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/31f\/d32\/a0d\/31fd32a0d3f4da43190e7cb8a750eb76.svg\" width=\"17\" height=\"17\"\/> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Relation_(database)\">\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435<\/a> (\u0442\u0430\u0431\u043b\u0438\u0446\u0443);<\/p>\n<\/li>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\subseteq\" alt=\"\\subseteq\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b9b\/ec9\/a4e\/b9bec9a4e452e6275b2121100862a5b5.svg\" width=\"15\" height=\"18\"\/> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043b\u0435\u0432\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f <a href=\"https:\/\/en.wikipedia.org\/wiki\/Subset\">\u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c<\/a> \u043f\u0440\u0430\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f;<\/p>\n<\/li>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\times\" alt=\"\\times\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/301\/5d0\/0ff\/3015d00ff84b04fc4c65992435fbd09f.svg\" width=\"15\" height=\"12\"\/> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Cartesian_product\">\u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432<\/a>;<\/p>\n<\/li>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{S_n}\" alt=\"\\mathbf{S_n}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/940\/b2c\/ce2\/940b2cce2daa321e8da40ba1da98f586.svg\" width=\"23\" height=\"19\"\/> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Set_(mathematics)\">\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e<\/a> \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 (<a href=\"https:\/\/en.wikipedia.org\/wiki\/Data_domain\">\u0434\u043e\u043c\u0435\u043d<\/a>) \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043a\u0430\u0436\u0434\u0430\u044f \u044f\u0447\u0435\u0439\u043a\u0430 \u0432 \u0441\u0442\u043e\u043b\u0431\u0446\u0435 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{n}\" alt=\"\\mathbf{n}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/81c\/def\/0ab\/81cdef0ab3de1712010b4b2cc58c355a.svg\" width=\"13\" height=\"12\"\/>;<\/p>\n<\/li>\n<li>\n<p>\u0421\u0442\u0440\u043e\u043a\u0438 \u0438\u043b\u0438 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{R}\" alt=\"\\mathbf{R}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e84\/6f7\/61f\/e846f761f953c75ff51d3230849758c2.svg\" width=\"17\" height=\"17\"\/> \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u0432 \u0432\u0438\u0434\u0435 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple\">n-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439<\/a>.<\/p>\n<\/li>\n<\/ul>\n<p>\u0414\u0430\u043d\u043d\u044b\u0435 \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0432 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f n-\u043a\u043e\u0440\u0442\u0435\u0436\u0438 \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438, \u043c\u043e\u0436\u043d\u043e \u0442\u043e\u0447\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u0430\u043d\u043d\u044b\u0445. \u041d\u043e \u043d\u0443\u0436\u043d\u044b \u043b\u0438 \u0432\u043e\u043e\u0431\u0449\u0435 n-\u043a\u043e\u0440\u0442\u0435\u0436\u0438? \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u0430\u0436\u0434\u044b\u0439 n-\u043a\u043e\u0440\u0442\u0435\u0436 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple#Tuples_as_nested_ordered_pairs\">\u0432 \u0432\u0438\u0434\u0435 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440<\/a>. \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0441\u043b\u0435\u0434\u0443\u0435\u0442, \u0447\u0442\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440 \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043b\u044e\u0431\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u0422\u0430\u043a\u0436\u0435 \u043d\u0435 \u0447\u0430\u0441\u0442\u043e \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0448\u044c, \u0447\u0442\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u0445 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f n-\u043a\u043e\u0440\u0442\u0435\u0436\u0430\u043c\u0438 (\u0445\u043e\u0442\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0447\u0438\u0441\u043b\u043e \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0437\u043b\u043e\u0436\u0438\u0442\u044c \u043d\u0430 n-\u043a\u043e\u0440\u0442\u0435\u0436 \u0431\u0438\u0442\u043e\u0432). \u0412 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 SQL \u0431\u0430\u0437\u0430\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u0430\u0436\u0435 \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{32}\" alt=\"\\mathbf{32}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e52\/b83\/18e\/e52b8318e2fc33ea0901c041bc1f2acd.svg\" width=\"23\" height=\"16\"\/> \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0438 \u0435\u0435 \u0441\u0442\u0440\u043e\u043a\u0435 (n-\u043a\u043e\u0440\u0442\u0435\u0436\u0435). \u0422\u0430\u043a \u0447\u0442\u043e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{N}\" alt=\"\\mathbf{N}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/8f4\/3fc\/dc7\/8f43fcdc7fc9b1e936482129daffffa5.svg\" width=\"18\" height=\"17\"\/> \u043e\u0431\u044b\u0447\u043d\u043e \u043c\u0435\u043d\u044c\u0448\u0435 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{32}\" alt=\"\\mathbf{32}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ded\/f66\/0ff\/dedf660ff7a5b1d8bfa99b90ca0aca67.svg\" width=\"23\" height=\"16\"\/>. \u041f\u043e\u044d\u0442\u043e\u043c\u0443, \u0432 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043d\u0435\u0442 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 n-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439, \u0434\u0430\u0436\u0435 \u0432 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0431\u0430\u0437\u0430\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/828\/474\/4c4\/8284744c403ee753e00cc90e5b602dd7.png\" alt=\"\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0438 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0421\u0430\u0439\u043c\u043e\u043d\u0430 \u0412\u0438\u043b\u044c\u044f\u043c\u0441\u0430 \u0431\u044b\u043b\u0430 \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u0430 \u0434\u0432\u0430\u0436\u0434\u044b). \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0442\u0430\u0431\u043b\u0438\u0446 \u043f\u043e\u0434 \u043a\u0430\u0436\u0434\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445, \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043a\u0430\u043a \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0431\u044b\u043b\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u0432\u0443\u0445 \u0442\u0430\u0431\u043b\u0438\u0446, \u0430 \u043f\u043e\u0442\u043e\u043c \u0438 \u0432\u043e\u0432\u0441\u0435 \u043e\u0434\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u0432 \u0438\u043b\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432.\" title=\"\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0438 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0421\u0430\u0439\u043c\u043e\u043d\u0430 \u0412\u0438\u043b\u044c\u044f\u043c\u0441\u0430 \u0431\u044b\u043b\u0430 \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u0430 \u0434\u0432\u0430\u0436\u0434\u044b). \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0442\u0430\u0431\u043b\u0438\u0446 \u043f\u043e\u0434 \u043a\u0430\u0436\u0434\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445, \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043a\u0430\u043a \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0431\u044b\u043b\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u0432\u0443\u0445 \u0442\u0430\u0431\u043b\u0438\u0446, \u0430 \u043f\u043e\u0442\u043e\u043c \u0438 \u0432\u043e\u0432\u0441\u0435 \u043e\u0434\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u0432 \u0438\u043b\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432.\" width=\"671\" height=\"300\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/828\/474\/4c4\/8284744c403ee753e00cc90e5b602dd7.png\"\/><\/p>\n<div><figcaption>\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0438 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0421\u0430\u0439\u043c\u043e\u043d\u0430 \u0412\u0438\u043b\u044c\u044f\u043c\u0441\u0430 \u0431\u044b\u043b\u0430 \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u0430 \u0434\u0432\u0430\u0436\u0434\u044b). \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0442\u0430\u0431\u043b\u0438\u0446 \u043f\u043e\u0434 \u043a\u0430\u0436\u0434\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445, \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043a\u0430\u043a \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0431\u044b\u043b\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u0432\u0443\u0445 \u0442\u0430\u0431\u043b\u0438\u0446, \u0430 \u043f\u043e\u0442\u043e\u043c \u0438 \u0432\u043e\u0432\u0441\u0435 \u043e\u0434\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u0432 \u0438\u043b\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432.<\/figcaption><\/div>\n<\/figure>\n<h3>\u041e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0433\u0440\u0430\u0444<\/h3>\n<p>\u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0433\u0440\u0430\u0444 \u0438 \u0433\u0440\u0430\u0444\u044b \u0432 \u0446\u0435\u043b\u043e\u043c \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u044b \u043d\u0430 \u043f\u043e\u043d\u044f\u0442\u0438\u044f\u0445 \u0432\u0435\u0440\u0448\u0438\u043d\u044b \u0438 \u0440\u0435\u0431\u0440\u0430 (2-\u043a\u043e\u0440\u0442\u0435\u0436\u0430).<\/p>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Directed_graph\">\u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0433\u0440\u0430\u0444<\/a> <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{G}\" alt=\"\\mathbf{G}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2a0\/936\/873\/2a0936873b5fbf6dc6bce2aaabf716f5.svg\" width=\"18\" height=\"17\"\/> \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u0430\u043a:<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{G = (V, E), \\quad E \\subseteq V \\times V.}\" alt=\"\\mathbf{G = (V, E), \\quad E \\subseteq V \\times V.}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/fa9\/e1f\/e8e\/fa9e1fe8e000474930ee7d543ebfd8b1.svg\" width=\"240\" height=\"22\"\/> <a href=\"https:\/\/books.google.com\/books?id=vaXv_yhefG8C\">[2]<\/a><\/p>\n<\/blockquote>\n<p>\u0413\u0434\u0435:<\/p>\n<ul>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{V}\" alt=\"\\mathbf{V}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/59a\/ccb\/b8a\/59accbb8a95f3e359e9a3738c97d272a.svg\" width=\"17\" height=\"17\"\/>\u00a0&#8212; \u044d\u0442\u043e\u00a0<a href=\"https:\/\/en.wikipedia.org\/wiki\/Set_(mathematics)\">\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e<\/a>, \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f\u00a0<a href=\"https:\/\/en.wikipedia.org\/wiki\/Vertex_(graph_theory)\">\u0432\u0435\u0440\u0448\u0438\u043d\u0430\u043c\u0438<\/a>, \u0443\u0437\u043b\u0430\u043c\u0438 \u0438\u043b\u0438 \u0442\u043e\u0447\u043a\u0430\u043c\u0438;<\/p>\n<\/li>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{E}\" alt=\"\\mathbf{E}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/8c1\/379\/4d2\/8c13794d2118caf7d61eb611492c8e75.svg\" width=\"15\" height=\"17\"\/>\u00a0&#8212; \u044d\u0442\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u00a0<a href=\"https:\/\/en.wikipedia.org\/wiki\/Ordered_pair\">\u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440<\/a> (2-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439)\u00a0\u0432\u0435\u0440\u0448\u0438\u043d, \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0434\u0443\u0433\u0430\u043c\u0438, \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u0440\u0435\u0431\u0440\u0430\u043c\u0438 (\u0438\u043d\u043e\u0433\u0434\u0430 \u043f\u0440\u043e\u0441\u0442\u043e \u0440\u0435\u0431\u0440\u0430\u043c\u0438), \u0441\u0442\u0440\u0435\u043b\u043a\u0430\u043c\u0438 \u0438\u043b\u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u043b\u0438\u043d\u0438\u044f\u043c\u0438.<\/p>\n<\/li>\n<\/ul>\n<p>\u0414\u0430\u043d\u043d\u044b\u0435 \u0432 \u043c\u043e\u0434\u0435\u043b\u0438 \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0433\u0440\u0430\u0444\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u0432 \u0432\u0438\u0434\u0435 \u0434\u0432\u0443\u0445 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432 \u0443\u0437\u043b\u043e\u0432 \u0438 \u0440\u0435\u0431\u0435\u0440. \u0415\u0451 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0447\u0442\u0438 \u0432\u0441\u0435\u0445 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u0440\u043e\u043c\u0435, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439 (n-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439). \u0418\u043d\u043e\u0433\u0434\u0430 \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0432\u0435\u0440\u0448\u0438\u043d, \u043a\u0430\u043a \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439. \u0418 \u0445\u043e\u0442\u044f \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043e\u043d \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0434\u0443\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u0434\u0435\u0434\u0443\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0432 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u0441\u043b\u043e\u0436\u043d\u0435\u043d\u0430 \u0438\u043b\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430. \u0415\u0449\u0451, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432 \u0433\u0440\u0430\u0444\u0430\u0445 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0440\u0430\u0437\u043b\u043e\u0436\u0435\u043d\u0438\u0435 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple#Tuples_as_nested_sets\">\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043d\u0430 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430<\/a>, \u043d\u043e \u043d\u0430 \u043d\u0430\u0448 \u0432\u0437\u0433\u043b\u044f\u0434 \u044d\u0442\u043e \u043d\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439. \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u043d\u0435 \u043e\u0434\u043d\u0438 \u043c\u044b \u0442\u0430\u043a \u0441\u0447\u0438\u0442\u0430\u0435\u043c, \u0447\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c, \u043f\u043e\u0447\u0435\u043c\u0443 \u043c\u044b \u043d\u0435 \u0441\u043c\u043e\u0433\u043b\u0438 \u043d\u0430\u0439\u0442\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u044b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u0440\u0443\u0433\u0438\u0435 \u043b\u044e\u0434\u0438 \u0442\u0430\u043a \u0434\u0435\u043b\u0430\u043b\u0438.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/f3d\/070\/5f3\/f3d0705f38254a8eb157ca72cf53f288.png\" alt=\"\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432 \u0438 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439. \u0412\u0435\u0440\u0448\u0438\u043d\u0430 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u0430 \u0437\u0430\u043c\u043a\u043d\u0443\u0442\u043e\u0439 \u043d\u0430 \u0441\u0435\u0431\u044f \u0441\u0432\u044f\u0437\u0438, \u0442\u043e \u0435\u0441\u0442\u044c \u0441\u0432\u044f\u0437\u0438 \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432 \u0441\u0435\u0431\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0438 \u0432 \u0441\u0435\u0431\u0435 \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f. \u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\u0435 \u0440\u0435\u0431\u0440\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u0443\u044e \u0441\u0432\u044f\u0437\u044c-\u0434\u0443\u043f\u043b\u0435\u0442. \u0410 \u043d\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0435 \u0440\u0435\u0431\u0440\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u0440\u0443 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0432\u044f\u0437\u0435\u0439-\u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0432 \u043e\u0431\u043e\u0438\u0445 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u0445. \u0422\u043e \u0435\u0441\u0442\u044c \u0435\u0441\u043b\u0438 \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 - \u0432\u0435\u0440\u0448\u0438\u043d\u044b \u0438 \u0440\u0451\u0431\u0440\u0430, \u0442\u043e \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0432\u044f\u0437\u0435\u0439 (\u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043f\u043e\u0445\u043e\u0436\u0438\u0445 \u043d\u0430 \u0440\u0451\u0431\u0440\u0430).\" title=\"\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432 \u0438 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439. \u0412\u0435\u0440\u0448\u0438\u043d\u0430 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u0430 \u0437\u0430\u043c\u043a\u043d\u0443\u0442\u043e\u0439 \u043d\u0430 \u0441\u0435\u0431\u044f \u0441\u0432\u044f\u0437\u0438, \u0442\u043e \u0435\u0441\u0442\u044c \u0441\u0432\u044f\u0437\u0438 \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432 \u0441\u0435\u0431\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0438 \u0432 \u0441\u0435\u0431\u0435 \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f. \u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\u0435 \u0440\u0435\u0431\u0440\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u0443\u044e \u0441\u0432\u044f\u0437\u044c-\u0434\u0443\u043f\u043b\u0435\u0442. \u0410 \u043d\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0435 \u0440\u0435\u0431\u0440\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u0440\u0443 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0432\u044f\u0437\u0435\u0439-\u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0432 \u043e\u0431\u043e\u0438\u0445 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u0445. \u0422\u043e \u0435\u0441\u0442\u044c \u0435\u0441\u043b\u0438 \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 - \u0432\u0435\u0440\u0448\u0438\u043d\u044b \u0438 \u0440\u0451\u0431\u0440\u0430, \u0442\u043e \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0432\u044f\u0437\u0435\u0439 (\u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043f\u043e\u0445\u043e\u0436\u0438\u0445 \u043d\u0430 \u0440\u0451\u0431\u0440\u0430).\" width=\"1778\" height=\"840\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f3d\/070\/5f3\/f3d0705f38254a8eb157ca72cf53f288.png\"\/><\/p>\n<div><figcaption>\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432 \u0438 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439. \u0412\u0435\u0440\u0448\u0438\u043d\u0430 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u0430 <a href=\"https:\/\/linksplatform.github.io\/itself.html\">\u0437\u0430\u043c\u043a\u043d\u0443\u0442\u043e\u0439 \u043d\u0430 \u0441\u0435\u0431\u044f \u0441\u0432\u044f\u0437\u0438<\/a>, \u0442\u043e \u0435\u0441\u0442\u044c \u0441\u0432\u044f\u0437\u0438 \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432 \u0441\u0435\u0431\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0438 \u0432 \u0441\u0435\u0431\u0435 \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f. \u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\u0435 \u0440\u0435\u0431\u0440\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u0443\u044e \u0441\u0432\u044f\u0437\u044c-\u0434\u0443\u043f\u043b\u0435\u0442. \u0410 \u043d\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0435 \u0440\u0435\u0431\u0440\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u0440\u0443 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0432\u044f\u0437\u0435\u0439-\u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0432 \u043e\u0431\u043e\u0438\u0445 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u0445. \u0422\u043e \u0435\u0441\u0442\u044c \u0435\u0441\u043b\u0438 \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 &#8212; \u0432\u0435\u0440\u0448\u0438\u043d\u044b \u0438 \u0440\u0451\u0431\u0440\u0430, \u0442\u043e \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0432\u044f\u0437\u0435\u0439 (\u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043f\u043e\u0445\u043e\u0436\u0438\u0445 \u043d\u0430 \u0440\u0451\u0431\u0440\u0430).<\/figcaption><\/div>\n<\/figure>\n<h3>\u0422\u0435\u043e\u0440\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439<\/h3>\n<p>\u0422\u0435\u043e\u0440\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0430 \u043d\u0430 \u043f\u043e\u043d\u044f\u0442\u0438\u0438 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<p><a href=\"https:\/\/habr.com\/ru\/companies\/deepfoundation\/articles\/576398\">\u0421\u0432\u044f\u0437\u044c<\/a> \u0432 \u043f\u0440\u043e\u0435\u043a\u0446\u0438\u0438 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u0432 \u0442\u0435\u043e\u0440\u0438\u044e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple\">n-\u043a\u043e\u0440\u0442\u0435\u0436<\/a> \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438, \u0443 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0435\u0441\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0441\u0432\u044f\u0437\u0438 \u043c\u043e\u0433\u0443\u0442 \u0441\u0441\u044b\u043b\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u043d\u0435\u0451.<\/p>\n<blockquote>\n<p>\u0421\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043d\u044f\u0442\u0438\u0435 \u0441\u0441\u044b\u043b\u043a\u0438 \u0437\u0434\u0435\u0441\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u044b\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432. \u0421\u0430\u043c\u0430 \u0436\u0435 \u0442\u0435\u043e\u0440\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439 \u043c\u043e\u0436\u0435\u0442 \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0435\u0431\u044f \u0441\u0430\u043c\u0430 \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0435\u0440\u043c\u0438\u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0438. \u0422\u043e \u0435\u0441\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0430 \u044d\u0442\u043e \u0447\u0430\u0441\u0442\u043d\u044b\u0439 \u0441\u043b\u0443\u0447\u0430\u0439 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<\/blockquote>\n<h4>\u0414\u0443\u043f\u043b\u0435\u0442\u044b<\/h4>\n<p>\u0421\u0432\u044f\u0437\u044c-\u0434\u0443\u043f\u043b\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u043c (2-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u043c \u0438\u043b\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Ordered_pair#:~:text=In%20mathematics%2C%20an%20ordered%20pair,%7Bb%2C%20a%7D.\">\u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u0430\u044f \u043f\u0430\u0440\u043e\u0439<\/a>) \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438. \u0423 \u0441\u0432\u044f\u0437\u0438-\u0434\u0443\u043f\u043b\u0435\u0442\u0430 \u0435\u0441\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0430.<\/p>\n<pre><code class=\"python\">L = { 1 , 2 }  L \u00d7 L = {   (1, 1),   (1, 2),   (2, 1),   (2, 2), }<\/code><\/pre>\n<p>\u0413\u0434\u0435:<img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L\" alt=\"L\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/611\/470\/8ad\/6114708ad83523cef2accb96b6ce0822.svg\" width=\"13\" height=\"17\"\/>\u00a0\u2014 \u044d\u0442\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0441\u0441\u044b\u043b\u043e\u043a (\u043e\u0442 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u0433\u043e Links\u00a0\u2014 \u0441\u0441\u044b\u043b\u043a\u0438).<\/p>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0432 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L\" alt=\"L\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/611\/470\/8ad\/6114708ad83523cef2accb96b6ce0822.svg\" width=\"13\" height=\"17\"\/> \u0432\u0441\u0435\u0433\u043e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"2\" alt=\"2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d8b\/c1a\/427\/d8bc1a427a51f982fb1e690887507dea.svg\" width=\"10\" height=\"16\"\/> \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0441\u0432\u044f\u0437\u0438, \u0442\u043e \u0435\u0441\u0442\u044c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"1\" alt=\"1\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/333\/e60\/154\/333e601544723cbe262cc365d8fda709.svg\" width=\"10\" height=\"16\"\/> \u0438 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"2\" alt=\"2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d95\/a65\/5b2\/d95a655b25e4834e57a16ad6cb0a24e2.svg\" width=\"10\" height=\"17\"\/>. \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 \u0432 \u0441\u0435\u0442\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0439 \u043d\u0430 \u0442\u0430\u043a\u043e\u043c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435 \u0441\u0441\u044b\u043b\u043e\u043a \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"2\" alt=\"2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/fc0\/79c\/046\/fc079c046a01cde68f2db71997525c56.svg\" width=\"10\" height=\"17\"\/> \u0441\u0432\u044f\u0437\u0438.<\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f <a href=\"https:\/\/en.wikipedia.org\/wiki\/Cartesian_product\">\u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/a> <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L \" alt=\"L \" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/611\/470\/8ad\/6114708ad83523cef2accb96b6ce0822.svg\" width=\"13\" height=\"17\"\/> \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f, \u0442\u043e \u0435\u0441\u0442\u044c<img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L \\times L\" alt=\"L \\times L\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/4cf\/b42\/066\/4cfb420661d18a96f324dfc46fb6ad30.svg\" width=\"51\" height=\"17\"\/>.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/f23\/51b\/fe4\/f2351bfe4d41eb941faf542197d51163.png\" alt=\"alt text\" title=\"\u041c\u0430\u0442\u0440\u0438\u0446\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0430\u044f \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 { 1, 2 } \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f. \u0417\u0434\u0435\u0441\u044c \u043c\u044b \u0432\u0438\u0434\u0438\u043c \u0447\u0442\u043e \u0443 \u0441\u0432\u044f\u0437\u0435\u0439 \u0441 \u0434\u0432\u0443\u043c\u044f \u0441\u0441\u044b\u043b\u043a\u0430\u043c\u0438 \u043d\u0430 \u0441\u0432\u044f\u0437\u0438 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0432\u0441\u0435\u0433\u043e 4 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f.\" width=\"1032\" height=\"774\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f23\/51b\/fe4\/f2351bfe4d41eb941faf542197d51163.png\"\/><\/p>\n<div><figcaption>\u041c\u0430\u0442\u0440\u0438\u0446\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0430\u044f \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 { 1, 2 } \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f. \u0417\u0434\u0435\u0441\u044c \u043c\u044b \u0432\u0438\u0434\u0438\u043c \u0447\u0442\u043e \u0443 \u0441\u0432\u044f\u0437\u0435\u0439 \u0441 \u0434\u0432\u0443\u043c\u044f \u0441\u0441\u044b\u043b\u043a\u0430\u043c\u0438 \u043d\u0430 \u0441\u0432\u044f\u0437\u0438 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0432\u0441\u0435\u0433\u043e 4 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f.<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/752\/178\/3cd\/7521783cd0938c6d1f98667963df7467.png\" alt=\"alt text\" title=\"\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u0441\u0442\u0440\u043e\u043a \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0445 \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439 \u0434\u043b\u044f \u0441\u0435\u0442\u0438 \u0441 \u0434\u0432\u0443\u043c\u044f \u0441\u0432\u044f\u0437\u044f\u043c\u0438, \u044d\u0442\u0438 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f { 1, 2 } \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f.\" width=\"1024\" height=\"1365\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/752\/178\/3cd\/7521783cd0938c6d1f98667963df7467.png\"\/><\/p>\n<div><figcaption>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u0441\u0442\u0440\u043e\u043a \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0445 \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439 \u0434\u043b\u044f \u0441\u0435\u0442\u0438 \u0441 \u0434\u0432\u0443\u043c\u044f \u0441\u0432\u044f\u0437\u044f\u043c\u0438, \u044d\u0442\u0438 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f { 1, 2 } \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f.<\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439-\u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a:<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{\\lambda: L \\to L \\times L}\" alt=\"\\mathbf{\\lambda: L \\to L \\times L}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f2c\/b3a\/9e6\/f2cb3a9e6a92e192bfb30aa3ab04c374.svg\" width=\"124\" height=\"17\"\/><\/p>\n<\/blockquote>\n<p>\u0413\u0434\u0435:<\/p>\n<ul>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\to\" alt=\"\\to\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b44\/f07\/bad\/b44f07bad2b7ec1faa314c632129e686.svg\" width=\"20\" height=\"14\"\/>\u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Function_(mathematics)\">\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 (\u0444\u0443\u043d\u043a\u0446\u0438\u044e)<\/a>;<\/p>\n<\/li>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{\\lambda}\" alt=\"\\mathbf{\\lambda}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/35c\/a66\/527\/35ca66527c3493632880e4df4e5a76b0.svg\" width=\"11\" height=\"17\"\/>  \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432;<\/p>\n<\/li>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{L}\" alt=\"\\mathbf{L}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/102\/766\/32a\/10276632ae4bfa07367daf235a73c68c.svg\" width=\"14\" height=\"17\"\/> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"1 \\to (1, 1)\" alt=\"1 \\to (1, 1)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e20\/117\/3ee\/e201173eeb4173dad6b5d088650dd2d0.svg\" width=\"84\" height=\"22\"\/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"2 \\to (2, 2)\" alt=\"2 \\to (2, 2)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/bd6\/77c\/115\/bd677c1155f209d676352169d3816f78.svg\" width=\"84\" height=\"22\"\/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{3 \\to (1, 2)}\" alt=\"\\mathbf{3 \\to (1, 2)}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/bd1\/42a\/295\/bd142a295ff649cac225e73f1ec6992a.svg\" width=\"92\" height=\"22\"\/><\/p>\n<\/blockquote>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/87a\/8a4\/914\/87a8a49142aa21abf813634df99f478c.png\" alt=\"alt text\" title=\"\u0421\u0435\u0442\u044c \u0438\u0437 \u0442\u0440\u0451\u0445 \u0441\u0432\u044f\u0437\u0435\u0439. \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0435\u0442\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u043f\u043e\u0445\u043e\u0436\u0435\u0435 \u043d\u0430 \u0433\u0440\u0430\u0444, \u043d\u043e \u0442\u0430\u043a\u0443\u044e \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u043c\u044b \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u0441\u0435\u0442\u044c\u044e \u0441\u0432\u044f\u0437\u0435\u0439.\u00a01-\u044f \u0438 2-\u044f \u0441\u0432\u044f\u0437\u0438 \u0438\u043c\u0435\u044e\u0442 \u043f\u043e\u0445\u043e\u0436\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443. \u0422\u043e \u0435\u0441\u0442\u044c \u043e\u0431\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0442\u0441\u044f \u0432 \u0441\u0435\u0431\u0435 \u0438 \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u0441\u0435\u0431\u0435. \u041e\u0442\u0441\u044e\u0434\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0447\u0442\u043e \u0432\u043c\u0435\u0441\u0442\u043e \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u0432\u0438\u0434\u0435 \u0442\u043e\u0447\u043a\u0438 \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432 \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0437\u0430\u043c\u043a\u043d\u0443\u0442\u043e\u0439 \u0441\u0442\u0440\u0435\u043b\u043a\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u043e\u0445\u043e\u0436\u0435 \u043d\u0430 \u043d\u0435\u0447\u0442\u043e \u0432\u0440\u043e\u0434\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0441\u0442\u0438.\" width=\"781\" height=\"703\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/87a\/8a4\/914\/87a8a49142aa21abf813634df99f478c.png\"\/><\/p>\n<div><figcaption>\u0421\u0435\u0442\u044c \u0438\u0437 \u0442\u0440\u0451\u0445 \u0441\u0432\u044f\u0437\u0435\u0439. \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0435\u0442\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u043f\u043e\u0445\u043e\u0436\u0435\u0435 \u043d\u0430 \u0433\u0440\u0430\u0444, \u043d\u043e \u0442\u0430\u043a\u0443\u044e \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u043c\u044b \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u0441\u0435\u0442\u044c\u044e \u0441\u0432\u044f\u0437\u0435\u0439.\u00a01-\u044f \u0438 2-\u044f \u0441\u0432\u044f\u0437\u0438 \u0438\u043c\u0435\u044e\u0442 \u043f\u043e\u0445\u043e\u0436\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443. \u0422\u043e \u0435\u0441\u0442\u044c \u043e\u0431\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0442\u0441\u044f \u0432 \u0441\u0435\u0431\u0435 \u0438 \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u0441\u0435\u0431\u0435. \u041e\u0442\u0441\u044e\u0434\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0447\u0442\u043e \u0432\u043c\u0435\u0441\u0442\u043e \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u0432\u0438\u0434\u0435 \u0442\u043e\u0447\u043a\u0438 \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432 \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0437\u0430\u043c\u043a\u043d\u0443\u0442\u043e\u0439 \u0441\u0442\u0440\u0435\u043b\u043a\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u043e\u0445\u043e\u0436\u0435 \u043d\u0430 \u043d\u0435\u0447\u0442\u043e \u0432\u0440\u043e\u0434\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0441\u0442\u0438.<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/a45\/b25\/979\/a45b25979018b0847a1cf3ae1e34df60.png\" alt=\"alt text\" title=\"\u042d\u0442\u043e \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0432 \u0432\u0438\u0434\u0435 \u043c\u0430\u0442\u0440\u0438\u0446\u044b, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439.\u00a0\u0417\u0434\u0435\u0441\u044c \u043e\u0440\u0430\u043d\u0436\u0435\u0432\u044b\u043c \u0446\u0432\u0435\u0442\u043e\u043c \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u044b \u0441\u0432\u044f\u0437\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0434\u0430\u044e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439. \u0422\u043e \u0435\u0441\u0442\u044c \u0438\u0437 9 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0441\u0432\u044f\u0437\u0438 \u0432\u044b\u0431\u0440\u0430\u043d\u044b \u0432\u0441\u0435\u0433\u043e 3 \u0441\u0432\u044f\u0437\u0438, \u0447\u0442\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0440\u0443 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 L.\" width=\"1560\" height=\"1186\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a45\/b25\/979\/a45b25979018b0847a1cf3ae1e34df60.png\"\/><\/p>\n<div><figcaption>\u042d\u0442\u043e \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0432 \u0432\u0438\u0434\u0435 \u043c\u0430\u0442\u0440\u0438\u0446\u044b, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439.\u00a0\u0417\u0434\u0435\u0441\u044c \u043e\u0440\u0430\u043d\u0436\u0435\u0432\u044b\u043c \u0446\u0432\u0435\u0442\u043e\u043c \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u044b \u0441\u0432\u044f\u0437\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0434\u0430\u044e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439. \u0422\u043e \u0435\u0441\u0442\u044c \u0438\u0437 9 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0441\u0432\u044f\u0437\u0438 \u0432\u044b\u0431\u0440\u0430\u043d\u044b \u0432\u0441\u0435\u0433\u043e 3 \u0441\u0432\u044f\u0437\u0438, \u0447\u0442\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0440\u0443 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 L.<\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439-\u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u0432\u044f\u0437\u0438-\u0434\u0443\u043f\u043b\u0435\u0442\u044b \u043c\u043e\u0433\u0443\u0442:<\/p>\n<ul>\n<li>\n<p>\u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442 \u0441\u043e \u0441\u0432\u043e\u0438\u043c\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438;<\/p>\n<\/li>\n<li>\n<p>\u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0442\u044c \u0434\u0432\u0430 \u0434\u0443\u043f\u043b\u0435\u0442\u0430 \u0432\u043c\u0435\u0441\u0442\u0435, \u0447\u0435\u0433\u043e \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0442\u0435\u043e\u0440\u0438\u044f \u0433\u0440\u0430\u0444\u043e\u0432;<\/p>\n<\/li>\n<li>\n<p>\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c (n-\u043a\u043e\u0440\u0442\u0435\u0436) \u0432 \u0432\u0438\u0434\u0435 \u0434\u0435\u0440\u0435\u0432\u0430, \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0433\u043e \u0438\u0437 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440;<\/p>\n<\/li>\n<li>\n<p>\u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u043c \u044f\u0437\u044b\u043a\u0435, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u043e \u043c\u043e\u0434\u0435\u043b\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Predicate_(grammar)\">subject-predicate<\/a>.<\/p>\n<\/li>\n<\/ul>\n<p>\u0411\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u044d\u0442\u043e\u043c\u0443 \u0434\u0443\u043f\u043b\u0435\u0442\u044b \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c, \u043a\u0430\u043a \u043c\u044b \u0432\u0435\u0440\u0438\u043c, \u043b\u044e\u0431\u0443\u044e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<h4>\u0422\u0440\u0438\u043f\u043b\u0435\u0442\u044b<\/h4>\n<p>\u0421\u0432\u044f\u0437\u044c-\u0442\u0440\u0438\u043f\u043b\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u043c (3-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u043c) \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<pre><code class=\"python\">L = { 1 , 2 }  L \u00d7 L = {   (1, 1),   (1, 2),   (2, 1),   (2, 2), }  L \u00d7 L \u00d7 L = {   (1, 1, 1),   (1, 1, 2),   (1, 2, 1),   (1, 2, 2),   (2, 1, 1),   (2, 1, 2),   (2, 2, 1),   (2, 2, 2), }<\/code><\/pre>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/43c\/8b1\/b36\/43c8b1b36ce92b6cf1cf2b402efd95d8.png\" alt=\"alt text\" title=\"\u0422\u0440\u0451\u0445\u043c\u0435\u0440\u043d\u044b\u0439 \u043a\u0443\u0431-\u043c\u0430\u0442\u0440\u0438\u0446\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0438-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u0430. \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0442\u0430\u043a\u043e\u0439 \u043a\u0443\u0431 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 { 1 , 2 } \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f, \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e, \u0442\u043e \u0435\u0441\u0442\u044c { 1 , 2 } \u00d7 { 1 , 2 } \u00d7 { 1 , 2 }.\" width=\"1032\" height=\"774\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/43c\/8b1\/b36\/43c8b1b36ce92b6cf1cf2b402efd95d8.png\"\/><\/p>\n<div><figcaption>\u0422\u0440\u0451\u0445\u043c\u0435\u0440\u043d\u044b\u0439 \u043a\u0443\u0431-\u043c\u0430\u0442\u0440\u0438\u0446\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0438-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u0430. \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0442\u0430\u043a\u043e\u0439 \u043a\u0443\u0431 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 { 1 , 2 } \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f, \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e, \u0442\u043e \u0435\u0441\u0442\u044c { 1 , 2 } \u00d7 { 1 , 2 } \u00d7 { 1 , 2 }.<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/ca2\/b5e\/f9c\/ca2b5ef9c0d0989a2ba8a8d4f097f184.png\" alt=\"alt text\" title=\"\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0438-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 { 1 , 2 } \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f, \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e, \u0442\u043e \u0435\u0441\u0442\u044c { 1 , 2 } \u00d7 { 1 , 2 } \u00d7 { 1 , 2 }. \" width=\"1024\" height=\"1365\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ca2\/b5e\/f9c\/ca2b5ef9c0d0989a2ba8a8d4f097f184.png\"\/><\/p>\n<div><figcaption>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0438-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 { 1 , 2 } \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f, \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e, \u0442\u043e \u0435\u0441\u0442\u044c { 1 , 2 } \u00d7 { 1 , 2 } \u00d7 { 1 , 2 }. <\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a:<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{\\lambda : L \\to L \\times L \\times L}\" alt=\"\\mathbf{\\lambda : L \\to L \\times L \\times L}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c51\/7e2\/87d\/c517e287d2a7d79c2b935cd4e973523a.svg\" width=\"162\" height=\"17\"\/><\/p>\n<\/blockquote>\n<p>\u0413\u0434\u0435:<\/p>\n<ul>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{\\lambda}\" alt=\"\\mathbf{\\lambda}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2de\/458\/b3f\/2de458b3fcb130fb1d0643151ef8037d.svg\" width=\"11\" height=\"17\"\/> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0443\u044e \u0441\u0435\u0442\u044c \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u0432;<\/p>\n<\/li>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{L}\" alt=\"\\mathbf{L}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e92\/594\/55f\/e9259455f97666907efd09c7ced3d127.svg\" width=\"14\" height=\"17\"\/> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"1 \\to (1, 1, 1)\" alt=\"1 \\to (1, 1, 1)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e5b\/d73\/c80\/e5bd73c8055d79fe139111aa2a55e67a.svg\" width=\"103\" height=\"22\"\/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"2 \\to (2, 2, 2)\" alt=\"2 \\to (2, 2, 2)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/07d\/19d\/68a\/07d19d68a950f6fbda8f7c8ad162a03f.svg\" width=\"103\" height=\"22\"\/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"3 \\to (3, 3, 3)\" alt=\"3 \\to (3, 3, 3)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/48c\/e97\/ca3\/48ce97ca3af3d696ca20be41b206b371.svg\" width=\"103\" height=\"22\"\/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{4 \\to (1, 2, 3)}\" alt=\"\\mathbf{4 \\to (1, 2, 3)}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a8f\/daf\/402\/a8fdaf4021ef03e2c46d781083b219b2.svg\" width=\"112\" height=\"22\"\/><\/p>\n<\/blockquote>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/getpro\/habr\/upload_files\/76c\/672\/576\/76c6725766a17ea75ebed8e99abd070e.jpeg\" alt=\"alt text\" title=\"\u0413\u0440\u0430\u0444\u043e-\u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0435 \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 4-\u0445 \u0441\u0432\u044f\u0437\u0435\u0439-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u0432.\" width=\"780\" height=\"585\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/76c\/672\/576\/76c6725766a17ea75ebed8e99abd070e.jpeg\" data-blurred=\"true\"\/><\/p>\n<div><figcaption>\u0413\u0440\u0430\u0444\u043e-\u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0435 \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 4-\u0445 \u0441\u0432\u044f\u0437\u0435\u0439-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u0432.<\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u0432\u044f\u0437\u0438-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u044b \u043c\u043e\u0433\u0443\u0442 \u0434\u0435\u043b\u0430\u0442\u044c \u0442\u043e \u0436\u0435, \u0447\u0442\u043e \u0438 \u0441\u0432\u044f\u0437\u0438-\u0434\u0443\u043f\u043b\u0435\u0442\u044b. \u0422\u0430\u043a \u043a\u0430\u043a \u0432 \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u0430\u0445 \u0435\u0441\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0430, \u0442\u043e \u0435\u0451 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u0442\u0438\u043f\u0430 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u0432\u044f\u0437\u0438-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u044b \u043c\u043e\u0433\u0443\u0442:<\/p>\n<ul>\n<li>\n<p>\u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442, \u0435\u0433\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435;<\/p>\n<\/li>\n<li>\n<p>\u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0442\u044c \u0434\u0432\u0435 \u0441\u0432\u044f\u0437\u0438 \u0432\u043c\u0435\u0441\u0442\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u043c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435\u043c;<\/p>\n<\/li>\n<li>\n<p>\u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u043c \u044f\u0437\u044b\u043a\u0435, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u043e \u043c\u043e\u0434\u0435\u043b\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Subject%E2%80%93verb%E2%80%93object_word_order\">subject-verb-object<\/a>.<\/p>\n<\/li>\n<\/ul>\n<h4>\u0412\u0435\u043a\u0442\u043e\u0440\u0430<\/h4>\n<p>\u0412\u0435\u043a\u0442\u043e\u0440 (\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c) \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438 \u0442\u0430\u043a\u0436\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u043a\u0430\u043a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple\">n-\u043a\u043e\u0440\u0442\u0435\u0436<\/a>, \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0431\u0449\u0438\u043c \u0441\u043b\u0443\u0447\u0430\u0435\u043c.<\/p>\n<p>\u0421\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439 \u0432 \u043e\u0431\u0449\u0435\u043c \u0432\u0438\u0434\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u0430\u043a:<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{\\lambda : L \\rightarrow \\underbrace{ L \\times L \\times \\ldots \\times L}_{n}}\" alt=\"\\mathbf{\\lambda : L \\rightarrow \\underbrace{ L \\times L \\times \\ldots \\times L}_{n}}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5c7\/f16\/636\/5c7f1663641976ee66d0f70703967ef6.svg\" width=\"209\" height=\"45\"\/><\/p>\n<\/blockquote>\n<p>\u0413\u0434\u0435:<\/p>\n<ul>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{\\lambda}\" alt=\"\\mathbf{\\lambda}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b2a\/298\/365\/b2a2983658ac09d0fcd4f92eec2b7736.svg\" width=\"11\" height=\"17\"\/> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0443\u044e \u0441\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439;<\/p>\n<\/li>\n<li>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{L}\" alt=\"\\mathbf{L}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/4c9\/a5d\/cc5\/4c9a5dcc5d8c83fdc93af35cf54f0f36.svg\" width=\"14\" height=\"17\"\/> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"1 \\to (1)\" alt=\"1 \\to (1)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/be3\/043\/b11\/be3043b119b494fff27df2bd70b5f955.svg\" width=\"65\" height=\"22\"\/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"2 \\to (2, 2)\" alt=\"2 \\to (2, 2)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/318\/829\/e3c\/318829e3ceaf6ea333f3ab9e248426c2.svg\" width=\"84\" height=\"22\"\/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"3 \\to (3, 3, 3)\" alt=\"3 \\to (3, 3, 3)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/390\/88e\/cb1\/39088ecb103b398d3eb81ba270bbf089.svg\" width=\"103\" height=\"22\"\/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{4 \\to (1, 2, 3, 2, 1)}\" alt=\"\\mathbf{4 \\to (1, 2, 3, 2, 1)}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/044\/ec4\/584\/044ec45845d69ce2ab702ba7db156212.svg\" width=\"154\" height=\"22\"\/><\/p>\n<\/blockquote>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f n-\u043a\u043e\u0440\u0442\u0435\u0436\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0441\u0432\u044f\u0437\u0435\u0439.<\/p>\n<p>\u041f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 (\u0432\u0435\u043a\u0442\u043e\u0440\u0430) \u043f\u043e \u0441\u0443\u0442\u0438 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u044b \u043f\u043e \u0432\u044b\u0440\u0430\u0437\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0441\u0438\u043b\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438. \u0418 \u044d\u0442\u043e \u0435\u0449\u0451 \u043f\u0440\u0435\u0434\u0441\u0442\u043e\u0438\u0442 \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u043e\u0439 \u0442\u0435\u043e\u0440\u0438\u0438. \u041d\u043e \u043a\u043e\u0433\u0434\u0430 \u0431\u044b\u043b\u043e \u043c\u044b \u0437\u0430\u043c\u0435\u0442\u0438\u043b\u0438, \u0447\u0442\u043e \u0434\u0443\u043f\u043b\u0435\u0442\u044b \u0438 \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u044b \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u044b \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439 \u043b\u044e\u0431\u043e\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0430, \u0442\u043e \u043f\u043e\u044f\u0432\u0438\u043b\u043e\u0441\u044c \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u0431 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0430\u043c\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e.<\/p>\n<h3>\u0418\u0442\u043e\u0433\u0438 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f<\/h3>\n<p>\u0420\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0441\u0451, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c. \u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f \u0436\u0435 \u043c\u043e\u0434\u0435\u043b\u044c \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0445\u043e\u0440\u043e\u0448\u0430 \u0432 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439 \u0438 \u043d\u0435 \u0442\u0430\u043a \u0445\u043e\u0440\u043e\u0448\u0430 \u0432 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439.<\/p>\n<p>\u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u043b\u0435\u0433\u043a\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c n-\u043a\u043e\u0440\u0442\u0435\u0436 \u043d\u0435\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439 \u0441 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{n \\geq 2}\" alt=\"\\mathbf{n \\geq 2}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b29\/c29\/6e9\/b29c296e9caa29140c03d5ec5fa2da0d.svg\" width=\"50\" height=\"18\"\/>, \u043e\u043d\u0430 \u0441\u0442\u043e\u043b\u044c \u0436\u0435 \u0445\u043e\u0440\u043e\u0448\u0430, \u043a\u0430\u043a \u0442\u0435\u043e\u0440\u0438\u044f \u0433\u0440\u0430\u0444\u043e\u0432, \u0432 \u0441\u0432\u043e\u0435\u0439 \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u0438, \u0438 \u043e\u043d\u0430 \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0449\u043d\u0430, \u043a\u0430\u043a \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c, \u0438 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443 SQL. \u0422\u0430\u043a\u0436\u0435 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0441\u0442\u0440\u043e\u0433\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u043f\u0440\u0438\u0447\u0451\u043c \u0442\u0430\u043a \u0447\u0442\u043e \u043b\u044e\u0431\u0430\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0432\u0441\u0435\u0433\u043e \u043e\u0434\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u044c\u044e, \u0447\u0442\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0434\u043b\u044f \u0434\u0435\u0434\u0443\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u0438.<\/p>\n<p>\u0412 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043d\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u043c \u043e\u0434\u043d\u043e\u043c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0438, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0435\u0435 \u0432\u0435\u0441\u0442\u0438 \u0441\u0435\u0431\u044f \u043a\u0430\u043a \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c. \u0418 \u0432 \u044d\u0442\u043e\u043c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0438 \u043d\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u043c 2-3 \u0441\u0442\u043e\u043b\u0431\u0446\u0430\u0445, \u043a\u0440\u043e\u043c\u0435 \u044f\u0432\u043d\u043e\u0433\u043e ID \u0438\u043b\u0438 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0433\u043e ID \u0441\u0442\u0440\u043e\u043a\u0438.<\/p>\n<p>\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0440\u0435\u0431\u0440\u043e \u043c\u0435\u0436\u0434\u0443 \u0440\u0435\u0431\u0440\u0430\u043c\u0438 \u043f\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043b\u0438\u0431\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u0432\u043e\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435, \u043b\u0438\u0431\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044c \u0435\u0433\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e\u0433\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u0430 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439. \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043c\u043e\u0436\u043d\u043e \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple#Tuples_as_nested_sets\">\u0432 \u0432\u0438\u0434\u0435 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u043d\u0430\u0431\u043e\u0440\u043e\u0432<\/a> \u0432\u043d\u0443\u0442\u0440\u0438 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438, \u043d\u043e \u044d\u0442\u043e\u0442 \u0441\u043f\u043e\u0441\u043e\u0431 \u043d\u0435 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u0435\u043d. \u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c &#8212; \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043a \u0434\u0443\u043f\u043b\u0435\u0442\u0430\u043c, \u043d\u043e \u043e\u043d\u0430 \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044e.<\/p>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u0431\u0438\u0440\u0430\u0442\u044c \u043c\u0435\u0436\u0434\u0443 \u0431\u0430\u0437\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 SQL \u0438 NoSQL, \u043f\u0440\u043e\u0441\u0442\u043e \u0435\u0441\u0442\u044c \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0441\u0451 \u0441\u0430\u043c\u044b\u043c \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c. \u0418 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0431\u043b\u0438\u0437\u043a\u043e\u0439 \u043a \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u0443 \u0444\u043e\u0440\u043c\u0435.<\/p>\n<blockquote>\n<p>\u041d\u0430 \u044d\u0442\u043e\u043c \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u043c\u0438 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u0437\u0430\u043a\u043e\u043d\u0447\u0435\u043d. <\/p>\n<\/blockquote>\n<h2>\u041c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0432\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u0442\u0435\u043e\u0440\u0438\u044e \u0441\u0432\u044f\u0437\u0435\u0439<\/h2>\n<h3>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/h3>\n<p>\u0410 \u0442\u0435\u043f\u0435\u0440\u044c, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u043a\u0440\u0430\u0442\u043a\u043e \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043b\u0438 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f \u0441 \u0447\u0435\u0433\u043e \u0432\u0441\u0451 \u043d\u0430\u0447\u0438\u043d\u0430\u043b\u043e\u0441\u044c, \u043d\u0430\u0441\u0442\u0430\u043b\u0430 \u043f\u043e\u0440\u0430 \u043f\u043e\u0433\u0440\u0443\u0437\u0438\u0442\u044c\u0441\u044f \u0432 \u0442\u0435\u043e\u0440\u0438\u044e \u0435\u0449\u0451 \u0433\u043b\u0443\u0431\u0436\u0435.<\/p>\n<blockquote>\n<p>\u0422\u0435\u043e\u0440\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a\u00a0\u0431\u043e\u043b\u0435\u0435 \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u0430\u044f \u0442\u0435\u043e\u0440\u0438\u044f \u043f\u043e\u00a0\u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044e \u0441\u00a0\u0442\u0435\u043e\u0440\u0438\u0435\u0439 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432 \u0438 \u0442\u0435\u043e\u0440\u0438\u0439 \u0442\u0438\u043f\u043e\u0432 \u0438 \u043d\u0430\u00a0\u0437\u0430\u043c\u0435\u043d\u0443 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0430\u043b\u0433\u0435\u0431\u0440\u0435 \u0438 \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432. \u0412\u00a0\u0442\u043e \u0432\u0440\u0435\u043c\u044f, \u043a\u0430\u043a\u00a0\u0432\u00a0\u0442\u0435\u043e\u0440\u0438\u0438 \u0442\u0438\u043f\u043e\u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c\u0438 \u043f\u043e\u043d\u044f\u0442\u0438\u044f\u043c\u0438 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u00ab\u0442\u0438\u043f\u00bb \u0438 \u00ab\u0442\u0435\u0440\u043c\u00bb, \u0430\u00a0\u0432\u00a0\u0442\u0435\u043e\u0440\u0438\u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u00a0\u2014 \u00ab\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u00bb, \u00ab\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u00bb, \u0432\u00a0\u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u0432\u0441\u0435 \u0441\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043a\u00a0\u0435\u0434\u0438\u043d\u043e\u043c\u0443 \u043f\u043e\u043d\u044f\u0442\u0438\u044e \u00ab\u0441\u0432\u044f\u0437\u044c\u00bb.<\/p>\n<\/blockquote>\n<p>\u0412 \u044d\u0442\u043e\u043c \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u043c\u044b \u0440\u0430\u0437\u0431\u0435\u0440\u0451\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043f\u043e\u043d\u044f\u0442\u0438\u044f \u0438 \u0442\u0435\u0440\u043c\u0438\u043d\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439.<\/p>\n<p>\u0417\u0430\u0442\u0435\u043c \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a\u00a0\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f\u043c \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u0432\u00a0\u0440\u0430\u043c\u043a\u0430\u0445 \u0442\u0435\u043e\u0440\u0438\u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u044b \u043e\u0442\u0440\u0430\u0437\u0438\u043c \u043d\u0430\u00a0\u0442\u0435\u043e\u0440\u0438\u044e \u0442\u0438\u043f\u043e\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0442\u0435\u043e\u0440\u0435\u043c \u00abCoq\u00bb.<\/p>\n<p>\u0412 \u0437\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u0434\u0432\u0435\u0434\u0435\u043d\u044b \u0438\u0442\u043e\u0433\u0438 \u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0433\u043e \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u044f \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439.<\/p>\n<h3>\u0422\u0435\u043e\u0440\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439<\/h3>\n<p>\u0412 \u043e\u0441\u043d\u043e\u0432\u0435 \u0432\u0441\u0435\u0439 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u043b\u0435\u0436\u0438\u0442 \u0435\u0434\u0438\u043d\u043e\u0435 \u043f\u043e\u043d\u044f\u0442\u0438\u0435 \u0441\u0432\u044f\u0437\u0438. \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043d\u044f\u0442\u0438\u0435 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0441\u0432\u044f\u0437\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0432\u0432\u043e\u0434\u0438\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0442\u0435\u043e\u0440\u0438\u0439 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442 \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a \u0442\u0435\u043e\u0440\u0438\u044f \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432 \u0438 \u0442\u0435\u043e\u0440\u0438\u044f \u0442\u0438\u043f\u043e\u0432.<\/p>\n<h4>\u0421\u0432\u044f\u0437\u044c<\/h4>\n<p>\u0421\u0432\u044f\u0437\u044c \u0438\u043c\u0435\u0435\u0442 \u0430\u0441\u0441\u0438\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u0443\u044e \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0430 \u043f\u0440\u043e\u0441\u0442\u043e: \u0441\u0432\u044f\u0437\u044c \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u0432\u044f\u0437\u0438. \u041f\u043e\u0434 \u0430\u0441\u0441\u0438\u043c\u0435\u0442\u0440\u0438\u0447\u043d\u043e\u0441\u0442\u044c\u044e \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0432\u0432\u0438\u0434\u0443 \u0442\u043e, \u0447\u0442\u043e \u043a\u0430\u0436\u0434\u0430\u044f \u0441\u0432\u044f\u0437\u044c \u0438\u043c\u0435\u0435\u0442 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0442 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430 (\u043d\u0430\u0447\u0430\u043b\u0430) \u043a \u043f\u0440\u0438\u0451\u043c\u043d\u0438\u043a\u0443 (\u043a\u043e\u043d\u0446\u0443).<\/p>\n<h3>\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0442\u0435\u043e\u0440\u0438\u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432<\/h3>\n<p><strong>\u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430\u00a0\u0432\u0435\u043a\u0442\u043e\u0440<\/strong>\u00a0\u2014 \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0438\u043b\u0438\u00a0\u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432\u044b\u0439 \u043d\u043e\u043c\u0435\u0440, \u043a\u0430\u0436\u0434\u044b\u0439 \u0438\u0437\u00a0\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u0432\u044f\u0437\u0430\u043d \u0441\u00a0\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u043c \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u043c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430\u00a0\u0434\u0440\u0443\u0433\u0438\u0435 \u0432\u0435\u043a\u0442\u043e\u0440\u0430.<\/p>\n<p>\u041c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430\u00a0\u0432\u0435\u043a\u0442\u043e\u0440\u0430: <\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{L \u2286 \u2115_0}\" alt=\"\\mathbf{L \u2286 \u2115_0}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d4b\/359\/be0\/d4b359be04ab5657f765a2ac88cc87ed.svg\" width=\"66\" height=\"20\"\/><\/p>\n<\/blockquote>\n<p><strong>\u0412\u0435\u043a\u0442\u043e\u0440 \u0441\u0441\u044b\u043b\u043e\u043a<\/strong>\u00a0\u2014 \u044d\u0442\u043e \u0432\u0435\u043a\u0442\u043e\u0440, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u0438\u0437\u00a0\u043d\u0443\u043b\u044f \u0438\u043b\u0438\u00a0\u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430\u00a0\u0432\u0435\u043a\u0442\u043e\u0440\u0430, \u0433\u0434\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u0441\u044b\u043b\u043e\u043a \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0443 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0432\u0435\u043a\u0442\u043e\u0440\u0430.<\/p>\n<p>\u041c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0432\u0441\u0435\u0445 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0441\u0441\u044b\u043b\u043e\u043a \u0434\u043b\u0438\u043d\u044b <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"n \u2208 \u2115_0\" alt=\"n \u2208 \u2115_0\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d34\/892\/f89\/d34892f89cd830e7b2f50691061d6782.svg\" width=\"59\" height=\"20\"\/>:<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{V_n = L^n}\" alt=\"\\mathbf{V_n = L^n}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e85\/8b7\/ef4\/e858b7ef4aa8f53c89dba3da5d719167.svg\" width=\"81\" height=\"20\"\/><\/p>\n<\/blockquote>\n<p>\u0414\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u0430 \u0441\u0442\u0435\u043f\u0435\u043d\u044c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L^n\" alt=\"L^n\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/8e6\/a4e\/352\/8e6a4e352b6dc6a114223e80ac72c2d1.svg\" width=\"24\" height=\"18\"\/> \u0432\u0441\u0435\u0433\u0434\u0430 \u0434\u0430\u0441\u0442 \u0432\u0435\u043a\u0442\u043e\u0440 \u0434\u043b\u0438\u043d\u044b <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"n\" alt=\"n\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/81d\/8f6\/881\/81d8f6881171ec6b4c77a12c6c4a66db.svg\" width=\"12\" height=\"12\"\/> , \u0442\u0430\u043a \u043a\u0430\u043a\u00a0\u0432\u0441\u0435 \u0435\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0431\u0443\u0434\u0443\u0442 \u043e\u0434\u043d\u043e\u0433\u043e \u0438 \u0442\u043e\u0433\u043e\u00a0\u0436\u0435 \u0442\u0438\u043f\u0430 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L\" alt=\"L\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/69e\/b3e\/52d\/69eb3e52d0d10df194e08ac1c8fb62fd.svg\" width=\"13\" height=\"17\"\/>.<br \/>\u0414\u0440\u0443\u0433\u0438\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438, <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L^n\" alt=\"L^n\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/8e6\/a4e\/352\/8e6a4e352b6dc6a114223e80ac72c2d1.svg\" width=\"24\" height=\"18\"\/> \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 n\u2011\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043d\u044b\u0445 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432, \u0433\u0434\u0435 \u043a\u0430\u0436\u0434\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0432\u0435\u043a\u0442\u043e\u0440\u0430 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L\" alt=\"L\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/58f\/85a\/448\/58f85a448ce12693a88e51a74cbd355a.svg\" width=\"13\" height=\"17\"\/>. \u042d\u0442\u043e \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u043e \u043f\u043e\u00a0\u0441\u0443\u0442\u0438 n\u2011\u043a\u043e\u0440\u0442\u0435\u0436\u0443.<\/p>\n<p><strong>\u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u044f<\/strong>\u00a0\u2014 \u044d\u0442\u043e \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u0430\u044f \u043f\u0430\u0440\u0430, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0430\u044f \u0438\u0437\u00a0\u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430\u00a0\u0432\u0435\u043a\u0442\u043e\u0440 \u0438 \u0432\u0435\u043a\u0442\u043e\u0440\u0430 \u0441\u0441\u044b\u043b\u043e\u043a.<br \/>\u042d\u0442\u0430 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0441\u043b\u0443\u0436\u0438\u0442 \u0434\u043b\u044f\u00a0\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u0441\u0441\u044b\u043b\u043a\u0430\u043c\u0438 \u0438 \u0432\u0435\u043a\u0442\u043e\u0440\u0430\u043c\u0438.<br \/>\u041c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0432\u0441\u0435\u0445 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u0439:<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{A = L \\times V_n}\" alt=\"\\mathbf{A = L \\times V_n}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9de\/747\/627\/9de747627c4584713bb01bdbe9a56445.svg\" width=\"111\" height=\"19\"\/><\/p>\n<\/blockquote>\n<p><strong>\u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u0438\u043d\u044b n<\/strong> (\u0438\u043b\u0438 n\u2011\u043c\u0435\u0440\u043d\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c) \u0438\u0437\u00a0\u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\{anetv^n\\}\" alt=\"\\{anetv^n\\}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/4a2\/dbe\/629\/4a2dbe6291659f4a865fa3abf3057490.svg\" width=\"78\" height=\"22\"\/>,<img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"anetv^n: L \u2192 V_n\" alt=\"anetv^n: L \u2192 V_n\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/557\/ff0\/dcf\/557ff0dcf80e5e51412557f3e4643c99.svg\" width=\"140\" height=\"21\"\/> \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442 \u0441\u0441\u044b\u043b\u043a\u0443\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"l\" alt=\"l\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/6ed\/58f\/5b7\/6ed58f5b719972f8a4244b3ae43911cc.svg\" width=\"6\" height=\"17\"\/>\u00a0\u0438\u0437\u00a0\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L\" alt=\"L\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a0b\/4c1\/a49\/a0b4c1a4959102f4227ab510a22c1781.svg\" width=\"13\" height=\"17\"\/>\u00a0\u0432\u00a0\u0432\u0435\u043a\u0442\u043e\u0440 \u0441\u0441\u044b\u043b\u043e\u043a \u0434\u043b\u0438\u043d\u044b <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"n\" alt=\"n\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a90\/9c5\/e4a\/a909c5e4aacb8a775f9c0035834441c3.svg\" width=\"12\" height=\"12\"\/>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0443 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"V_n\" alt=\"V_n\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c88\/daf\/d7f\/c88dafd7f5e1e21e63cbfcb3785550b9.svg\" width=\"22\" height=\"20\"\/>, \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0435\u0442 \u0442\u043e\u0447\u043a\u0438 \u0432\u00a0n\u2011\u043c\u0435\u0440\u043d\u043e\u043c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435.<br \/><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"n\" alt=\"n\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a90\/9c5\/e4a\/a909c5e4aacb8a775f9c0035834441c3.svg\" width=\"12\" height=\"12\"\/> \u0432\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"anetv^n\" alt=\"anetv^n\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5ba\/f2d\/c68\/5baf2dc683c8181e277f46b8b64c4869.svg\" width=\"58\" height=\"18\"\/> \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0430\u00a0\u0442\u043e, \u0447\u0442\u043e\u00a0\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0432\u0435\u043a\u0442\u043e\u0440\u0430, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"n\" alt=\"n\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a90\/9c5\/e4a\/a909c5e4aacb8a775f9c0035834441c3.svg\" width=\"12\" height=\"12\"\/> \u0441\u0441\u044b\u043b\u043e\u043a.<br \/>\u041a\u0430\u0436\u0434\u0430\u044f n\u2011\u043c\u0435\u0440\u043d\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0442\u043e\u0447\u0435\u043a \u0432\u00a0n\u2011\u043c\u0435\u0440\u043d\u043e\u043c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435.<\/p>\n<p><strong>\u0421\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0439:<\/strong> <\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{\u222a_f \\{anetv^n | n \u2208 \u2115_0\\} \u2286 A}\" alt=\"\\mathbf{\u222a_f \\{anetv^n | n \u2208 \u2115_0\\} \u2286 A}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d4b\/c6a\/643\/d4bc6a643fd9587a897fe742e42c0b2a.svg\" width=\"223\" height=\"22\"\/><\/p>\n<\/blockquote>\n<p>\u0417\u0434\u0435\u0441\u044c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\u222a\" alt=\"\u222a\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/649\/13d\/c54\/64913dc54812a2ab04e153c0139d7ba6.svg\" width=\"13\" height=\"15\"\/> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432\u00a0\u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u0435<img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\{anetv^n\\}\" alt=\"\\{anetv^n\\}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/4a2\/dbe\/629\/4a2dbe6291659f4a865fa3abf3057490.svg\" width=\"78\" height=\"22\"\/>, <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\u2286\" alt=\"\u2286\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a1b\/a27\/e3e\/a1ba27e3e452b26c7612f562fab2d88f.svg\" width=\"15\" height=\"18\"\/> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u00ab\u044d\u0442\u043e \u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u00bb, \u0430\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"A\" alt=\"A\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/406\/c21\/65d\/406c2165d8c7ee7f53a19daf3ebcad54.svg\" width=\"15\" height=\"18\"\/>\u00a0\u2014 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0432\u0441\u0435\u0445 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u0439.<br \/>\u042d\u0442\u043e \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u043e\u00a0\u0442\u043e\u043c, \u0447\u0442\u043e\u00a0\u0432\u0441\u0435 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u044b, \u0444\u0443\u043d\u043a\u0446\u0438\u0439\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"anetv^n\" alt=\"anetv^n\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5ba\/f2d\/c68\/5baf2dc683c8181e277f46b8b64c4869.svg\" width=\"58\" height=\"18\"\/>, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0432\u00a0\u0432\u0438\u0434\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u0438\u043d\u0430\u0440\u043d\u043e\u0433\u043e \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f, \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"A\" alt=\"A\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/406\/c21\/65d\/406c2165d8c7ee7f53a19daf3ebcad54.svg\" width=\"15\" height=\"18\"\/>.<\/p>\n<p><strong>\u041c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 (\u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440 \u0438\u043b\u0438\u00a0\u0434\u0432\u0443\u043c\u0435\u0440\u043d\u044b\u0445 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432) \u0441\u0441\u044b\u043b\u043e\u043a:<\/strong> <\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{D = L^2}\" alt=\"\\mathbf{D = L^2}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/fe0\/558\/c19\/fe0558c1937f1af0e5e1d4775a5e3459.svg\" width=\"69\" height=\"21\"\/><\/p>\n<\/blockquote>\n<p>\u042d\u0442\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0432\u0441\u0435\u0445 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"(L, L)\" alt=\"(L, L)\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/6da\/4d3\/3c6\/6da4d33c6ac154e1494a7697bab1fb8c.svg\" width=\"51\" height=\"22\"\/>, \u0438\u043b\u0438\u00a0\u0432\u0442\u043e\u0440\u0430\u044f \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u0430 \u0441\u0442\u0435\u043f\u0435\u043d\u044c <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L\" alt=\"L\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a0b\/4c1\/a49\/a0b4c1a4959102f4227ab510a22c1781.svg\" width=\"13\" height=\"17\"\/>\u00a0.<\/p>\n<p><strong>\u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 (\u0438\u043b\u0438 \u0434\u0432\u0443\u043c\u0435\u0440\u043d\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c):<\/strong> <\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{anetd: L \u2192 L^2}\" alt=\"\\mathbf{anetd: L \u2192 L^2}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/43d\/47c\/c8d\/43d47cc8d060c4e0eb17153e2a24753d.svg\" width=\"143\" height=\"21\"\/><\/p>\n<\/blockquote>\n<p>\u041a\u0430\u0436\u0434\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0442\u043e\u0447\u0435\u043a \u0432\u00a0\u0434\u0432\u0443\u0445\u043c\u0435\u0440\u043d\u043e\u043c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435.<\/p>\n<p><strong>\u041f\u0443\u0441\u0442\u043e\u0439 \u0432\u0435\u043a\u0442\u043e\u0440 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043f\u0443\u0441\u0442\u044b\u043c \u043a\u043e\u0440\u0442\u0435\u0436\u0435\u043c:<\/strong> <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"()\" alt=\"()\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/6e3\/86c\/822\/6e386c8222f479f1f9adb78524e078c7.svg\" width=\"15\" height=\"22\"\/> \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0439 \u043a\u0430\u043a <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\u2205\" alt=\"\u2205\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/0a7\/742\/e37\/0a7742e378e2661a73fa374b8e7aa620.svg\" width=\"10\" height=\"20\"\/>.<\/p>\n<p><strong>\u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440:<\/strong> <\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"\\mathbf{anetl: L \u2192 NP}\\textbf{, \u0433\u0434\u0435 }\\mathbf{NP = \\{(\u2205, \u2205) | (l, np), l \u2208 L, np \u2208 NP\\}\u00a0}\" alt=\"\\mathbf{anetl: L \u2192 NP}\\textbf{, \u0433\u0434\u0435 }\\mathbf{NP = \\{(\u2205, \u2205) | (l, np), l \u2208 L, np \u2208 NP\\}\u00a0}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c00\/625\/b5a\/c00625b5ad85b12bbc34a7e50d203429.svg\" width=\"530\" height=\"23\"\/><\/p>\n<\/blockquote>\n<p>\u042d\u0442\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437\u00a0\u043f\u0443\u0441\u0442\u044b\u0445 \u043f\u0430\u0440, \u0438 \u043f\u0430\u0440 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0445 \u043e\u0434\u0438\u043d \u0438\u043b\u0438\u00a0\u0431\u043e\u043b\u0435\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0432\u0435\u043a\u0442\u043e\u0440 \u0434\u043b\u0438\u043d\u044b <img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"n \u2208 \u2115_0 \" alt=\"n \u2208 \u2115_0 \" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e38\/f7d\/3c6\/e38f7d3c6a31a73c72e6b79142c071c8.svg\" width=\"59\" height=\"20\"\/> \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u043a\u00a0\u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u044b.<\/p>\n<h3>\u041f\u0440\u043e\u0435\u043a\u0446\u0438\u044f \u0442\u0435\u043e\u0440\u0438\u0438 c\u0432\u044f\u0437\u0435\u0439 \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0442\u0438\u043f\u043e\u0432 (Coq) \u0447\u0435\u0440\u0435\u0437 \u0442\u0435\u043e\u0440\u0438\u044e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432<\/h3>\n<h4>\u041f\u0440\u043e Coq<\/h4>\n<p><a href=\"https:\/\/ru.wikipedia.org\/wiki\/Coq\">Coq<\/a> \u2014 \u044d\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432, \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0435\u0435 \u0442\u0435\u043e\u0440\u0438\u044e \u0442\u0438\u043f\u043e\u0432 \u0432\u044b\u0441\u0448\u0435\u0433\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u0430 \u0442\u0430\u043a\u0436\u0435 \u043a\u0430\u043a \u042f\u0437\u044b\u043a \u041a\u0430\u043b\u044c\u043a\u0443\u043b\u044f\u0446\u0438\u0438 \u0418\u043d\u0434\u0443\u043a\u0442\u0438\u0432\u043d\u044b\u0445 \u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0439 (Calculus of Inductive Constructions, CIC). \u042d\u0442\u043e \u0441\u0440\u0435\u0434\u0430 \u043e\u0431\u043b\u0430\u0434\u0430\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044f\u043c\u0438 \u0444\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0442\u0435\u043e\u0440\u0435\u043c, \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432 \u043d\u0430 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0441\u0442\u044c, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0438\u0437 \u0444\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u044b\u0445 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0439. Coq \u0448\u0438\u0440\u043e\u043a\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u0430\u043a\u0430\u0434\u0435\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043a\u0440\u0443\u0433\u0430\u0445 \u0434\u043b\u044f \u0444\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432 IT-\u0438\u043d\u0434\u0443\u0441\u0442\u0440\u0438\u0438 \u0434\u043b\u044f \u0432\u0435\u0440\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0438 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u044f.<\/p>\n<p>\u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c Coq \u0434\u043b\u044f \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0442\u0435\u043e\u0440\u0438\u0438 \u0442\u0438\u043f\u043e\u0432 \u0431\u044b\u043b\u043e \u043e\u0431\u0443\u0441\u043b\u043e\u0432\u043b\u0435\u043d\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c\u044e \u0441\u0442\u0440\u043e\u0433\u043e\u0439 \u0444\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432 \u0438 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u0435\u0440\u043d\u043e\u0441\u0442\u0438 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0439 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Coq \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0432\u044b\u0440\u0430\u0437\u0438\u0442\u044c \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u0430\u0434 \u0441\u0432\u044f\u0437\u044f\u043c\u0438 \u0432 \u0442\u043e\u0447\u043d\u044b\u0445 \u0438 \u043d\u0430\u0434\u0451\u0436\u043d\u044b\u0445 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u0445, \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0442\u0438\u043f\u043e\u0432 Coq \u0438 \u043c\u043e\u0449\u043d\u044b\u043c \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432.<\/p>\n<p>\u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u043e\u0431\u0448\u0438\u0440\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0443 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u043e\u0441\u0442\u0438 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0438 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432, \u043c\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0432 \u044d\u0442\u043e\u043c \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0435 \u0448\u0430\u0433\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432 \u044f\u0437\u044b\u043a\u0430 Coq. \u041d\u0430 \u043f\u0435\u0440\u0432\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u0441\u0442\u043e\u0438\u0442 \u0437\u0430\u0434\u0430\u0447\u0430 \u0444\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0447\u0435\u0440\u0435\u0437 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u0442\u0438\u043f\u043e\u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440 \u0432\u043d\u0443\u0442\u0440\u0438 Coq.<\/p>\n<h4>\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439<\/h4>\n<p><a href=\"https:\/\/github.com\/deep-foundation\/deep-theory\/blob\/main\/associative_proofs\/coq\/ANetDefs.v\">\u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a<\/a><\/p>\n<pre><code class=\"matlab\"> Require Import PeanoNat. Require Import Coq.Init.Nat. Require Import Vector. Require Import List. Require Import Coq.Init.Datatypes. Import ListNotations. Import VectorNotations.  (* \u041f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0432\u0435\u043a\u0442\u043e\u0440\u0430: L \u2286 \u2115\u2080 *) Definition L := nat.  (* \u0414\u0435\u0444\u043e\u043b\u0442\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 L: \u043d\u043e\u043b\u044c *) Definition LDefault : L := 0.  (* \u041c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0441\u0441\u044b\u043b\u043e\u043a \u0434\u043b\u0438\u043d\u044b n \u2208 \u2115\u2080: Vn \u2286 L\u207f *) Definition Vn (n : nat) := t L n.  (* \u0414\u0435\u0444\u043e\u043b\u0442\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 Vn *) Definition VnDefault (n : nat) : Vn n := Vector.const LDefault n.  (* \u041c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0432\u0441\u0435\u0445 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u0439: A = L \u00d7 Vn *) Definition A (n : nat) := prod L (Vn n).  (* \u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u0438\u043d\u044b n (\u0438\u043b\u0438 n-\u043c\u0435\u0440\u043d\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c) \u0438\u0437 \u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 {anetv\u207f : L \u2192 Vn} *) Definition ANetVf (n : nat) := L -> Vn n.  (* \u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u0438\u043d\u044b n (\u0438\u043b\u0438 n-\u043c\u0435\u0440\u043d\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c) \u0432 \u0432\u0438\u0434\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 *) Definition ANetVl (n : nat) := list (Vn n).  (* \u0412\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u044b *) Definition NP := list L.  (* \u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440: anetl : L \u2192 NP *) Definition ANetLf := L -> NP.  (* \u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440 \u0432 \u0432\u0438\u0434\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440 *) Definition ANetLl := list NP.  (* \u0414\u0443\u043f\u043b\u0435\u0442 \u0441\u0441\u044b\u043b\u043e\u043a *) Definition D := prod L L.  (* \u0414\u0435\u0444\u043e\u043b\u0442\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 D: \u043f\u0430\u0440\u0430 \u0438\u0437 \u0434\u0432\u0443\u0445 LDefault, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u0443\u0441\u0442\u043e\u0433\u043e \u0434\u0443\u043f\u043b\u0435\u0442\u0430 *) Definition DDefault : D := (LDefault, LDefault).  (* \u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 (\u0438\u043b\u0438 \u0434\u0432\u0443\u043c\u0435\u0440\u043d\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c): anetd : L \u2192 L\u00b2 *) Definition ANetDf := L -> D.  (* \u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 (\u0438\u043b\u0438 \u0434\u0432\u0443\u043c\u0435\u0440\u043d\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c) \u0432 \u0432\u0438\u0434\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 *) Definition ANetDl := list D. <\/code><\/pre>\n<h4>\u0424\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439<\/h4>\n<pre><code class=\"matlab\">(* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f Vn \u0432 NP *) Fixpoint VnToNP {n : nat} (v : Vn n) : NP :=   match v with   | Vector.nil _ => List.nil   | Vector.cons _ h _ t => List.cons h (VnToNP t)   end.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f ANetVf \u0432 ANetLf *) Definition ANetVfToANetLf {n : nat} (a: ANetVf n) : ANetLf:=   fun id => VnToNP (a id).  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f ANetVl \u0432 ANetLl *) Definition ANetVlToANetLl {n: nat} (net: ANetVl n) : ANetLl :=   map VnToNP net.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f NP \u0432 Vn *) Fixpoint NPToVnOption (n: nat) (p: NP) : option (Vn n) :=   match n, p with   | 0, List.nil => Some (Vector.nil nat)   | S n', List.cons f p' =>        match NPToVnOption n' p' with       | None => None       | Some t => Some (Vector.cons nat f n' t)       end   | _, _ => None   end.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f NP \u0432 Vn \u0441 VnDefault *) Definition NPToVn (n: nat) (p: NP) : Vn n :=   match NPToVnOption n p with   | None => VnDefault n   | Some t => t   end.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f ANetLf \u0432 ANetVf *) Definition ANetLfToANetVf { n: nat } (net: ANetLf) : ANetVf n :=   fun id => match NPToVnOption n (net id) with             | Some t => t             | None => VnDefault n             end.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f ANetLl \u0432 ANetVl *) Definition ANetLlToANetVl {n: nat} (net : ANetLl) : ANetVl n :=   map (NPToVn n) net.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f NP \u0432 ANetDl \u0441\u043e \u0441\u043c\u0435\u0449\u0435\u043d\u0438\u0435\u043c \u0438\u043d\u0434\u0435\u043a\u0441\u0430\u0446\u0438\u0438 *) Fixpoint NPToANetDl_ (offset: nat) (np: NP) : ANetDl :=   match np with   | nil => nil   | cons h nil => cons (h, offset) nil   | cons h t => cons (h, S offset) (NPToANetDl_ (S offset) t)   end.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f NP \u0432 ANetDl*) Definition NPToANetDl (np: NP) : ANetDl := NPToANetDl_ 0 np.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f NP \u0432 \u0445\u0432\u043e\u0441\u0442 ANetDl *) Definition AddNPToANetDl (anet: ANetDl) (np: NP) : ANetDl :=   app anet (NPToANetDl_ (length anet) np).  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043e\u0442\u0440\u0435\u0437\u0430\u0435\u0442 \u0433\u043e\u043b\u043e\u0432\u0443 anetd \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0445\u0432\u043e\u0441\u0442 \u043d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 offset  *) Fixpoint ANetDl_behead (anet: ANetDl) (offset : nat) : ANetDl :=   match offset with   | 0 => anet   | S n' =>     match anet with     | nil => nil     | cons h t => ANetDl_behead t n'     end   end.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f ANetDl \u0432 NP \u0441 \u0438\u043d\u0434\u0435\u043a\u0441\u0430\u0446\u0438\u0438 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 ANetDl \u043d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 offset*) Fixpoint ANetDlToNP_ (anet: ANetDl) (offset: nat) (index: nat): NP :=   match anet with   | nil => nil   | cons (x, next_index) tail_anet =>     if offset =? index then       cons x (ANetDlToNP_ tail_anet (S offset) next_index)     else       ANetDlToNP_ tail_anet (S offset) index   end.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0447\u0442\u0435\u043d\u0438\u044f NP \u0438\u0437 ANetDl \u043f\u043e \u0438\u043d\u0434\u0435\u043a\u0441\u0443 \u0434\u0443\u043f\u043b\u0435\u0442\u0430*) Definition ANetDl_readNP (anet: ANetDl) (index: nat) : NP :=   ANetDlToNP_ anet 0 index.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f ANetDl \u0432 NP \u043d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 \u0433\u043e\u043b\u043e\u0432\u044b \u0441\u043f\u0438\u0441\u043a\u0430 \u0430\u0441\u0435\u0442\u0438 *)   Definition ANetDlToNP (anet: ANetDl) : NP := ANetDl_readNP anet 0.   (*   \u0422\u0435\u043f\u0435\u0440\u044c \u0432\u0441\u0451 \u0433\u043e\u0442\u043e\u0432\u043e \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0441\u0435\u0442\u0438 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440 anetl : L \u2192 NP \u0432 \u0430\u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 anetd : L \u2192 L\u00b2.  \u0414\u0430\u043d\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043c\u043e\u0436\u043d\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u043f\u043e \u0440\u0430\u0437\u043d\u043e\u043c\u0443: \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0432\u0435\u043a\u0442\u043e\u0440\u0430 \u043b\u0438\u0431\u043e \u0441 \u043f\u0435\u0440\u0435\u0438\u043d\u0434\u0435\u043a\u0441\u0430\u0446\u0438\u0435\u0439. \u041f\u0435\u0440\u0435\u0438\u043d\u0434\u0435\u043a\u0441\u0430\u0446\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c \u0435\u0441\u043b\u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0434\u043b\u044f \u0430\u0441\u0435\u0442\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u0443\u044e \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u0443\u044e \u043f\u0430\u0440\u0443 \u043f\u043e \u0435\u0451 \u0441\u0441\u044b\u043b\u043a\u0435. *)  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f ANetLl \u0432 ANetDl *) Fixpoint AddANetLlToANetDl (anetd: ANetDl) (anetl: ANetLl) : ANetDl :=   match anetl with   | nil => anetd   | cons h t => AddANetLlToANetDl (AddNPToANetDl anetd h) t   end.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f ANetLl \u0432 ANetDl *) Definition ANetLlToANetDl (anetl: ANetLl) : ANetDl :=   match anetl with   | nil => nil   | cons h t => AddANetLlToANetDl (NPToANetDl h) t   end.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u043e\u0438\u0441\u043a\u0430 NP \u0432 \u0445\u0432\u043e\u0441\u0442\u0435 ANetDl \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0435\u043c\u0443\u0441\u044f \u0441 offset \u043f\u043e \u0435\u0451 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432\u043e\u043c\u0443 \u043d\u043e\u043c\u0435\u0440\u0443. \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 offset NP *) Fixpoint ANetDl_offsetNP_ (anet: ANetDl) (offset: nat) (index: nat) : nat :=   match anet with   | nil => offset + (length anet)   | cons (_, next_index) tail_anet =>     match index with     | O => offset     | S index' =>        if offset =? next_index then         ANetDl_offsetNP_ tail_anet (S offset) index'       else         ANetDl_offsetNP_ tail_anet (S offset) index     end   end.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u043e\u0438\u0441\u043a\u0430 NP \u0432 ANetDl \u043f\u043e \u0435\u0451 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432\u043e\u043c\u0443 \u043d\u043e\u043c\u0435\u0440\u0443. \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 offset NP *) Definition ANetDl_offsetNP (anet: ANetDl) (index: nat) : nat :=   ANetDl_offsetNP_ anet 0 index.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f ANetVl \u0432 ANetDl *) Definition ANetVlToANetDl {n : nat} (anetv: ANetVl n) : ANetDl :=   ANetLlToANetDl (ANetVlToANetLl anetv).   (*   \u0422\u0435\u043f\u0435\u0440\u044c \u0432\u0441\u0451 \u0433\u043e\u0442\u043e\u0432\u043e \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0441\u0435\u0442\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 anetd : L \u2192 L\u00b2  \u0432 \u0430\u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440 anetl : L \u2192 NP  \u0414\u0430\u043d\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u043c \u0434\u0435\u043b\u0430\u0442\u044c \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0441\u0441\u044b\u043b\u043e\u043a\u0435 \u043d\u0430 \u0432\u0435\u043a\u0442\u043e\u0440\u0430. \u041f\u0435\u0440\u0435\u0438\u043d\u0434\u0435\u043a\u0441\u0430\u0446\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0435\u0441\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044f ANetDl_offsetNP \u0434\u043b\u044f \u0430\u0441\u0435\u0442\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0441\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0439 \u0423\u041f \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 \u043d\u0430 \u0435\u0451. *)  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043e\u0442\u0440\u0435\u0437\u0430\u0435\u0442 \u043f\u0435\u0440\u0432\u0443\u044e NP \u0438\u0437 ANetDl \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0445\u0432\u043e\u0441\u0442 *) Fixpoint ANetDl_beheadNP (anet: ANetDl) (offset: nat) : ANetDl :=   match anet with   | nil => nil   | cons (_, next_index) tail_anet =>     if offset =? next_index then (* \u043a\u043e\u043d\u0435\u0446 NP *)       tail_anet     else  (* \u0435\u0449\u0451 \u043d\u0435 \u043a\u043e\u043d\u0435\u0446 NP *)       ANetDl_beheadNP tail_anet (S offset)   end.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f NP \u0438 ANetDl \u0441\u043e \u0441\u043c\u0435\u0449\u0435\u043d\u0438\u044f offset \u0432 ANetLl *) Fixpoint ANetDlToANetLl_ (anetd: ANetDl) (np: NP) (offset: nat) : ANetLl :=   match anetd with   | nil => nil (* \u043e\u0442\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u043c NP \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u043e\u043d\u0430 \u043d\u0435\u0434\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0430 *)   | cons (x, next_index) tail_anet =>     if offset =? next_index then (* \u043a\u043e\u043d\u0435\u0446 NP, \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 NP *)       cons (app np (cons x nil)) (ANetDlToANetLl_ tail_anet nil (S offset))     else  (* \u0435\u0449\u0451 \u043d\u0435 \u043a\u043e\u043d\u0435\u0446 NP, \u043f\u0430\u0440\u0441\u0438\u043c \u0430\u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0434\u0430\u043b\u044c\u0448\u0435 *)       ANetDlToANetLl_ tail_anet (app np (cons x nil)) (S offset)   end.  (* \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f ANetDl \u0432 ANetLl *) Definition ANetDlToANetLl (anetd: ANetDl) : ANetLl :=   ANetDlToANetLl_ anetd nil LDefault. <\/code><\/pre>\n<h4>\u041f\u0440\u0435\u0434\u0438\u043a\u0430\u0442\u044b \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u043e\u0441\u0442\u0438 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439<\/h4>\n<pre><code class=\"matlab\">(* \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 anets_equiv \u0432\u0432\u043e\u0434\u0438\u0442 \u043f\u0440\u0435\u0434\u0438\u043a\u0430\u0442 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u043e\u0441\u0442\u0438 \u0434\u0432\u0443\u0445 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u0438\u043d\u044b n,  anet1 \u0438 anet2 \u0442\u0438\u043f\u0430 ANetVf.     \u0414\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u0435\u0434\u0438\u043a\u0430\u0442 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e \"\u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u043e\u0441\u0442\u0438\" \u0434\u043b\u044f \u0442\u0430\u043a\u0438\u0445 \u0441\u0435\u0442\u0435\u0439.  \u041e\u043d \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442, \u0447\u0442\u043e anet1 \u0438 anet2 \u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \"\u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u044b\u043c\u0438\", \u0435\u0441\u043b\u0438 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u0441\u0441\u044b\u043b\u043a\u0438 id \u0432\u0435\u043a\u0442\u043e\u0440,  \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0439 \u0441 id \u0432 anet1, \u0442\u043e\u0447\u043d\u043e \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0435\u0442 \u0441 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u043c, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u043c \u0441 \u0442\u0435\u043c \u0436\u0435 id \u0432 anet2. *) Definition ANetVf_equiv {n: nat} (anet1: ANetVf n) (anet2: ANetVf n) : Prop :=   forall id, anet1 id = anet2 id.  (* \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 anets_equiv \u0432\u0432\u043e\u0434\u0438\u0442 \u043f\u0440\u0435\u0434\u0438\u043a\u0430\u0442 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u043e\u0441\u0442\u0438 \u0434\u0432\u0443\u0445 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u0438\u043d\u044b n,  anet1 \u0438 anet2 \u0442\u0438\u043f\u0430 ANetVl. *) Definition ANetVl_equiv_Vl {n: nat} (anet1: ANetVl n) (anet2: ANetVl n) : Prop :=   anet1 = anet2.  (* \u041f\u0440\u0435\u0434\u0438\u043a\u0430\u0442 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 ANetDf *) Definition ANetDf_equiv (anet1: ANetDf) (anet2: ANetDf) : Prop := forall id, anet1 id = anet2 id.  (* \u041f\u0440\u0435\u0434\u0438\u043a\u0430\u0442 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 ANetDl *) Definition ANetDl_equiv (anet1: ANetDl) (anet2: ANetDl) : Prop := anet1 = anet2. <\/code><\/pre>\n<h4>\u041b\u0435\u043c\u043c\u044b \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u043e\u0441\u0442\u0438 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439<\/h4>\n<pre><code class=\"matlab\">(* \u041b\u0435\u043c\u043c\u0430 \u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u0434\u043b\u0438\u043d\u044b \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 *) Lemma Vn_dim_preserved : forall {l: nat} (t: Vn l), List.length (VnToNP t) = l. Proof.   intros l t.   induction t.   - simpl. reflexivity.   - simpl. rewrite IHt. reflexivity. Qed.   (* \u041b\u0435\u043c\u043c\u0430 \u043e \u0432\u0437\u0430\u0438\u043c\u043d\u043e\u043c \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 NPToVnOption \u0438 VnToNP    H_inverse \u0434\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442, \u0447\u0442\u043e \u043a\u0430\u0436\u0434\u044b\u0439 \u0432\u0435\u043a\u0442\u043e\u0440 Vn \u0431\u0435\u0437 \u043f\u043e\u0442\u0435\u0440\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d \u0432 NP  \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e VnToNP \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u0432 Vn \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e NPToVnOption.    \u0412 \u0444\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e\u043c \u0432\u0438\u0434\u0435 forall n: nat, forall t: Vn n, NPToVnOption n (VnToNP t) = Some t \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u043e \u0442\u043e\u043c,  \u0447\u0442\u043e \u0434\u043b\u044f \u0432\u0441\u044f\u043a\u043e\u0433\u043e \u043d\u0430\u0442\u0443\u0440\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 n \u0438 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0432\u0435\u043a\u0442\u043e\u0440\u0430 Vn \u0434\u043b\u0438\u043d\u044b n,  \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c Vn \u0432 NP \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e VnToNP,  \u0437\u0430\u0442\u0435\u043c \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432 Vn \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e NPToVnOption n,  \u0438 \u0432 \u0438\u0442\u043e\u0433\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u0442\u043e\u0442 \u0436\u0435 \u0432\u0435\u043a\u0442\u043e\u0440 Vn, \u0447\u0442\u043e \u0438 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435.    \u042d\u0442\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e \u043e\u0447\u0435\u043d\u044c \u0432\u0430\u0436\u043d\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043e\u043d\u043e \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0443\u0435\u0442,  \u0447\u0442\u043e \u044d\u0442\u0438 \u0434\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043e\u0431\u0440\u0430\u0437\u0443\u044e\u0442 \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0435 \u0434\u0440\u0443\u0433 \u043a \u0434\u0440\u0443\u0433\u0443 \u043f\u0430\u0440\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043d\u0430 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u043c\u043e\u043c \u043a\u0440\u0443\u0433\u0435 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 Vn \u0438 NP.  \u041a\u043e\u0433\u0434\u0430 \u0432\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0435 \u043e\u0431\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043a \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c \u0432 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u043c\u043e\u043c \u043a\u0440\u0443\u0433\u0435, \u0432\u044b \u0432 \u0438\u0442\u043e\u0433\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.  \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043d\u0438\u043a\u0430\u043a\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043d\u0435 \u0442\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f\u0445,  \u0442\u0430\u043a \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0436\u0434\u0443 Vn \u0438 NP,  \u0435\u0441\u043b\u0438 \u044d\u0442\u043e \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0432 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u043b\u0438 \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430\u0445.  *) Lemma H_inverse: forall n: nat, forall t: Vn n, NPToVnOption n (VnToNP t) = Some t. Proof.   intros n.   induction t as [| h n' t' IH].   - simpl. reflexivity.   - simpl. rewrite IH. reflexivity. Qed.   (*   \u0422\u0435\u043e\u0440\u0435\u043c\u0430 \u043e\u0431\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432:  \u041f\u0443\u0441\u0442\u044c \u0434\u0430\u043d\u0430 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u0438\u043d\u044b n, \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u0430\u044f \u043a\u0430\u043a anetv\u207f : L \u2192 V\u207f. \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043c \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0439 \u0441\u0435\u0442\u0438 \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440 anetl : L \u2192 NP,   \u0433\u0434\u0435 NP = {(\u2205,\u2205) | (l,np), l \u2208 L, np \u2208 NP}. \u0417\u0430\u0442\u0435\u043c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043c \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0438\u0437 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440 \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u0438\u043d\u044b n.    \u0422\u0435\u043e\u0440\u0435\u043c\u0430 \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442:  \u0414\u043b\u044f \u043b\u044e\u0431\u043e\u0439 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u0438\u043d\u044b n, anetv\u207f, \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440  \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u0438\u043d\u044b n \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 anetv\u207f. \u0422\u043e \u0435\u0441\u0442\u044c, \u0435\u0441\u043b\u0438 \u043c\u044b \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u043c anetv\u207f \u0432 anetl \u0438 \u043f\u043e\u0442\u043e\u043c \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u0432 anetv\u207f, \u0442\u043e \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u0443\u044e \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 anetv\u207f.  \u0418\u043d\u0430\u0447\u0435 \u0433\u043e\u0432\u043e\u0440\u044f:      \u2200 anetv\u207f : L \u2192 V\u207f, \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e(\u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u043f\u0435\u0440\u0435\u0434(anetv\u207f)) = anetv\u207f. *) Theorem anetf_equiv_after_transforms : forall {n: nat} (anet: ANetVf n),   ANetVf_equiv anet (fun id => match NPToVnOption n ((ANetVfToANetLf anet) id) with                             | Some t => t                             | None   => anet idhttps:\/\/github.com\/deep-foundation                             end). Proof.   intros n net id.   unfold ANetVfToANetLf.   simpl.   rewrite H_inverse.   reflexivity. Qed.   (* \u041b\u0435\u043c\u043c\u0430 \u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u0434\u043b\u0438\u043d\u044b \u0441\u043f\u0438\u0441\u043a\u043e\u0432 NP \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 *) Lemma NP_dim_preserved : forall (offset: nat) (np: NP),      length np = length (NPToANetDl_ offset np). Proof.   intros offset np.   generalize dependent offset.    induction np as [| n np' IHnp']; intros offset.   - simpl. reflexivity.   - destruct np' as [| m np'']; simpl; simpl in IHnp'.     + reflexivity.     + rewrite IHnp' with (offset := S offset). reflexivity. Qed. <\/code><\/pre>\n<h4>\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439 \u0434\u0440\u0443\u0433 \u0432 \u0434\u0440\u0443\u0433\u0430<\/h4>\n<pre><code class=\"matlab\">(*  \u041d\u043e\u0442\u0430\u0446\u0438\u044f \u0437\u0430\u043f\u0438\u0441\u0438 \u0441\u043f\u0438\u0441\u043a\u043e\u0432  *) Notation \"{ }\" := (nil) (at level 0). Notation \"{ x , .. , y }\" := (cons x .. (cons y nil) ..) (at level 0).  (*  \u0422\u0440\u0451\u0445\u043c\u0435\u0440\u043d\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c  *) Definition complexExampleNet : ANetVf 3 :=   fun id => match id with   | 0 => [0; 0; 0]   | 1 => [1; 1; 2]   | 2 => [2; 4; 0]   | 3 => [3; 0; 5]   | 4 => [4; 1; 1]   | S _ => [0; 0; 0]   end.  (*  \u0412\u0435\u043a\u0442\u043e\u0440\u0430 \u0441\u0441\u044b\u043b\u043e\u043a  *) Definition exampleTuple0 : Vn 0 := []. Definition exampleTuple1 : Vn 1 := [0]. Definition exampleTuple4 : Vn 4 := [3; 2; 1; 0].  (*  \u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0441\u0441\u044b\u043b\u043e\u043a \u0432\u043e \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u044b (\u0441\u043f\u0438\u0441\u043a\u0438)  *) Definition nestedPair0 := VnToNP exampleTuple0. Definition nestedPair1 := VnToNP exampleTuple1. Definition nestedPair4 := VnToNP exampleTuple4.  Compute nestedPair0.  (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: { } *) Compute nestedPair1.  (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {0} *) Compute nestedPair4.  (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {3, 2, 1, 0} *)  (*  \u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0442\u0440\u0451\u0445\u043c\u0435\u0440\u043d\u043e\u0439 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438   *) Compute (ANetVfToANetLf complexExampleNet) 0. (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {0, 0, 0} *) Compute (ANetVfToANetLf complexExampleNet) 1. (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {1, 1, 2} *) Compute (ANetVfToANetLf complexExampleNet) 2. (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {2, 4, 0} *) Compute (ANetVfToANetLf complexExampleNet) 3. (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {3, 0, 5} *) Compute (ANetVfToANetLf complexExampleNet) 4. (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {4, 1, 1} *) Compute (ANetVfToANetLf complexExampleNet) 5. (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {0, 0, 0} *)  (*  \u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f (\u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440)  *) Definition testPairsNet : ANetLf :=   fun id => match id with   | 0 => {5, 0, 8}   | 1 => {7, 1, 2}   | 2 => {2, 4, 5}   | 3 => {3, 1, 5}   | 4 => {4, 2, 1}   | S _ => {0, 0, 0}   end.  (*  \u041f\u0440\u0435\u043e\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f \u0432 \u0442\u0440\u0451\u0445\u043c\u0435\u0440\u043d\u0443\u044e \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c (\u0440\u0430\u0437\u043c\u0435\u0440\u043d\u043e\u0441\u0442\u044c \u0434\u043e\u043b\u0436\u043d\u0430 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0442\u044c) *) Definition testTuplesNet : ANetVf 3 :=   ANetLfToANetVf testPairsNet.  (*  \u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f   *) Compute testTuplesNet 0.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: [5; 0; 8] *) Compute testTuplesNet 1.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: [7; 1; 2] *) Compute testTuplesNet 2.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: [2; 4; 5] *) Compute testTuplesNet 3.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: [3; 1; 5] *) Compute testTuplesNet 4.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: [4; 2; 1] *) Compute testTuplesNet 5.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: [0; 0; 0] *)  (*  \u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432  *) Compute NPToANetDl { 121, 21, 1343 }. (* \u0414\u043e\u043b\u0436\u043d\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c: {(121, 1), (21, 2), (1343, 2)} *)  (*  \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432  *) Compute AddNPToANetDl {(121, 1), (21, 2), (1343, 2)} {12, 23, 34}.  (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {(121, 1), (21, 2), (1343, 2), (12, 4), (23, 5), (34, 5)} *)  (*  \u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0432\u043e \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u0423\u041f  *) Compute ANetDlToNP {(121, 1), (21, 2), (1343, 2)}.  (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {121, 21, 1343} *)    Compute ANetDlToNP {(121, 1), (21, 2), (1343, 2), (12, 4), (23, 5), (34, 5)}.  (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {121, 21, 1343} *)  (*  \u0427\u0442\u0435\u043d\u0438\u0435 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f \u0438\u0437 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u043f\u043e \u0438\u043d\u0434\u0435\u043a\u0441\u0443 \u0434\u0443\u043f\u043b\u0435\u0442\u0430 - \u043d\u0430\u0447\u0430\u043b\u0430 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f  *) Compute ANetDl_readNP {(121, 1), (21, 2), (1343, 2), (12, 4), (23, 5), (34, 5)} 0. (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {121, 21, 1343} *)  Compute ANetDl_readNP {(121, 1), (21, 2), (1343, 2), (12, 4), (23, 5), (34, 5)} 3. (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: {12, 23, 34} *)   (*  \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f *) Definition test_anetl := { {121, 21, 1343}, {12, 23}, {34}, {121, 21, 1343}, {12, 23}, {34} }.  (*  \u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432  *) Definition test_anetd := ANetLlToANetDl test_anetl.  (*  \u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432  *) Compute test_anetd. (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:  {(121, 1), (21, 2), (1343, 2),   (12, 4), (23, 4),   (34, 5),   (121, 7), (21, 8), (1343, 8),   (12, 10), (23, 10),   (34, 11)} *)   (*  \u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u0432 test_anetl *)  Compute ANetDlToANetLl test_anetd. (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:   {{121, 21, 1343}, {12, 23}, {34}, {121, 21, 1343}, {12, 23}, {34}}  *)  (*  \u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0441\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u043f\u043e \u0438\u0445 \u043f\u043e\u0440\u044f\u0434\u043a\u043e\u0432\u043e\u043c\u0443 \u043d\u043e\u043c\u0435\u0440\u0443  *) Compute ANetDl_offsetNP test_anetd 0.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: 0 *) Compute ANetDl_offsetNP test_anetd 1.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: 3 *) Compute ANetDl_offsetNP test_anetd 2.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: 5 *) Compute ANetDl_offsetNP test_anetd 3.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: 6 *) Compute ANetDl_offsetNP test_anetd 4.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: 9 *) Compute ANetDl_offsetNP test_anetd 5.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: 11 *) Compute ANetDl_offsetNP test_anetd 6.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: 12 *) Compute ANetDl_offsetNP test_anetd 7.   (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: 12 *)   (*  \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u0442\u0440\u0451\u0445\u043c\u0435\u0440\u043d\u0443\u044e \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u043a\u0430\u043a \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u043d\u043e\u0441\u0442\u044c \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0434\u043b\u0438\u043d\u044b 3  *) Definition test_anetv : ANetVl 3 :=   { [0; 0; 0], [1; 1; 2], [2; 4; 0], [3; 0; 5], [4; 1; 1], [0; 0; 0] }.  (*  \u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0442\u0440\u0451\u0445\u043c\u0435\u0440\u043d\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0447\u0435\u0440\u0435\u0437 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f  *) Definition test_anetdl : ANetDl := ANetVlToANetDl test_anetv.  (*  \u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0442\u0440\u0451\u0445\u043c\u0435\u0440\u043d\u043e\u0439 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0447\u0435\u0440\u0435\u0437 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f  *) Compute test_anetdl. (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: { (0, 1), (0, 2), (0, 2),   (1, 4), (1, 5), (2, 5),   (2, 7), (4, 8), (0, 8),   (3, 10), (0, 11), (5, 11),   (4, 13), (1, 14), (1, 14),   (0, 16), (0, 17), (0, 17)}  *)  (*  \u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0442\u0440\u0451\u0445\u043c\u0435\u0440\u043d\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0447\u0435\u0440\u0435\u0437 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0423\u041f \u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442 \u0432 \u0442\u0440\u0451\u0445\u043c\u0435\u0440\u043d\u0443\u044e \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c  *) Definition result_TuplesNet : ANetVl 3 :=   ANetLlToANetVl (ANetDlToANetLl test_anetdl).  (*  \u0418\u0442\u043e\u0433\u043e\u0432\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u043e\u0441\u0442\u0438 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439   *) Compute result_TuplesNet. (* \u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:   { [0; 0; 0], [1; 1; 2], [2; 4; 0], [3; 0; 5], [4; 1; 1], [0; 0; 0] }  *) <\/code><\/pre>\n<h3>\u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/h3>\n<p>\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0439: <a href=\"http:\/\/github.com\/deep-foundation\/\">Deep<\/a>, <a href=\"https:\/\/github.com\/linksplatform\">LinksPlatform<\/a> \u0438 <a href=\"https:\/\/github.com\/netkeep80\/jsonRVM\">\u041c\u043e\u0434\u0435\u043b\u044c \u041e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439<\/a>.<\/p>\n<h4>Deep<\/h4>\n<p><a href=\"http:\/\/github.com\/deep-foundation\/\">Deep<\/a>\u00a0\u2014 \u044d\u0442\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u0430, \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u043d\u0430\u00a0\u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439. \u0412\u00a0\u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u0441\u00a0\u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u0432\u044f\u0437\u0435\u0439 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u043b\u044e\u0431\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u043b\u0438\u00a0\u0437\u043d\u0430\u043d\u0438\u044f, \u0430\u00a0\u0442\u0430\u043a\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u0434\u043b\u044f\u00a0\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u041d\u0430\u00a0\u044d\u0442\u043e \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d Deep. \u0412\u00a0Deep \u0432\u0441\u0451 \u2014 \u0441\u0432\u044f\u0437\u0438. \u041e\u0434\u043d\u0430\u043a\u043e \u0435\u0441\u043b\u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c \u0438\u0445 \u043d\u0430\u00a0\u0434\u0432\u0435 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438, \u0442\u043e \u0443\u00a0\u043d\u0430\u0441 \u0431\u0443\u0434\u0443\u0442 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435. \u041f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0435 \u043a\u043e\u0434 \u0432\u00a0Deep \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u0432\u00a0\u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0432\u00a0\u0432\u0438\u0434\u0435 \u0441\u0432\u044f\u0437\u0435\u0439, \u0430\u00a0\u0434\u043b\u044f\u00a0\u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u0432\u00a0docker \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e \u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f. \u0412\u0441\u044f \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u0447\u0430\u0441\u0442\u044f\u043c\u0438 \u043a\u043e\u0434\u0430 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u0441\u0432\u044f\u0437\u0438 \u0432\u00a0\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 (\u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445), \u0447\u0442\u043e\u00a0\u0434\u0435\u043b\u0430\u0435\u0442 \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u044b\u043c API \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u043e\u043c \u043d\u0430\u00a0\u0434\u0430\u043d\u043d\u044b\u0445 (\u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0438 \u043e\u0442\u00a0\u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u0432\u044b\u0437\u043e\u0432\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438 \u043c\u0435\u0442\u043e\u0434\u043e\u0432). \u0412\u00a0\u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0432\u00a0\u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0432\u00a0Deep \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f PostgreSQL, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0434\u043d\u0435\u0435 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043c\u0435\u043d\u0451\u043d \u043d\u0430\u00a0\u0434\u0432\u0438\u0436\u043e\u043a \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043d\u0430\u00a0\u0434\u0443\u043f\u043b\u0435\u0442\u0430\u0445 \u0438 \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u0430\u0445 \u0438\u0437\u00a0LinksPlatform.<\/p>\n<p>Deep \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0434\u0435\u043b\u0430\u0442\u044c \u0432\u0435\u0441\u044c \u0441\u043e\u0444\u0442 \u043d\u0430\u00a0\u043f\u043b\u0430\u043d\u0435\u0442\u0435 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u044b\u043c, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044f \u0432\u0441\u0435 \u0435\u0433\u043e \u0447\u0430\u0441\u0442\u0438 \u0432\u00a0\u0432\u0438\u0434\u0435 \u0441\u0432\u044f\u0437\u0435\u0439. \u0422\u0430\u043a\u0436\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043b\u044e\u0431\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u043a\u043e\u0434 \u0432\u043c\u0435\u0441\u0442\u0435, \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0442\u044c \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u043d\u0430\u0434 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u0442\u0438\u043f\u0430\u043c\u0438 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u0439 \u0441\u00a0\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c \u043a\u043e\u0434\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0434\u043b\u044f\u00a0\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u044d\u0442\u0438\u0445 \u0441\u043e\u0431\u044b\u0442\u0438\u0439. \u041a\u0430\u0436\u0434\u044b\u0439 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0441\u0432\u044f\u0437\u0438 \u0438\u0437\u00a0\u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0438 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c\/\u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c\/\u0443\u0434\u0430\u043b\u044f\u0442\u044c \u0441\u0432\u044f\u0437\u0438 \u0432\u00a0\u043d\u0435\u0433\u043e, \u0447\u0442\u043e\u00a0\u043c\u043e\u0436\u0435\u0442 \u0438\u043d\u0438\u0446\u0438\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0435 \u043a\u0430\u0441\u043a\u0430\u0434\u043d\u043e\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432.<\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 links \u0432\u00a0\u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 (PostgreSQL) Deep \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0437\u0430\u043f\u0438\u0441\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u043a\u00a0\u0441\u0432\u044f\u0437\u0438. \u041e\u043d\u0438 \u0438\u043c\u0435\u044e\u0442 \u0442\u0430\u043a\u0438\u0435 \u043a\u043e\u043b\u043e\u043d\u043a\u0438 \u043a\u0430\u043a\u00a0id, type_id, from_id, \u0438 to_id. \u0422\u0438\u043f\u044b \u0441\u0432\u044f\u0437\u0435\u0439 \u043f\u043e\u043c\u043e\u0433\u0430\u044e\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0443 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0441\u0435\u043c\u0430\u043d\u0442\u0438\u043a\u0443 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439 \u043c\u0435\u0436\u0434\u0443 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c\u0438. \u0427\u0442\u043e\u00a0\u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0443\u0435\u0442 \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u0441\u0432\u044f\u0437\u0435\u0439 \u043a\u0430\u043a\u00a0\u043b\u044e\u0434\u044c\u043c\u0438 \u0442\u0430\u043a \u0438 \u043a\u043e\u0434\u043e\u043c \u0432\u00a0\u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u0430\u0445. \u041a\u0440\u043e\u043c\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b links, \u0432\u00a0\u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0442\u0430\u0431\u043b\u0438\u0446\u044b numbers, strings \u0438 objects \u0434\u043b\u044f\u00a0\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u043e\u0432\u044b\u0445, \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u044b\u0445 \u0438 JSON \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e. \u041a\u00a0\u043a\u0430\u0436\u0434\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.<\/p>\n<h4>LinksPlatfrom<\/h4>\n<p><a href=\"https:\/\/github.com\/linksplatform\">LinksPlatfrom<\/a>\u00a0\u2014 \u044d\u0442\u043e \u043a\u0440\u043e\u0441\u0441\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435\u043d\u043d\u044b\u0439 \u043c\u0443\u043b\u044c\u0442\u0438\u044f\u0437\u044b\u0447\u043d\u044b\u0439 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u043d\u0430\u00a0\u0442\u043e, \u0447\u0442\u043e\u0431\u044b \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0438\u0442\u044c \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u0432\u00a0\u0432\u0438\u0434\u0435 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0430 \u0434\u0432\u0438\u0436\u043a\u043e\u0432 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445. \u041a\u00a0\u043f\u0440\u0438\u043c\u0435\u0440\u0443, \u043d\u0430\u00a0\u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0443\u00a0\u043d\u0430\u0441 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 <a href=\"https:\/\/github.com\/linksplatform\/Comparisons.PostgreSQLVSDoublets\">\u0431\u0435\u043d\u0447\u043c\u0430\u0440\u043a<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0435\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0432\u00a0PostgreSQL \u0438 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u043d\u0430\u00a0\u0447\u0438\u0441\u0442\u043e\u043c Rust\/C++,\u00a0\u043b\u0438\u0434\u0438\u0440\u0443\u044e\u0449\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430\u00a0Rust \u043e\u0431\u0433\u043e\u043d\u044f\u0435\u0442 PostgreSQL \u043d\u0430\u00a0\u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f\u0445 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 200+ \u0440\u0430\u0437, \u0430\u00a0\u043d\u0430\u00a0\u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f\u0445 \u0447\u0442\u0435\u043d\u0438\u044f \u0432 1000+ \u0440\u0430\u0437.<\/p>\n<h4>\u041c\u043e\u0434\u0435\u043b\u044c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439<\/h4>\n<p><a href=\"https:\/\/github.com\/netkeep80\/jsonRVM\">\u041c\u043e\u0434\u0435\u043b\u044c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439<\/a>\u00a0\u2014 \u044d\u0442\u043e \u044f\u0437\u044b\u043a \u043c\u0435\u0442\u0430\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043d\u0430\u00a0\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0432\u00a0\u0432\u0438\u0434\u0435 \u0442\u0440\u0451\u0445\u043c\u0435\u0440\u043d\u043e\u0439 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0441\u0435\u0442\u0438.<br \/>\u041c\u043e\u0434\u0435\u043b\u044c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a\u00a0\u0441\u0443\u0449\u043d\u043e\u0441\u0442\u043d\u043e\u2011\u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e, \u0433\u0434\u0435 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432\u00a0\u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u0438, \u0442.\u00a0\u0435. \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e\u00a0\u0432\u0441\u0451 \u0435\u0441\u0442\u044c \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044c \u0438 \u043d\u0435\u0442 \u043d\u0438\u0447\u0435\u0433\u043e \u043a\u0440\u043e\u043c\u0435 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439.<br \/>\u0412\u00a0\u043c\u043e\u0434\u0435\u043b\u0438 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439, \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044c \u0432\u00a0\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442\u00a0\u0441\u0432\u043e\u0435\u0433\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0433\u043e \u043a\u043e\u043d\u0441\u0442\u0438\u0442\u0443\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0430 \u043c\u043e\u0436\u0435\u0442\u00a0\u0431\u044b\u0442\u044c\u00a0\u043b\u0438\u0431\u043e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043e\u0439 (\u043e\u0431\u044a\u0435\u043a\u0442\u043e\u043c)\u00a0\u043b\u0438\u0431\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 (\u043c\u0435\u0442\u043e\u0434\u043e\u043c).<br \/>\u0412\u00a0\u043e\u0442\u043b\u0438\u0447\u0438\u0438 \u043e\u0442\u00a0\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u0439 ER\u00a0\u2014 \u043c\u043e\u0434\u0435\u043b\u0438, \u0433\u0434\u0435 \u0434\u043b\u044f\u00a0\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0445\u0435\u043c\u044b \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0434\u0432\u0430 \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u043f\u043e\u043d\u044f\u0442\u0438\u044f\u00a0\u2014 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044c \u0438 \u0441\u0432\u044f\u0437\u044c, \u0432\u00a0\u043c\u043e\u0434\u0435\u043b\u0438 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439 \u0438 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044c \u0438 \u0441\u0432\u044f\u0437\u044c \u0435\u0441\u0442\u044c \u0441\u0443\u0442\u044c \u043e\u0434\u043d\u043e \u0438 \u0442\u043e\u0436\u0435.<br \/>\u0422\u0430\u043a\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u043d\u0435\u00a0\u0442\u043e\u043b\u044c\u043a\u043e \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438, \u043d\u043e\u00a0\u0438 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044e\u044e \u0435\u0451 \u043c\u043e\u0434\u0435\u043b\u044c\u00a0\u2014 \u043c\u043e\u0434\u0435\u043b\u044c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439.<br \/>\u0421\u0443\u0449\u043d\u043e\u0441\u0442\u044c \u0432\u00a0\u0441\u0432\u043e\u0451\u043c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u043c \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435 \u0442\u0440\u0438\u0435\u0434\u0438\u043d\u0430 (\u0442\u0440\u043e\u0438\u0447\u043d\u0430, \u0442\u0440\u0451\u0445\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043d\u0430), \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e\u00a0\u043e\u043d\u0430 \u0435\u0441\u0442\u044c \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 (\u0441\u0438\u043d\u0442\u0435\u0437) \u0442\u0440\u0451\u0445 \u0430\u0441\u043f\u0435\u043a\u0442\u043e\u0432 (\u043a\u0430\u0447\u0435\u0441\u0442\u0432) \u0434\u0440\u0443\u0433\u0438\u0445 (\u0438\u043b\u0438 \u0441\u0435\u0431\u044f) \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439.<\/p>\n<p><a href=\"https:\/\/github.com\/netkeep80\/jsonRVM\">jsonRVM<\/a>\u00a0\u2014 \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u0430\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u0430\u044f \u043c\u0430\u0448\u0438\u043d\u0430 \u0434\u043b\u044f\u00a0\u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f json \u043f\u0440\u043e\u0435\u043a\u0446\u0438\u0438 \u043c\u043e\u0434\u0435\u043b\u0438 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439.<br \/>\u041c\u043e\u0434\u0435\u043b\u044c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u0430\u044f \u0432\u00a0\u0432\u0438\u0434\u0435 json \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043d\u0430\u00a0json. \u0422\u0430\u043a\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u0433\u0438\u0431\u0440\u0438\u0434 \u0441\u0435\u0433\u043c\u0435\u043d\u0442\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043a\u043e\u0434\u0430 \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043b\u0435\u0433\u043a\u043e \u0434\u0435\u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c\/\u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0442\u044c\/\u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0446\u0438\u044e \u043c\u043e\u0434\u0435\u043b\u0438 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439, \u0430\u00a0\u0442\u0430\u043a\u00a0\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u044b json \u0434\u043b\u044f\u00a0\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0412\u00a0\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043c\u043e\u0434\u0435\u043b\u0438 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439, \u043c\u0435\u0442\u0430\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u043c\u043e\u0436\u0435\u0442 \u043d\u0435\u00a0\u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u043e\u00a0\u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u044b\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0438 \u043c\u0435\u0442\u0430\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0438 \u0441\u0440\u0430\u0437\u0443 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0438\u0445 \u0438\u043b\u0438\u00a0\u0432\u044b\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0432\u00a0\u0432\u0438\u0434\u0435 json.<\/p>\n<h3>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h3>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0431\u0430\u0437\u0438\u0441 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0430\u043b\u0433\u0435\u0431\u0440\u044b, \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432, \u0430 \u0442\u0430\u043a \u0436\u0435 \u0438\u0437\u043b\u043e\u0436\u0438\u043b\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u0445 \u0442\u0435\u043e\u0440\u0438\u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432 \u0438 \u043e\u0442\u0440\u0430\u0437\u0438\u043b\u0438 \u044d\u0442\u043e \u043d\u0430 \u0442\u0435\u043e\u0440\u0438\u044e \u0442\u0438\u043f\u043e\u0432. \u0410 \u0442\u0430\u043a \u0436\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043b\u0438 \u043d\u0430\u0431\u043e\u0440 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438 \u043b\u0435\u043c\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0445 \u0434\u043b\u044f \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0437 \u043b\u044e\u0431\u043e\u0433\u043e \u0432\u0435\u043a\u0442\u043e\u0440\u0430\/\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u0441\u0432\u044f\u0437\u0438-\u0434\u0443\u043f\u043b\u0435\u0442\u044b \u0438 \u043e\u0431\u0440\u0430\u0442\u043d\u043e. \u0410 \u0437\u043d\u0430\u0447\u0438\u0442 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u0443\u043b\u044b:<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L \\to L^2\" alt=\"L \\to L^2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/42d\/52f\/71e\/42d52f71e0454feb23d2d4d6773ab933.svg\" width=\"66\" height=\"21\"\/><\/p>\n<\/blockquote>\n<p>\u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u044d\u0442\u043e \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u043f\u043e\u0440\u043e\u0439 \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0433\u0438\u043f\u043e\u0442\u0435\u0437\u044b \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0441\u0432\u044f\u0437\u044f\u043c\u0438-\u0434\u0443\u043f\u043b\u0435\u0442\u0430\u043c\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u0434\u0440\u0443\u0433\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u0430\u043d\u043d\u044b\u0445. \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 \u0447\u0442\u043e \u0441\u0432\u044f\u0437\u0435\u0439 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u043b\u044e\u0431\u044b\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b, \u0433\u0440\u0430\u0444\u044b, \u0441\u0442\u0440\u043e\u043a\u0438, \u043c\u0430\u0441\u0441\u0438\u0432\u044b, \u0441\u043f\u0438\u0441\u043a\u0438, \u0447\u0438\u0441\u043b\u0430, \u0437\u0432\u0443\u043a, \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438, \u0432\u0438\u0434\u0435\u043e \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435.<\/p>\n<p>\u041c\u044b \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u043c \u0434\u0435\u043b\u0430\u0442\u044c \u0443\u0441\u043f\u0435\u0445\u0438 \u0432 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u043c\u044b\u0441\u043b\u0430 \u043c\u0435\u0436\u0434\u0443 \u0443\u0436\u0435 3-\u043c\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c\u0438 \u0438 \u043c\u0435\u0436\u0434\u0443 \u043b\u044e\u0434\u044c\u043c\u0438 \u0438\u0437 \u043d\u0430\u0448\u0435\u0433\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043d\u0430\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442 \u0443\u0436\u0435 750+ \u0447\u0435\u043b\u043e\u0432\u0435\u043a. \u042d\u0442\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u044b \u043f\u0440\u0438\u0437\u0432\u0430\u043d\u044b \u043f\u0440\u0438\u043d\u0435\u0441\u0442\u0438 \u0432 \u043c\u0438\u0440 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u0438 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0435\u0451 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439 \u0434\u043b\u044f \u0447\u0435\u043b\u043e\u0432\u0435\u0447\u0435\u0441\u0442\u0432\u0430. \u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0439 \u0438\u0442\u0435\u0440\u0430\u0446\u0438\u0435\u0439 \u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u043c \u0434\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c\u0441\u044f \u043e \u0435\u0434\u0438\u043d\u043e\u043c \u0441\u043c\u044b\u0441\u043b\u0435 \u0441\u043b\u043e\u0432 \u0438 \u0442\u0435\u0440\u043c\u0438\u043d\u043e\u0432 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043e\u0431\u0449\u0435\u0439 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u0442\u0435\u043e\u0440\u0438\u0438. \u042d\u0442\u0430 \u0442\u0435\u043e\u0440\u0438\u044f \u043a\u0430\u043a \u043c\u044b \u0432\u0435\u0440\u0438\u043c \u0441\u043c\u043e\u0436\u0435\u0442 \u0441\u0442\u0430\u0442\u044c \u043c\u0435\u0442\u0430\u044f\u0437\u044b\u043a\u043e\u043c, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0443\u0436\u0435 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u043e\u0433\u0443\u0442 \u0434\u043e\u0433\u043e\u0432\u043e\u0432\u0430\u0440\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b, \u043d\u043e \u0438 \u043b\u044e\u0434\u0438.<\/p>\n<p>\u0421 \u043a\u0430\u0436\u0434\u044b\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u0443\u0442\u043e\u0447\u043d\u0435\u043d\u0438\u0435\u043c \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u043d\u0430 \u0448\u0430\u0433 \u0431\u043b\u0438\u0436\u0435 \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0437\u0433\u043e\u0432\u0430\u0440\u0438\u0432\u0430\u0442\u044c \u043d\u0430 \u043e\u0434\u043d\u043e\u043c \u044f\u0437\u044b\u043a\u0435 \u0438 \u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u0443 \u0438\u0434\u0435\u044e \u043f\u043e\u043d\u044f\u0442\u043d\u0435\u0435 \u0434\u043b\u044f \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0438\u0445.<\/p>\n<p>\u042d\u0442\u0430 \u0436\u0435 \u0442\u0435\u043e\u0440\u0438\u044f \u043f\u0440\u0438\u0433\u043e\u0434\u0438\u0442\u0441\u044f \u043d\u0430\u043c \u0434\u043b\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0439 \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\u0445 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438, \u0430 \u0442\u0430\u043a \u0436\u0435 \u0432 \u0431\u0443\u0434\u0443\u0449\u0435\u043c \u0438 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0447\u0438\u043f\u043e\u0432 (\u0438\u043b\u0438 \u0441\u043e\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u0432) \u0434\u043b\u044f \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u043d\u0430\u0434 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u0441\u0432\u044f\u0437\u044f\u043c\u0438.<\/p>\n<h4>\u041f\u043b\u0430\u043d\u044b \u043d\u0430 \u0431\u0443\u0434\u0443\u0449\u0435\u0435<\/h4>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0431\u044b\u043b\u0430 \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u043b\u0438\u0448\u044c \u043c\u0430\u043b\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0432\u0441\u0435\u0445 \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043e\u043a \u043f\u043e \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0430\u043a\u043e\u043f\u0438\u043b\u0438\u0441\u044c \u0437\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043b\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u044b \u0438 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0439. \u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0441\u0442\u0430\u0442\u044c\u044f\u0445 \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u0431\u0443\u0434\u0443\u0442 \u0440\u0430\u0441\u043a\u0440\u044b\u0442\u044b \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0440\u043e\u0435\u043a\u0446\u0438\u0438 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0438, \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u0445 \u0438\u043d\u044b\u0445 \u0442\u0435\u043e\u0440\u0438\u0439, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a: \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0430\u043b\u0433\u0435\u0431\u0440\u0430, \u0442\u0435\u043e\u0440\u0438\u044f \u0433\u0440\u0430\u0444\u043e\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u0435 \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u0445 \u0442\u0435\u043e\u0440\u0438\u0438 \u0442\u0438\u043f\u043e\u0432 \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u0435\u043e\u0440\u0438\u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b (\u043a\u043e\u0434\u043e\u0432\u043e\u0435 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435), \u0438 \u0440\u0430\u0437\u0431\u043e\u0440 \u043e\u0442\u043b\u0438\u0447\u0438\u0439 \u043e\u0442 <a href=\"https:\/\/web.archive.org\/web\/20181219134621\/http:\/\/sentences.com\/docs\/amd.pdf\">\u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0421\u0430\u0439\u043c\u043e\u043d\u0430 \u0412\u0438\u043b\u044c\u044f\u043c\u0441\u0430<\/a>.<br \/>\u0415\u0449\u0451 \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u0447\u0435\u0442\u043a\u043e\u0439 \u0438 \u043e\u0431\u0449\u0435\u0439 \u0442\u0435\u0440\u043c\u0438\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439, \u0435\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043f\u043e\u0441\u0442\u0443\u043b\u0430\u0442\u043e\u0432, \u0430\u0441\u043f\u0435\u043a\u0442\u043e\u0432, \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u043a\u043e\u0440\u043d\u0435\u0439. \u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u043f\u0440\u043e\u0433\u0440\u0435\u0441\u0441 \u043f\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0442\u0435\u043e\u0440\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0442\u044c <a href=\"https:\/\/github.com\/deep-foundation\/deep-theory\">\u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 deep-theory<\/a>.<\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u043d\u0435 \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f, \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c\u0441\u044f \u043d\u0430 <a href=\"https:\/\/habr.com\/ru\/companies\/deepfoundation\">\u0431\u043b\u043e\u0433 Deep.Foundation<\/a> \u0437\u0434\u0435\u0441\u044c \u0438\u043b\u0438 \u0443\u0436\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430\u0448\u0438 <a href=\"https:\/\/github.com\/deep-foundation\">\u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430 GitHub<\/a> \u0438\u043b\u0438 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0430\u043c \u043d\u0430 <a href=\"https:\/\/discord.gg\/deep-foundation\">\u043d\u0430\u0448\u0435\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0432 Discord<\/a> (\u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u043f\u043e\u0434\u043e\u0439\u0434\u0451\u0442, \u0435\u0441\u043b\u0438 \u0432\u044b \u0431\u043e\u0438\u0442\u0435\u0441\u044c \u0447\u0442\u043e \u0432\u0430\u0441 \u0437\u0430\u043c\u0438\u043d\u0443\u0441\u0443\u044e\u0442 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445).<\/p>\n<p>\u0411\u0443\u0434\u0435\u043c \u0440\u0430\u0434\u044b \u043b\u044e\u0431\u043e\u0439 \u0432\u0430\u0448\u0435\u0439 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u0447\u0442\u043e \u0437\u0434\u0435\u0441\u044c \u043d\u0430 \u0445\u0430\u0431\u0440\u0435, \u0447\u0442\u043e \u043d\u0430 GitHub \u0438 Discord. \u0412\u044b \u0442\u0430\u043a \u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0442\u0435\u043e\u0440\u0438\u0438, \u0438\u043b\u0438 \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u044c \u044d\u0442\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u043b\u044e\u0431\u044b\u043c \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u043c \u0441 \u043d\u0430\u043c\u0438.<\/p>\n<h4>P.S.<\/h4>\n<p>\u0421\u0442\u0430\u0442\u044c\u044f \u0431\u0443\u0434\u0435\u0442 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u043f\u043e \u043c\u0435\u0440\u0435 \u0440\u0430\u0437\u0432\u0438\u0442\u0438\u044f \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0438 \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u043c\u0435\u0441\u044f\u0446\u0430.<\/p>\n<h4>P.S.S.<\/h4>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u0441\u0442\u0430\u043b\u0438 \u0444\u0430\u043d\u0430\u0442\u043e\u043c \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439, \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u043c \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u043d\u044f\u0442\u044c \u0432 \u0441\u043e\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0435\u0442\u044f\u0445 \u044d\u0442\u0443 \u0444\u043e\u0440\u043c\u0443\u043b\u0443 \u043a\u0430\u043a \u043c\u0435\u043c\u043e-\u0432\u0438\u0440\u0443\u0441.<\/p>\n<p>\u0421\u0438\u043c\u0432\u043e\u043b\u0430\u043c\u0438 \u044e\u043d\u0438\u043a\u043e\u0434\u0430:<\/p>\n<blockquote>\n<p>L \u21a6 L\u00b2<\/p>\n<\/blockquote>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f LaTeX:<\/p>\n<blockquote>\n<p>L \\to L^2<\/p>\n<\/blockquote>\n<p>\u041a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442\u0441\u044f \u0432 SVG (\u043d\u0430\u0436\u0438\u043c\u0430\u0435\u0442\u0441\u044f):<\/p>\n<blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula inline\" source=\"L \\to L^2\" alt=\"L \\to L^2\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/42d\/52f\/71e\/42d52f71e0454feb23d2d4d6773ab933.svg\" width=\"66\" height=\"21\"\/><\/p>\n<\/blockquote>\n<h3>\u0421\u0441\u044b\u043b\u043a\u0438<\/h3>\n<ol>\n<li>\n<p>Edgar F. Codd, IBM Research Laboratory, San Jose, California, June 1970, <a href=\"https:\/\/dl.acm.org\/doi\/abs\/10.1145\/362384.362685\">\u201cRelational Model of Data for Large Shared Data Banks.\u201d, paragraph 1.3., page 379<\/a><\/p>\n<\/li>\n<li>\n<p>Bender, Edward A.; Williamson, S. Gill (2010). <a href=\"https:\/\/books.google.com\/books?id=vaXv_yhefG8C\">\u201cLists, Decisions and Graphs. With an Introduction to Probability.\u201d, section 2, definition 6, page 161<\/a><\/p>\n<\/li>\n<\/ol>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/804617\/\"> https:\/\/habr.com\/ru\/articles\/804617\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u0435 \u043f\u0435\u0440\u0432\u043e\u0435 \u0430\u043f\u0440\u0435\u043b\u044f, \u043a\u0430\u043a \u0432\u044b \u043c\u043e\u0433\u043b\u0438 \u0434\u043e\u0433\u0430\u0434\u0430\u0442\u044c\u0441\u044f, \u043c\u044b \u043f\u043e\u0448\u0443\u0442\u0438\u043b\u0438. \u041f\u043e\u0440\u0430 \u044d\u0442\u043e \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c, \u0438 \u0442\u0435\u043f\u0435\u0440\u044c\u0432\u0441\u0451 \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u043e.<\/p>\n<h3>TL;DR (too long; didn&#8217;t read)<\/h3>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u043d\u043e\u0433\u043e \u0431\u0443\u043a\u0432, \u043d\u043e \u0435\u0451 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432\u0441\u0435\u0433\u043e 4-\u043c\u044f \u0441\u0438\u043c\u0432\u043e\u043b\u0430\u043c\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Set_theory\">\u0442\u0435\u043e\u0440\u0438\u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432<\/a>:<\/p>\n<blockquote>\n<\/blockquote>\n<p>\u0412\u0441\u0451 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u0435 \u0438\u0437 \u043d\u0438\u0445.<\/p>\n<h2>\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0442\u0435\u043e\u0440\u0438\u0439<\/h2>\n<p>\u041d\u0430\u0447\u043d\u0451\u043c \u043c\u044b \u0441\u043e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043e\u0441\u043d\u043e\u0432 \u0434\u0432\u0443\u0445 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Data_model\">\u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0434\u0430\u043d\u043d\u044b\u0445<\/a> \u0438 <a href=\"https:\/\/web.archive.org\/web\/20210814063207\/https:\/\/en.wikipedia.org\/wiki\/Associative_model_of_data\">\u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0445<\/a>. \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u0432\u0432\u0435\u0441\u0442\u0438 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f \u0432 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442.<\/p>\n<h3>\u0420\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0430\u043b\u0433\u0435\u0431\u0440\u0430<\/h3>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Relational_algebra\">\u0420\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0430\u043b\u0433\u0435\u0431\u0440\u0430<\/a> \u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Relational_model\">\u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c<\/a> \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u044b \u043d\u0430 \u043f\u043e\u043d\u044f\u0442\u0438\u044f\u0445 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Relation_(database)\">\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f<\/a> \u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple\">n-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439<\/a>.<\/p>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Relation_(database)\">\u041e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435<\/a> \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Set_(mathematics)\">\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e<\/a> <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple\">n-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439<\/a>:<\/p>\n<blockquote>\n<p> <a href=\"https:\/\/dl.acm.org\/doi\/abs\/10.1145\/362384.362685\">[1]<\/a><\/p>\n<\/blockquote>\n<figure class=\"full-width\">\n<div><figcaption>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435\u043c , \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c \u0441\u0442\u0440\u043e\u043a , \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0430\u0449\u0438\u0445 \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u0443 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044e .<\/figcaption><\/div>\n<\/figure>\n<p>\u0413\u0434\u0435:<\/p>\n<ul>\n<li>\n<p> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Relation_(database)\">\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435<\/a> (\u0442\u0430\u0431\u043b\u0438\u0446\u0443);<\/p>\n<\/li>\n<li>\n<p> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043b\u0435\u0432\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f <a href=\"https:\/\/en.wikipedia.org\/wiki\/Subset\">\u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c<\/a> \u043f\u0440\u0430\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f;<\/p>\n<\/li>\n<li>\n<p> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Cartesian_product\">\u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432<\/a>;<\/p>\n<\/li>\n<li>\n<p> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Set_(mathematics)\">\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e<\/a> \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 (<a href=\"https:\/\/en.wikipedia.org\/wiki\/Data_domain\">\u0434\u043e\u043c\u0435\u043d<\/a>) \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043a\u0430\u0436\u0434\u0430\u044f \u044f\u0447\u0435\u0439\u043a\u0430 \u0432 \u0441\u0442\u043e\u043b\u0431\u0446\u0435 ;<\/p>\n<\/li>\n<li>\n<p>\u0421\u0442\u0440\u043e\u043a\u0438 \u0438\u043b\u0438 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430  \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u0432 \u0432\u0438\u0434\u0435 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple\">n-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439<\/a>.<\/p>\n<\/li>\n<\/ul>\n<p>\u0414\u0430\u043d\u043d\u044b\u0435 \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0432 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f n-\u043a\u043e\u0440\u0442\u0435\u0436\u0438 \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438, \u043c\u043e\u0436\u043d\u043e \u0442\u043e\u0447\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u0430\u043d\u043d\u044b\u0445. \u041d\u043e \u043d\u0443\u0436\u043d\u044b \u043b\u0438 \u0432\u043e\u043e\u0431\u0449\u0435 n-\u043a\u043e\u0440\u0442\u0435\u0436\u0438? \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u0430\u0436\u0434\u044b\u0439 n-\u043a\u043e\u0440\u0442\u0435\u0436 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple#Tuples_as_nested_ordered_pairs\">\u0432 \u0432\u0438\u0434\u0435 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440<\/a>. \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0441\u043b\u0435\u0434\u0443\u0435\u0442, \u0447\u0442\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440 \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043b\u044e\u0431\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u0422\u0430\u043a\u0436\u0435 \u043d\u0435 \u0447\u0430\u0441\u0442\u043e \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0448\u044c, \u0447\u0442\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u0445 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f n-\u043a\u043e\u0440\u0442\u0435\u0436\u0430\u043c\u0438 (\u0445\u043e\u0442\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0447\u0438\u0441\u043b\u043e \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0437\u043b\u043e\u0436\u0438\u0442\u044c \u043d\u0430 n-\u043a\u043e\u0440\u0442\u0435\u0436 \u0431\u0438\u0442\u043e\u0432). \u0412 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 SQL \u0431\u0430\u0437\u0430\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u0430\u0436\u0435 \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435  \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0438 \u0435\u0435 \u0441\u0442\u0440\u043e\u043a\u0435 (n-\u043a\u043e\u0440\u0442\u0435\u0436\u0435). \u0422\u0430\u043a \u0447\u0442\u043e  \u043e\u0431\u044b\u0447\u043d\u043e \u043c\u0435\u043d\u044c\u0448\u0435 . \u041f\u043e\u044d\u0442\u043e\u043c\u0443, \u0432 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043d\u0435\u0442 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 n-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439, \u0434\u0430\u0436\u0435 \u0432 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0431\u0430\u0437\u0430\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<figure class=\"full-width\">\n<div><figcaption>\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0438 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0421\u0430\u0439\u043c\u043e\u043d\u0430 \u0412\u0438\u043b\u044c\u044f\u043c\u0441\u0430 \u0431\u044b\u043b\u0430 \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u0430 \u0434\u0432\u0430\u0436\u0434\u044b). \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0442\u0430\u0431\u043b\u0438\u0446 \u043f\u043e\u0434 \u043a\u0430\u0436\u0434\u044b\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445, \u0432 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043a\u0430\u043a \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0431\u044b\u043b\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u0432\u0443\u0445 \u0442\u0430\u0431\u043b\u0438\u0446, \u0430 \u043f\u043e\u0442\u043e\u043c \u0438 \u0432\u043e\u0432\u0441\u0435 \u043e\u0434\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u0432 \u0438\u043b\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432.<\/figcaption><\/div>\n<\/figure>\n<h3>\u041e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0433\u0440\u0430\u0444<\/h3>\n<p>\u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0433\u0440\u0430\u0444 \u0438 \u0433\u0440\u0430\u0444\u044b \u0432 \u0446\u0435\u043b\u043e\u043c \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u044b \u043d\u0430 \u043f\u043e\u043d\u044f\u0442\u0438\u044f\u0445 \u0432\u0435\u0440\u0448\u0438\u043d\u044b \u0438 \u0440\u0435\u0431\u0440\u0430 (2-\u043a\u043e\u0440\u0442\u0435\u0436\u0430).<\/p>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Directed_graph\">\u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0433\u0440\u0430\u0444<\/a>  \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u0430\u043a:<\/p>\n<blockquote>\n<p> <a href=\"https:\/\/books.google.com\/books?id=vaXv_yhefG8C\">[2]<\/a><\/p>\n<\/blockquote>\n<p>\u0413\u0434\u0435:<\/p>\n<ul>\n<li>\n<p>\u00a0&#8212; \u044d\u0442\u043e\u00a0<a href=\"https:\/\/en.wikipedia.org\/wiki\/Set_(mathematics)\">\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e<\/a>, \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f\u00a0<a href=\"https:\/\/en.wikipedia.org\/wiki\/Vertex_(graph_theory)\">\u0432\u0435\u0440\u0448\u0438\u043d\u0430\u043c\u0438<\/a>, \u0443\u0437\u043b\u0430\u043c\u0438 \u0438\u043b\u0438 \u0442\u043e\u0447\u043a\u0430\u043c\u0438;<\/p>\n<\/li>\n<li>\n<p>\u00a0&#8212; \u044d\u0442\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u00a0<a href=\"https:\/\/en.wikipedia.org\/wiki\/Ordered_pair\">\u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440<\/a> (2-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439)\u00a0\u0432\u0435\u0440\u0448\u0438\u043d, \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0434\u0443\u0433\u0430\u043c\u0438, \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u0440\u0435\u0431\u0440\u0430\u043c\u0438 (\u0438\u043d\u043e\u0433\u0434\u0430 \u043f\u0440\u043e\u0441\u0442\u043e \u0440\u0435\u0431\u0440\u0430\u043c\u0438), \u0441\u0442\u0440\u0435\u043b\u043a\u0430\u043c\u0438 \u0438\u043b\u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u043b\u0438\u043d\u0438\u044f\u043c\u0438.<\/p>\n<\/li>\n<\/ul>\n<p>\u0414\u0430\u043d\u043d\u044b\u0435 \u0432 \u043c\u043e\u0434\u0435\u043b\u0438 \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0433\u0440\u0430\u0444\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u0432 \u0432\u0438\u0434\u0435 \u0434\u0432\u0443\u0445 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432 \u0443\u0437\u043b\u043e\u0432 \u0438 \u0440\u0435\u0431\u0435\u0440. \u0415\u0451 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0447\u0442\u0438 \u0432\u0441\u0435\u0445 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u0440\u043e\u043c\u0435, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439 (n-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439). \u0418\u043d\u043e\u0433\u0434\u0430 \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0432\u0435\u0440\u0448\u0438\u043d, \u043a\u0430\u043a \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439. \u0418 \u0445\u043e\u0442\u044f \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043e\u043d \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0434\u0443\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u0434\u0435\u0434\u0443\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0432 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u0441\u043b\u043e\u0436\u043d\u0435\u043d\u0430 \u0438\u043b\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430. \u0415\u0449\u0451, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432 \u0433\u0440\u0430\u0444\u0430\u0445 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0440\u0430\u0437\u043b\u043e\u0436\u0435\u043d\u0438\u0435 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple#Tuples_as_nested_sets\">\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043d\u0430 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430<\/a>, \u043d\u043e \u043d\u0430 \u043d\u0430\u0448 \u0432\u0437\u0433\u043b\u044f\u0434 \u044d\u0442\u043e \u043d\u0435 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439. \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u043d\u0435 \u043e\u0434\u043d\u0438 \u043c\u044b \u0442\u0430\u043a \u0441\u0447\u0438\u0442\u0430\u0435\u043c, \u0447\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c, \u043f\u043e\u0447\u0435\u043c\u0443 \u043c\u044b \u043d\u0435 \u0441\u043c\u043e\u0433\u043b\u0438 \u043d\u0430\u0439\u0442\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u044b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u0440\u0443\u0433\u0438\u0435 \u043b\u044e\u0434\u0438 \u0442\u0430\u043a \u0434\u0435\u043b\u0430\u043b\u0438.<\/p>\n<figure class=\"full-width\">\n<div><figcaption>\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432 \u0438 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439. \u0412\u0435\u0440\u0448\u0438\u043d\u0430 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u0430 <a href=\"https:\/\/linksplatform.github.io\/itself.html\">\u0437\u0430\u043c\u043a\u043d\u0443\u0442\u043e\u0439 \u043d\u0430 \u0441\u0435\u0431\u044f \u0441\u0432\u044f\u0437\u0438<\/a>, \u0442\u043e \u0435\u0441\u0442\u044c \u0441\u0432\u044f\u0437\u0438 \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432 \u0441\u0435\u0431\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0438 \u0432 \u0441\u0435\u0431\u0435 \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f. \u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e\u0435 \u0440\u0435\u0431\u0440\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u0443\u044e \u0441\u0432\u044f\u0437\u044c-\u0434\u0443\u043f\u043b\u0435\u0442. \u0410 \u043d\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0435 \u0440\u0435\u0431\u0440\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u0440\u0443 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0441\u0432\u044f\u0437\u0435\u0439-\u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u0432 \u043e\u0431\u043e\u0438\u0445 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u0445. \u0422\u043e \u0435\u0441\u0442\u044c \u0435\u0441\u043b\u0438 \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439 &#8212; \u0432\u0435\u0440\u0448\u0438\u043d\u044b \u0438 \u0440\u0451\u0431\u0440\u0430, \u0442\u043e \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0432\u044f\u0437\u0435\u0439 (\u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043f\u043e\u0445\u043e\u0436\u0438\u0445 \u043d\u0430 \u0440\u0451\u0431\u0440\u0430).<\/figcaption><\/div>\n<\/figure>\n<h3>\u0422\u0435\u043e\u0440\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439<\/h3>\n<p>\u0422\u0435\u043e\u0440\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0430 \u043d\u0430 \u043f\u043e\u043d\u044f\u0442\u0438\u0438 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<p><a href=\"https:\/\/habr.com\/ru\/companies\/deepfoundation\/articles\/576398\">\u0421\u0432\u044f\u0437\u044c<\/a> \u0432 \u043f\u0440\u043e\u0435\u043a\u0446\u0438\u0438 \u0442\u0435\u043e\u0440\u0438\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u0432 \u0442\u0435\u043e\u0440\u0438\u044e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple\">n-\u043a\u043e\u0440\u0442\u0435\u0436<\/a> \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438, \u0443 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0435\u0441\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0441\u0432\u044f\u0437\u0438 \u043c\u043e\u0433\u0443\u0442 \u0441\u0441\u044b\u043b\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u043d\u0435\u0451.<\/p>\n<blockquote>\n<p>\u0421\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043d\u044f\u0442\u0438\u0435 \u0441\u0441\u044b\u043b\u043a\u0438 \u0437\u0434\u0435\u0441\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u044b\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432. \u0421\u0430\u043c\u0430 \u0436\u0435 \u0442\u0435\u043e\u0440\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439 \u043c\u043e\u0436\u0435\u0442 \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0435\u0431\u044f \u0441\u0430\u043c\u0430 \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0435\u0440\u043c\u0438\u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0438. \u0422\u043e \u0435\u0441\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0430 \u044d\u0442\u043e \u0447\u0430\u0441\u0442\u043d\u044b\u0439 \u0441\u043b\u0443\u0447\u0430\u0439 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<\/blockquote>\n<h4>\u0414\u0443\u043f\u043b\u0435\u0442\u044b<\/h4>\n<p>\u0421\u0432\u044f\u0437\u044c-\u0434\u0443\u043f\u043b\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u043c (2-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u043c \u0438\u043b\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Ordered_pair#:~:text=In%20mathematics%2C%20an%20ordered%20pair,%7Bb%2C%20a%7D.\">\u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u0430\u044f \u043f\u0430\u0440\u043e\u0439<\/a>) \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438. \u0423 \u0441\u0432\u044f\u0437\u0438-\u0434\u0443\u043f\u043b\u0435\u0442\u0430 \u0435\u0441\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0430.<\/p>\n<pre><code class=\"python\">L = { 1 , 2 }  L \u00d7 L = {   (1, 1),   (1, 2),   (2, 1),   (2, 2), }<\/code><\/pre>\n<p>\u0413\u0434\u0435:\u00a0\u2014 \u044d\u0442\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0441\u0441\u044b\u043b\u043e\u043a (\u043e\u0442 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u0433\u043e Links\u00a0\u2014 \u0441\u0441\u044b\u043b\u043a\u0438).<\/p>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0432 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435  \u0432\u0441\u0435\u0433\u043e  \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0441\u0432\u044f\u0437\u0438, \u0442\u043e \u0435\u0441\u0442\u044c  \u0438 . \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 \u0432 \u0441\u0435\u0442\u0438 \u0441\u0432\u044f\u0437\u0435\u0439 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0439 \u043d\u0430 \u0442\u0430\u043a\u043e\u043c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435 \u0441\u0441\u044b\u043b\u043e\u043a \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e  \u0441\u0432\u044f\u0437\u0438.<\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f <a href=\"https:\/\/en.wikipedia.org\/wiki\/Cartesian_product\">\u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/a>  \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f, \u0442\u043e \u0435\u0441\u0442\u044c.<\/p>\n<figure class=\"full-width\">\n<div><figcaption>\u041c\u0430\u0442\u0440\u0438\u0446\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0430\u044f \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 { 1, 2 } \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f. \u0417\u0434\u0435\u0441\u044c \u043c\u044b \u0432\u0438\u0434\u0438\u043c \u0447\u0442\u043e \u0443 \u0441\u0432\u044f\u0437\u0435\u0439 \u0441 \u0434\u0432\u0443\u043c\u044f \u0441\u0441\u044b\u043b\u043a\u0430\u043c\u0438 \u043d\u0430 \u0441\u0432\u044f\u0437\u0438 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0432\u0441\u0435\u0433\u043e 4 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f.<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\">\n<div><figcaption>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u0441\u0442\u0440\u043e\u043a \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0445 \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439 \u0434\u043b\u044f \u0441\u0435\u0442\u0438 \u0441 \u0434\u0432\u0443\u043c\u044f \u0441\u0432\u044f\u0437\u044f\u043c\u0438, \u044d\u0442\u0438 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f { 1, 2 } \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f.<\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439-\u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a:<\/p>\n<blockquote>\n<\/blockquote>\n<p>\u0413\u0434\u0435:<\/p>\n<ul>\n<li>\n<p>\u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Function_(mathematics)\">\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 (\u0444\u0443\u043d\u043a\u0446\u0438\u044e)<\/a>;<\/p>\n<\/li>\n<li>\n<p>  \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0441\u0435\u0442\u044c \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432;<\/p>\n<\/li>\n<li>\n<p> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<blockquote>\n<\/p>\n<\/blockquote>\n<figure class=\"full-width\">\n<div><figcaption>\u0421\u0435\u0442\u044c \u0438\u0437 \u0442\u0440\u0451\u0445 \u0441\u0432\u044f\u0437\u0435\u0439. \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0435\u0442\u0438 \u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u043f\u043e\u0445\u043e\u0436\u0435\u0435 \u043d\u0430 \u0433\u0440\u0430\u0444, \u043d\u043e \u0442\u0430\u043a\u0443\u044e \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u043c\u044b \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u0441\u0435\u0442\u044c\u044e \u0441\u0432\u044f\u0437\u0435\u0439.\u00a01-\u044f \u0438 2-\u044f \u0441\u0432\u044f\u0437\u0438 \u0438\u043c\u0435\u044e\u0442 \u043f\u043e\u0445\u043e\u0436\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443. \u0422\u043e \u0435\u0441\u0442\u044c \u043e\u0431\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0442\u0441\u044f \u0432 \u0441\u0435\u0431\u0435 \u0438 \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u0441\u0435\u0431\u0435. \u041e\u0442\u0441\u044e\u0434\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0447\u0442\u043e \u0432\u043c\u0435\u0441\u0442\u043e \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u0432\u0438\u0434\u0435 \u0442\u043e\u0447\u043a\u0438 \u0432 \u0442\u0435\u043e\u0440\u0438\u0438 \u0433\u0440\u0430\u0444\u043e\u0432 \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0437\u0430\u043c\u043a\u043d\u0443\u0442\u043e\u0439 \u0441\u0442\u0440\u0435\u043b\u043a\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u043e\u0445\u043e\u0436\u0435 \u043d\u0430 \u043d\u0435\u0447\u0442\u043e \u0432\u0440\u043e\u0434\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0441\u0442\u0438.<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\">\n<div><figcaption>\u042d\u0442\u043e \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0432 \u0432\u0438\u0434\u0435 \u043c\u0430\u0442\u0440\u0438\u0446\u044b, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0435\u0439.\u00a0\u0417\u0434\u0435\u0441\u044c \u043e\u0440\u0430\u043d\u0436\u0435\u0432\u044b\u043c \u0446\u0432\u0435\u0442\u043e\u043c \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u044b \u0441\u0432\u044f\u0437\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0434\u0430\u044e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439. \u0422\u043e \u0435\u0441\u0442\u044c \u0438\u0437 9 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0441\u0432\u044f\u0437\u0438 \u0432\u044b\u0431\u0440\u0430\u043d\u044b \u0432\u0441\u0435\u0433\u043e 3 \u0441\u0432\u044f\u0437\u0438, \u0447\u0442\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0440\u0443 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 L.<\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439-\u0434\u0443\u043f\u043b\u0435\u0442\u043e\u0432 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u0432\u044f\u0437\u0438-\u0434\u0443\u043f\u043b\u0435\u0442\u044b \u043c\u043e\u0433\u0443\u0442:<\/p>\n<ul>\n<li>\n<p>\u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442 \u0441\u043e \u0441\u0432\u043e\u0438\u043c\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438;<\/p>\n<\/li>\n<li>\n<p>\u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0442\u044c \u0434\u0432\u0430 \u0434\u0443\u043f\u043b\u0435\u0442\u0430 \u0432\u043c\u0435\u0441\u0442\u0435, \u0447\u0435\u0433\u043e \u043d\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0442\u0435\u043e\u0440\u0438\u044f \u0433\u0440\u0430\u0444\u043e\u0432;<\/p>\n<\/li>\n<li>\n<p>\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c (n-\u043a\u043e\u0440\u0442\u0435\u0436) \u0432 \u0432\u0438\u0434\u0435 \u0434\u0435\u0440\u0435\u0432\u0430, \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0433\u043e \u0438\u0437 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u0440;<\/p>\n<\/li>\n<li>\n<p>\u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u043c \u044f\u0437\u044b\u043a\u0435, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u043e \u043c\u043e\u0434\u0435\u043b\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Predicate_(grammar)\">subject-predicate<\/a>.<\/p>\n<\/li>\n<\/ul>\n<p>\u0411\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u044d\u0442\u043e\u043c\u0443 \u0434\u0443\u043f\u043b\u0435\u0442\u044b \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c, \u043a\u0430\u043a \u043c\u044b \u0432\u0435\u0440\u0438\u043c, \u043b\u044e\u0431\u0443\u044e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<h4>\u0422\u0440\u0438\u043f\u043b\u0435\u0442\u044b<\/h4>\n<p>\u0421\u0432\u044f\u0437\u044c-\u0442\u0440\u0438\u043f\u043b\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u043c (3-\u043a\u043e\u0440\u0442\u0435\u0436\u0435\u043c) \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<pre><code class=\"python\">L = { 1 , 2 }  L \u00d7 L = {   (1, 1),   (1, 2),   (2, 1),   (2, 2), }  L \u00d7 L \u00d7 L = {   (1, 1, 1),   (1, 1, 2),   (1, 2, 1),   (1, 2, 2),   (2, 1, 1),   (2, 1, 2),   (2, 2, 1),   (2, 2, 2), }<\/code><\/pre>\n<figure class=\"full-width\">\n<div><figcaption>\u0422\u0440\u0451\u0445\u043c\u0435\u0440\u043d\u044b\u0439 \u043a\u0443\u0431-\u043c\u0430\u0442\u0440\u0438\u0446\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0438-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u0430. \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0442\u0430\u043a\u043e\u0439 \u043a\u0443\u0431 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 { 1 , 2 } \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f, \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e, \u0442\u043e \u0435\u0441\u0442\u044c { 1 , 2 } \u00d7 { 1 , 2 } \u00d7 { 1 , 2 }.<\/figcaption><\/div>\n<\/figure>\n<figure class=\"full-width\">\n<div><figcaption>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u0438-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0434\u0435\u043a\u0430\u0440\u0442\u043e\u0432\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 { 1 , 2 } \u043d\u0430 \u0441\u0430\u043c\u043e \u0441\u0435\u0431\u044f, \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e, \u0442\u043e \u0435\u0441\u0442\u044c { 1 , 2 } \u00d7 { 1 , 2 } \u00d7 { 1 , 2 }. <\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u043a:<\/p>\n<blockquote>\n<\/blockquote>\n<p>\u0413\u0434\u0435:<\/p>\n<ul>\n<li>\n<p> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0443\u044e \u0441\u0435\u0442\u044c \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u0432;<\/p>\n<\/li>\n<li>\n<p> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<blockquote>\n<\/p>\n<\/p>\n<\/blockquote>\n<figure class=\"full-width\">\n<div><figcaption>\u0413\u0440\u0430\u0444\u043e-\u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0435 \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 4-\u0445 \u0441\u0432\u044f\u0437\u0435\u0439-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u043e\u0432.<\/figcaption><\/div>\n<\/figure>\n<p>\u0421\u0432\u044f\u0437\u0438-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u044b \u043c\u043e\u0433\u0443\u0442 \u0434\u0435\u043b\u0430\u0442\u044c \u0442\u043e \u0436\u0435, \u0447\u0442\u043e \u0438 \u0441\u0432\u044f\u0437\u0438-\u0434\u0443\u043f\u043b\u0435\u0442\u044b. \u0422\u0430\u043a \u043a\u0430\u043a \u0432 \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u0430\u0445 \u0435\u0441\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0430, \u0442\u043e \u0435\u0451 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u0442\u0438\u043f\u0430 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u0432\u044f\u0437\u0438-\u0442\u0440\u0438\u043f\u043b\u0435\u0442\u044b \u043c\u043e\u0433\u0443\u0442:<\/p>\n<ul>\n<li>\n<p>\u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442, \u0435\u0433\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435;<\/p>\n<\/li>\n<li>\n<p>\u0441\u0432\u044f\u0437\u044b\u0432\u0430\u0442\u044c \u0434\u0432\u0435 \u0441\u0432\u044f\u0437\u0438 \u0432\u043c\u0435\u0441\u0442\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u043c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0435\u043c;<\/p>\n<\/li>\n<li>\n<p>\u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 \u0435\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u043c \u044f\u0437\u044b\u043a\u0435, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u043f\u043e \u043c\u043e\u0434\u0435\u043b\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Subject%E2%80%93verb%E2%80%93object_word_order\">subject-verb-object<\/a>.<\/p>\n<\/li>\n<\/ul>\n<h4>\u0412\u0435\u043a\u0442\u043e\u0440\u0430<\/h4>\n<p>\u0412\u0435\u043a\u0442\u043e\u0440 (\u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c) \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438 \u0442\u0430\u043a\u0436\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u043a\u0430\u043a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple\">n-\u043a\u043e\u0440\u0442\u0435\u0436<\/a>, \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0431\u0449\u0438\u043c \u0441\u043b\u0443\u0447\u0430\u0435\u043c.<\/p>\n<p>\u0421\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439 \u0432 \u043e\u0431\u0449\u0435\u043c \u0432\u0438\u0434\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u0430\u043a:<\/p>\n<blockquote>\n<\/blockquote>\n<p>\u0413\u0434\u0435:<\/p>\n<ul>\n<li>\n<p> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0443\u044e \u0441\u0435\u0442\u044c \u0441\u0432\u044f\u0437\u0435\u0439;<\/p>\n<\/li>\n<li>\n<p> \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0432\u044f\u0437\u0438.<\/p>\n<\/li>\n<\/ul>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<blockquote>\n<\/p>\n<\/p>\n<\/blockquote>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f n-\u043a\u043e\u0440\u0442\u0435\u0436\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0441\u0432\u044f\u0437\u0435\u0439.<\/p>\n<p>\u041f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 (\u0432\u0435\u043a\u0442\u043e\u0440\u0430) \u043f\u043e \u0441\u0443\u0442\u0438 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u044b \u043f\u043e \u0432\u044b\u0440\u0430\u0437\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0441\u0438\u043b\u0435 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438. \u0418 \u044d\u0442\u043e \u0435\u0449\u0451 \u043f\u0440\u0435\u0434\u0441\u0442\u043e\u0438\u0442 \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u043e\u0439 \u0442\u0435\u043e\u0440\u0438\u0438. \u041d\u043e \u043a\u043e\u0433\u0434\u0430 \u0431\u044b\u043b\u043e \u043c\u044b \u0437\u0430\u043c\u0435\u0442\u0438\u043b\u0438, \u0447\u0442\u043e \u0434\u0443\u043f\u043b\u0435\u0442\u044b \u0438 \u0442\u0440\u0438\u043f\u043b\u0435\u0442\u044b \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u044b \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439 \u043b\u044e\u0431\u043e\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0430, \u0442\u043e \u043f\u043e\u044f\u0432\u0438\u043b\u043e\u0441\u044c \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u0431 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0430\u043c\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e.<\/p>\n<h3>\u0418\u0442\u043e\u0433\u0438 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f<\/h3>\n<p>\u0420\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0441\u0451, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c. \u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f \u0436\u0435 \u043c\u043e\u0434\u0435\u043b\u044c \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0445\u043e\u0440\u043e\u0448\u0430 \u0432 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0439 \u0438 \u043d\u0435 \u0442\u0430\u043a \u0445\u043e\u0440\u043e\u0448\u0430 \u0432 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439.<\/p>\n<p>\u0410\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u043b\u0435\u0433\u043a\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c n-\u043a\u043e\u0440\u0442\u0435\u0436 \u043d\u0435\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u043e\u0440\u0442\u0435\u0436\u0435\u0439 \u0441 , \u043e\u043d\u0430 \u0441\u0442\u043e\u043b\u044c \u0436\u0435 \u0445\u043e\u0440\u043e\u0448\u0430, \u043a\u0430\u043a \u0442\u0435\u043e\u0440\u0438\u044f \u0433\u0440\u0430\u0444\u043e\u0432, \u0432 \u0441\u0432\u043e\u0435\u0439 \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u0438, \u0438 \u043e\u043d\u0430 \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0449\u043d\u0430, \u043a\u0430\u043a \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c, \u0438 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443 SQL. \u0422\u0430\u043a\u0436\u0435 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0441\u0442\u0440\u043e\u0433\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u043f\u0440\u0438\u0447\u0451\u043c \u0442\u0430\u043a \u0447\u0442\u043e \u043b\u044e\u0431\u0430\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0432\u0441\u0435\u0433\u043e \u043e\u0434\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u044c\u044e, \u0447\u0442\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0434\u043b\u044f \u0434\u0435\u0434\u0443\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u0438.<\/p>\n<p>\u0412 \u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043d\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u043c \u043e\u0434\u043d\u043e\u043c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0438, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0435\u0435 \u0432\u0435\u0441\u0442\u0438 \u0441\u0435\u0431\u044f \u043a\u0430\u043a \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c. \u0418 \u0432 \u044d\u0442\u043e\u043c \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u0438 \u043d\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u043c 2-3 \u0441\u0442\u043e\u043b\u0431\u0446\u0430\u0445, \u043a\u0440\u043e\u043c\u0435 \u044f\u0432\u043d\u043e\u0433\u043e ID \u0438\u043b\u0438 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0433\u043e ID \u0441\u0442\u0440\u043e\u043a\u0438.<\/p>\n<p>\u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0440\u0435\u0431\u0440\u043e \u043c\u0435\u0436\u0434\u0443 \u0440\u0435\u0431\u0440\u0430\u043c\u0438 \u043f\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043b\u0438\u0431\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u0432\u043e\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435, \u043b\u0438\u0431\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044c \u0435\u0433\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e\u0433\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u0430 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0435\u0439. \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043c\u043e\u0436\u043d\u043e \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 <a href=\"https:\/\/en.wikipedia.org\/wiki\/Tuple#Tuples_as_nested_sets\">\u0432 \u0432\u0438\u0434\u0435 \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0445 \u043d\u0430\u0431\u043e\u0440\u043e\u0432<\/a> \u0432\u043d\u0443\u0442\u0440\u0438 \u0433\u0440\u0430\u0444\u043e\u0432\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438, \u043d\u043e \u044d\u0442\u043e\u0442 \u0441\u043f\u043e\u0441\u043e\u0431 \u043d\u0435 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u0435\u043d. \u0413\u0440\u0430\u0444\u043e\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c &#8212; \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043a \u0434\u0443\u043f\u043b\u0435\u0442\u0430\u043c, \u043d\u043e \u043e\u043d\u0430 \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044e.<\/p>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u0431\u0438\u0440\u0430\u0442\u044c \u043c\u0435\u0436\u0434\u0443 \u0431\u0430\u0437\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 SQL \u0438 NoSQL, \u043f\u0440\u043e\u0441\u0442\u043e<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-372464","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/372464","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=372464"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/372464\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=372464"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=372464"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=372464"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}