Size: a a a

Типы в языках программирования, моделирования, представления знаний и жизни

2019 August 24

AT

Alexander Tchitchigin in Типы в языках программирования, моделирования, представления знаний и жизни
Maxim
Да, то, что вы назвали «нужной аксиоматической теорией» — здесь это определено как «анализ антропологической разницы существования различных групп естественных языков». Именно выполнение этого анализа подтверждает или не подтверждает мной предположенное логическое следствие. Но ведь есть еще логика появления в языках программирования самого формализованного контента, который основан именно на естественных языках. Т.е. именно из естественных языков рождается то, что является предметом обсуждения в этой группе, как проблемы. ...
Так я не спорю с существованием различных групп языков. И с тем, что они действительно существенно различны тоже не спорю. И с тем, что формализация происходит на естественном языке - полностью согласен.
А вот то, что этот процесс формализации существенно отличается, если происходит на языках из разных групп - неочевидно. Тут нужны какие-то метрики и исследования, которые выявили бы эту разницу и в чём именно она заключается.
источник

M

Maxim in Типы в языках программирования, моделирования, представления знаний и жизни
Alexander Tchitchigin
Так я не спорю с существованием различных групп языков. И с тем, что они действительно существенно различны тоже не спорю. И с тем, что формализация происходит на естественном языке - полностью согласен.
А вот то, что этот процесс формализации существенно отличается, если происходит на языках из разных групп - неочевидно. Тут нужны какие-то метрики и исследования, которые выявили бы эту разницу и в чём именно она заключается.
Да.
источник

E

Eugene in Типы в языках программирования, моделирования, представления знаний и жизни
источник

ХТ

Христофор 🇺🇦 Тюлькин in Типы в языках программирования, моделирования, представления знаний и жизни
кстати, тут несколько раз поминали надежды на "линейщину", под которой понимается "жираровщина" https://www.sciencedirect.com/science/article/pii/0304397587900454
источник

NI

Nick Ivanych in Типы в языках программирования, моделирования, представления знаний и жизни
От Жирара многое пошло, но не всё можно так называть.
источник

ХТ

Христофор 🇺🇦 Тюлькин in Типы в языках программирования, моделирования, представления знаний и жизни
переформулирую - область исследований, порожденная той прорывной работой неортодоксального логика Жирара
источник

NI

Nick Ivanych in Типы в языках программирования, моделирования, представления знаний и жизни
Христофор 🇺🇦 Тюлькин
переформулирую - область исследований, порожденная той прорывной работой неортодоксального логика Жирара
Нууу, это слишком широко. Многое можно посчитать порождённым.
Скажем, так и вообще всё с сетями взаимодействия можно...
источник

ХТ

Христофор 🇺🇦 Тюлькин in Типы в языках программирования, моделирования, представления знаний и жизни
тогда уточните Вы, как оно точнее ))
источник

NI

Nick Ivanych in Типы в языках программирования, моделирования, представления знаний и жизни
Христофор 🇺🇦 Тюлькин
тогда уточните Вы, как оно точнее ))
Как-то по-другому называть те вещи, в которых он не участвовал.
Например, дифференциальщина ;-)
источник

ХТ

Христофор 🇺🇦 Тюлькин in Типы в языках программирования, моделирования, представления знаний и жизни
Nick Ivanych
Как-то по-другому называть те вещи, в которых он не участвовал.
Например, дифференциальщина ;-)
большинство людей под дифференциальщиной будут подразумевать нечто иное...
источник

NI

Nick Ivanych in Типы в языках программирования, моделирования, представления знаний и жизни
В линейно-логиках, из важного, он изобрёл поляризацию-фокусинг, ну и сети доказательств.
А конкретные примеры, на мой взгляд, были несколько неудачными (например, в чистом виде GoI мне совершенно не нравится).
источник

NI

Nick Ivanych in Типы в языках программирования, моделирования, представления знаний и жизни
Христофор 🇺🇦 Тюлькин
большинство людей под дифференциальщиной будут подразумевать нечто иное...
Потому, я и пишу что-то типаа линейщина-дифференциальщина ;-)
источник

NI

Nick Ivanych in Типы в языках программирования, моделирования, представления знаний и жизни
Да хрен знает, как лучше обзывать...
источник
2019 August 25

M

Maxim in Типы в языках программирования, моделирования, представления знаний и жизни
Anatoly Levenchuk
А поскольку тут было много интересующихся тем, как логические триплы (knowledge graphs, они же онтологии чаще всего выражаемые в FOL) укладываются в нейронные сетки, теряя свою трипловую форму, так вот типичная работа про SoTA в этой области: https://arxiv.org/abs/1908.07141
Сначала на естественных языках осуществляется формализация контента для языков программирования, затем уже из осуществлённого образуются «логические триплы», и укладываются в персептроны (нейронные сетки), — и при этом теряется трипловая форма. Т.е. сначала становится неочевидной логика каждого из трех слагаемых одного логического трипла, а потом сама логика трипла становится неочевидной, путем своего представления уже без основания на сущности логического трипла. Другими словами, сначала забыли о логике слагаемых трипла, а потом забыли о том что забыли.
А самое грустное во всем этом методе «логических триплов» то, что формализация контента на естественных языках для слагаемых логических триплов (для формальных языков программирования), вообще осуществляется без учета существенного различия языков, различных групп естественных языков.
Логика причин (но не факта) различия групп языков — цель научно-исследовательской аналитической деятельности, достижение которой необходимо для решения проблем, сформулированных в целеполаганиях этой группы здесь (в телеге).
источник

IK

Igor Katrichek in Типы в языках программирования, моделирования, представления знаний и жизни
Maxim, триплы не всегда "логические", в смысле формальной математической логики. Gellish - яркий тому пример, когда триплы есть, но это просто ограниченное подмножество естественного языка (Formal English - см. https://www.gellish.net/ ).
источник

M

Maxim in Типы в языках программирования, моделирования, представления знаний и жизни
Igor Katrichek
Maxim, триплы не всегда "логические", в смысле формальной математической логики. Gellish - яркий тому пример, когда триплы есть, но это просто ограниченное подмножество естественного языка (Formal English - см. https://www.gellish.net/ ).
Да, но суть мной описанной проблемы, и пути ее решения — те же, что и с логическими. Речь ведь о сущности слагаемых для триплов, а не о видах полученных триплов. Логические взяты как пример из линка.
источник

IK

Igor Katrichek in Типы в языках программирования, моделирования, представления знаний и жизни
Konstantin Surkov
А можно пример какой-нибудь, когда мир не лезет в реляционку? Когда что-то существенное не удаётся смоделировать реляционно?
Да те же самые ножницы. Сначала про in-the-small. Например, сломалась ручка ножниц. Берём отпиливаем (одну) ручку от других ножниц, и привариваем к этим. Даже если в БД заведены таблицы как для самих ножниц, так и для их половинок и винтиков, и даже для функциональных блоков "ручки" и "ножи", то такие нестандартные ситуации непонятно как учитывать. А когда in-the-large, то всё ещё хуже, когда ножницы есть в БД проектного института, БД завода-изготовителя, БД транспортной компании, БД склада, БД швейной фабрики, БД ремонтной матерской, БД бухгалтера на подряде, и т.д. И первичные ключи вроде одних и тех же ножниц не соотносятся между собой один-к-одному. Интеграционные сценарии спасают положение, но не универсально, а только для ножниц именно в этом "бизнес-процессе".
источник

AL

Anatoly Levenchuk in Типы в языках программирования, моделирования, представления знаний и жизни
Да, ваши последние записи я в LJ видел.  Кстати,  о птичках,  т.е близкой мне системе SAP.

Действительно,  гонять данные между БД и структурами данных в языке програмиирования - это боль,  но эта боль в других системах по опыту еще больше.

Дело в том,  что в SAP нельзя просто так напрямую создать табличку с полями.  Нужно пойти в словарь данных, для полей таблички сослаться на элементы данных,  в элементах данных описать из назначение и сослаться на домены,  в доменах опять описать назначение и сослаться на один из базовых типов.  Если сослался на элемент данных с количественным типом в домене - будь добр укажи поле с единицей измерения,  аналогично для стоимостных полей нужно указать валюту.  И все это трассируется по where used,  т.е можно посмотреть в каких табличках фигурирует вот этот элемент данных "номер заказа на продажу".  

Итого,  еще лет 40  назад архитекторы системы заставили всех последующих разработчиков сохранять в нее не только данные,  но и какую-никакую онтику прикладной области.  

Вот и интересно,  появилось ли за прошедшие десятилетия что-то получше именно прикладном плане,  а не в виде перспективных исследований?
источник

IK

Igor Katrichek in Типы в языках программирования, моделирования, представления знаний и жизни
Anatoly Levenchuk
Мой вопрос как раз в этом. Эти диаграммы впрямую применяют модельеры данных для систем PLM (product life cycle management) или ERP. Они делают по ним концептуальную модель данных, которую потом приземляют на физическую модель данных конкретной СУБД. А программист, по идее, должен будет приземлить эту концептуальную модель на физическую модель данных своего языка программирования (то есть на систему типов). Но вот как это сделать мы сейчас и выясняем. Об этом, похоже, любили рассуждать объект-ориентированные программисты, и ещё опытом поделились люди из F# тусовки. Остальные работают ad hoc (при этом, конечно, и диаграмм не применяют — ход на поиск физических объектов ими не понимается как теоретический, а просто как эвристика: "покажи пару примеров, чтобы я понял").
Производственная практика показывает, что программист приземляет на систему типов своего языка программирования не концептуальную модель БД, а физическую.  Вчера был вопрос "насколько часто типы вообще используются для описания домена" - вот оно здесь. Какие физические таблицы и поля завели в БД, такие типы в программе обычно и заводятся (ORM для незнающих SQL). То есть, тип данных pump в программе обычно появляется только если в БД есть таблица с насосами, и программисту неважно какие насосы - складские, установленные на станции, разбираемые, или другие, так как он делает типы "для вычислений".
источник

AN

Alexey Neznanov in Типы в языках программирования, моделирования, представления знаний и жизни
Anatoly Levenchuk
Да, ваши последние записи я в LJ видел.  Кстати,  о птичках,  т.е близкой мне системе SAP.

Действительно,  гонять данные между БД и структурами данных в языке програмиирования - это боль,  но эта боль в других системах по опыту еще больше.

Дело в том,  что в SAP нельзя просто так напрямую создать табличку с полями.  Нужно пойти в словарь данных, для полей таблички сослаться на элементы данных,  в элементах данных описать из назначение и сослаться на домены,  в доменах опять описать назначение и сослаться на один из базовых типов.  Если сослался на элемент данных с количественным типом в домене - будь добр укажи поле с единицей измерения,  аналогично для стоимостных полей нужно указать валюту.  И все это трассируется по where used,  т.е можно посмотреть в каких табличках фигурирует вот этот элемент данных "номер заказа на продажу".  

Итого,  еще лет 40  назад архитекторы системы заставили всех последующих разработчиков сохранять в нее не только данные,  но и какую-никакую онтику прикладной области.  

Вот и интересно,  появилось ли за прошедшие десятилетия что-то получше именно прикладном плане,  а не в виде перспективных исследований?
источник