Мы задумывали SysMoLan как язык без строгой формальной семантики. Системный подход как что-то междисциплинарное, позволяющее как-то трассировать друг ко другу (соотносить, переплетать-weave, мэппировать, отслеживать-trail и т.д.) элементы метамоделей-viewpoint и даже моделей-view системы, как способ обсуждать эмерджентность ("целое больше суммы его частей") обсуждался пока примерно так, как обсуждают его философы -- "без формул", хотя и с применением каких-то простейших схем-диаграмм уровня "псевдокода". Псевдокод -- это когда непрофессионал считает запись формальной (т.е. готовой для обработки компьютером), а профессионал понимает, что до формализма-кода ещё пахать и пахать.
Вчера у нас состоялось очень важное заседание Русского отделения INCOSE (кстати, аж девяносто шестое по счёту), на котором мы обсудили возможность математического выражения понятий системного подхода --
http://incose-ru.livejournal.com/50098.html По сути, мы говорили о стыковке двух разных исследовательских программ:
-- теоркатегорной, которая со стороны математики пытается выразить основные понятия системного подхода. Доклад Сергея Ковалёва на вчерашнем заседании (видео и слайды см. по вышеприведённой ссылке) является результатом этой программы.
-- системноинженерной, которая пытается выделить основные понятия системноинженерного мышления, т.е. системного подхода из современных инженерных практик. Моя работа "Системноинженерное мышление в управлении жизненным циклом" (
http://techinvestlab.ru/files/systems_engineering_thinking/systems_engineering_thinking--TechInvestLab_2014.pdf) и работы по SysMoLan (
http://ailev.livejournal.com/1127145.html).
Стык этих двух работ -- это методологическое обеспечение системной инженерии, "распухание вверх" из
http://ailev.livejournal.com/1145024.html.
Мы обсудили два такта работы:
-- предоставление теорией категорий понятийного аппарата для выражения мультидисциплинарности (описание многоуровневого мегамоделирования, трассировок моделей разных тематических групп описаний друг ко другу, трансформаций моделей, многоуровневого выражения эмерджентности)
-- поскольку представление будет формальным, то предоставление матаппарата для решения теоркатегорно выраженных системных уравнений в двух возможных видах:
1. использование диаграммных техник (кое что про репрезентации в
http://ailev.livejournal.com/1045081.html и подробней про диаграммные техники в
http://ailev.livejournal.com/1069810.html),
2. использование теоркатегорных солверов (вернее, это будут "системные солверы" -- всё-таки мы говорим о специализации теории категорий для выражения системного подхода, и солвер должен быть именно системный, а не общематематический-теоркатегорный).
Если считать, что формальная семантика SysMoLan будет дана как раз на языке теории категорий (то есть technical space в терминологии группы AtlanMod или foundational ontology в терминах сообщества computational ontology), то сначала SysMoLan будет языком моделирования, а потом языком имитационного моделирования (т.е. его модели можно будет запускать на исполнение) -- и не забываем, что языки программирования и имитационного моделирования практически неразличимы. Напомню, что первый объектный язык программирования был Simula 67, и название его указывает на область приложения: имитационное моделирование (simulations).
Реально ситуация ещё интересней: теория категорий может претендовать на роль technical space-штрих (плюс, foundational space, выдумайте термин сами): если в мегамодели участвуют модели, выраженные в различных technical space, то теория категорий поможет это описать. Это "математика для выражения других математик". Вполне возможно, что теория категорий позволит как-то внятно описывать гибридные вычисления -- когда часть вычисления "численная/дифурами", а часть "дискретная/логическая", и мультивычисления (как в IBM Watson -- над одной базой знаний до сотни методов обработки плюс сложные системы консолидации результатов этих обработок).
То, что в теории категорий основное это морфизмы -- это очень удачно, ибо "объекты определяются операциями над ними", "деятельностный подход -- это наше всё, объекты определяются так, как это удобно для деятельностей", "в MBSE модели формальны, поэтому трансформации моделей могут быть сделаны компьютером, а не человеком".
Итого: этот псто считать программным, начинаем дрейфовать мыслью в намеченном направлении.
Теоркатегорщикам, интересующимся и математической стороной вопроса также рекомендую почитать эпиграф-дисклеймер
http://asylums.insanejournal.com/atlas_farted/1741.html, комментарий
http://sober-space.livejournal.com/84264.html и нырнуть в математические глубины докторской Сергея Ковалёва
http://www.ccas.ru/avtorefe/0001d.pdf