Программы как динамические системы 117741 В конец треда | Веб
Изучал автоматическую теорию управления в универе. Это потрясающе.

Описываем модель. Накладываем желаемые ограничения, подмножество желаемых состояний. Играемся с уравнениями, применяем разные теоремы чтобы получить функцию управления системой.

Я заметил, что программы по-сути тоже динамические системы. Также как и в классических динамических системах там есть состояние, есть время, есть ввод и вывод.

Просто они существуют не в векторном пространстве вещественных числе R^n, а в векторном пространстве нулей и единиц: https://en.wikipedia.org/wiki/Vector_logic

Хочу описывать программы как уравнения, исследовать их сходимость к определённому подмножеству состояний.

Как ни искал, чёт не могу найти чтобы кто-то это уже делал, хотя идея вроде бы лежит на поверхности.

Кто-нибудь занимался чем-то похожим? Накидайте ссылок или ключевых слов по которым можно что-то похожее найти
2 117747
>>7741 (OP)
Тебе нужно копать примерно в сторону реконструкции фазового состояния, state space reconstruction.
Возможно, для рандомной программы подобное вообще бессмысленно, так как не то, что сколько-нибудь устойчивого аттрактора, но и какого-нибудь репеллента не получится. Но если нечем заняться, попробуй, готового софта для этого не то чтобы очень много, но он есть. tisean какой-нибудь итп.
sage 3 117748
это не математика
4 117749
>>7747

>Возможно, для рандомной программы подобное вообще бессмысленно


Не, для рандомной программы даже не буду пытаться.

Вообще план такой:

1) Научиться писать программы с помощью преобразований над state space vector.

2) Написать парочку известных программ и алгоритмов, поисследовать их state space. Поискать аттракторы. Первая на очереди у меня Philosophers Dining Problem и различные решения для неё. А потом хочу так же реализовать Raft Consensus Algorithm.

3) Сделать простенький язык программирования, который в основании полагался на это представления программ.

Брать программы на существующих языках, и пытаться исследовать их state space -- это полный пиздец. Врядли чем-то кончится.
5 117751
>>7748

>это не математика


ТЫ ОХУЕЛ? С каких это пор теория управления это не математика
sage 6 117752
>>7751
всегда так было
images (2).jpeg11 Кб, 207x244
7 117753
>>7749
Есть такая тема, "Minsky machine"
https://en.m.wikipedia.org/wiki/Counter_machine
По-сути, это небольшие наборы ассемблерных инструкций, с помощью любого из которых возможно представить любую программу на ассемблере (кроме обращений к памяти итд, но нужные для этого инструкции можно добавить):

> set 1: { INC (r), DEC (r), JZ (r, z) }, (Minsky (1961, 1967), Lambek (1961))


> set 2: { CLR (r), INC (r), JE (rj, rk, z) }, (Ershov (1958), Peter (1958) as interpreted by Shepherdson–Sturgis (1964); Minsky (1967); Schönhage (1980))


> set 3: { INC (r), CPY (rj, rk), JE (rj, rk, z) }, (Elgot–Robinson (1964), Minsky (1967))


Имея state space представление для таких наборов (например, INC, DEC, JNZ, MOV + SETF, CLRF не обязательно), можно уже строить программу с использованием только их state space. Всё это чисто в теории, конечно.
sage 8 117754
>>7753
не математика
съебывайте в /pr/
16937118393800.mp4386 Кб, mp4,
764x720, 0:03
9 117755
>>7754

> не математика


> съебывайте в /pr/


>>7748

> это не математика

sage 10 117756
>>7755
ебанул тебе дихлофосом за щеку проверяй
11 117757
>>7741 (OP)

>Хочу описывать программы как уравнения


Как ты себе это представляешь?
12 117758
>>7757

>Как ты себе это представляешь?


x0 -- векторное представление начального состояния программы
P -- матрица представляющая программу

x_n = P^n * x0

x_n -- состояние программы на n-ном шаге.

В идеале будет сходиться к какому-то состоянию, либо гонять по циклу каких-то состояний.
13 117762
Каскад цепей Маркова с генерацией матрицы переходов на каждой итерации? Задача поставлена слишком по математический (абстрактно). Возьми конкретный алгоритм и проведи скоринг нескольких моделей.
мимо погромист крашу кнопки за 300к
14 117763
>>7758
Ты какой то определенный алгоритм можешь так представить (какую нибудь числодробилку), как наносек выше написал, программа это слишком общее.
sage 15 117764
>>7762

>алгоритм


не математика
16 117765
>>7764
сьебни на хуй, пожалуйста
sage 17 117767
>>7765
съеби в /pr/
18 118500
>>7762
300 нынче - это как 100 в году 19м.
19 118501
>>7765
Поддерживаю
20 118506
>>8501
это значит, что ты пидор
Обновить тред
« /math/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски

Скачать тред только с превьюс превью и прикрепленными файлами

Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах.Подробнее