Комментарии 42
Объект это граница, разделяющая внутренние свойства от внешних. Минимальный объект не содержит внутренних свойств, и все свойства, включая идентичность, у него внешние.Кстати, изучение отличия внутреннего от внешнего может полностью загрузить все лабы института, без угрозы замены скриптиком. Эвристическая машина подтвердит.
не позволяют оператору переделывать софтА оператор обладает нужной квалификацией, чтобы переделывать софт? Я это к чему — большинство пользователей хочет кнопку «сделать зашибись» и нихрена не разбираться в решаемой проблеме.
И второй вопрос: А вы программы писали?
Чтобы программная система могла задавать вопросы, внутри этой системы должна быть довольно детальная модель предметной области — без этого вопросам взяться просто неоткуда.
Никто не будет целиком объяснять компьютеру, что он хочет сделать/получить (это долго и такое описание в виде текстовых требований потом хрен прочитаешь и переделаешь), поэтому человек будет использовать те абстракции ЯП и библиотек, которые понимает сам. А у компьютера в свою очередь не хватит мозгов, чтобы декларации понимать и додумывать правильным образом (нерешённая сейчас проблема искусственного интеллекта, скорее всего, будет постепенно решена при повышении мощности и сложности интеллектуальной системы, ближе всего к этому нейросети, почитайте про GLUE benchmark и Winograd Challenge, скажем).
«На (место? пропущена запятая, как в „на, получи!“?) косе (инструмент, часть берега) стоит (стоимость? стоять? ценность?) косой (пьяный, инвалид, заяц).» «Реализуй быструю (чтобы быстро работала? или такой алгоритм?) сортировку миллиона чисел (целых, вещественных, любых, находящихся в памяти? на диске? на бумажке?)» «Дай мне (лишь тебе? любому пользователю? тому, кто подтвердил свою личность? каким способом?) ввести (веб интерфейс? нативный? под какие платформы?) адрес (нужно ли номер дома? почтовый индекс? любую строчку? доверять ли людям вводить туда невалидные адреса? какой ширины поле? а какого цвета? на каком языке сообщения об ошибках и какие именно?)». Когда все неоднозначности таким образом опишешь — ровно обычную программу и получишь, только потратишь больше сил. А учитывая то, что у тебя вместо архитектуры теперь 1000 страниц текста… удачной доделки или рефакторинга при малейшем изменении требований!
Да, для точного указания нужно всё указывать точно, а это значит, отделить от того, что верно сейчас от того, что верно при изменениях, это множество метаинформации, которая для текущего момента не обязательна. Но различие константы и её значения как раз в том и состоит, что можно поменять значение, но не переписывать имя константы по всей программе. И значит, вкладывание метаинфмации это часть программирования, вопрос в объемах и возможности заложить ещё больше.
Как вам программа «сделай как вчера, только один момент измени, и запомни как спецшаблон».
И попробуйте там попрограммировать на вашем языке (в данном случае, на основе JS).
А потом уже порефлексируйте над обнаруженными проблемами своего подхода.
Тогда ваши тексты станут намного ценнее.
>Как вам программа «сделай как вчера, только один момент измени, и запомни как спецшаблон».
В макросах вполне себе практикуется. На более крупные проекты, понятное дело, в таком виде не идёт.
Попробуйте в вашем стиле вопросов и ответов решить (записать) задачу «Приготовить суп».
При этом, ответы должны включать, например, «одна луковица это сколько в граммах», «какие из продуктов есть в холодильнике, а какие нужно заказать в магазине» и т.д.
Другой пример. Решение несложной и типичной для бизнеса задачи «сформировать отчет о зарплате» будет занимать не меньше пары сотен страниц вопросов и ответов. А теперь представьте: вы уволились, и пришедшему на ваше место сотруднику нужно переделать вашу «программу» в соответствии с чуть изменившимся законодательством, сможет он разобраться в неструктурированной каше из 200 страниц текста?
Скоро окажется, что он опять был не совсем прав, в связи с развитием моделей языка и моделей знаний личности, но до тех пор…
Но, в общем, с достаточной глубиной и формальностью проблем нет.
Вот, этим аж 25 лет занимались, см. «Symbolic» на картинке ниже.
Просто с текущим уровнем развития ИИ, которые должны «осмысливать» ваш разговор, каждый ваш ответ порождает в среднем два-три новых вопроса…
Software 2.0 — это когда программист готовит data train и выбирает модель машинного обучения, которая генерирует логику потоков данных.
Вы (пмсм) вполне себе заявились на Software 3.0, но так и не рассказали, в чем его суть… ((
Таки без нейросетей даже проблема разбора естественных языков не решена от слова совсем (и будем честны с нейросетями тоже не то чтобы решена, но худо-бедно что-то получается). Ну и 100% детерминированный разбор естественного языка это нонсенс — поэтому, собственно, у нас (математиков, программистов) формальные языки больше в ходу. Так что на первом же шаге у Вас затык фундаментального свойства.
100% детерминированный разбор — нонсенс, потому что в диалоге каждый новый нетривиальный ответ будет нести новую неоднозначность. Как следствие, за исключением тривиальных случаев, на 100% детерминированный разбор уйдёт в пределе бесконечное время.
Вы знаете, как-то совпало, что на соседнем окне у меня открыта книга Минский М — Вычисления и автоматы (Finite and Infinite Machines by Marvin Minsky).
И мне больно видеть вашу терминологию. Дело не в используемых словах, а в том, как неточно вы используете эти слова. Ещё вы пропускаете возможные варианты на поставленные вопросы и используете ошибочно узкий набор ответов предыдущего пункта как обоснование обязательности выбора ответа из неполного списка вариантов в следующем.
Не тянет это на философию, не тянет.
При каждом шаге погружения для определения числа есть две возможности: пойти в меньшую сторону, или в большую. Если реализовывать только ту возможность, которая граничит с бесконечностью, то мы отдельно получим натуральные числа. Процесс вычисления будет немного обращён. Сначала процесс счёта добирается до некоторого числа, а потом оказывается, что счёт до него может быть поделён на этапы, и полученное число это сумма чисел соответствующих этапам.
Для вычисления координат при погружении не обязательно учитывать обе границы, достаточно учесть координаты предыдущей позиции. И каждый шаг будет либо повторением предыдущего шага, как добавление такого же смещения, либо прыжком с разворотом, в котором текущие и прошлые координаты суммируются. Последовательность из одних прыжков ведёт к золотому сечению.
Вот реализовали мы возможность, которая граничит с бесконечностью… Бедные ординалы, вздохнули и пошли к золотому сечению.
А ещё надо обратить процесс вычисления. Есть обратимые вычисления и необратимые, причём необратимые они последствия, а последствия бывают только у событий. //и дальше в том же духе.
Вот, например, вы написали «реализовывать только ту возможность, которая граничит с бесконечностью». Что значит «граничит с бесконечностью»? Больше ординала или меньше? Что такое «реализовать возможность»?
Я не понимаю, как можно при такой неаккуратности писать про вычислительные машины и/или процессы (спасибо отцам-основателям, мы знаем, что они эквивалентны с точки зрения эффективного процесса и могут описать друг друга).
Ищете сложное в элементарном и не находите.
Дальше, я не понимаю, что значит «погружаться». В бытовом смысле — это нырять в воду. Телесной тушкой. Мне трудно представить себе операцию, которая совмещает вместе «оставляет бесконечность» и при этом допускает погружение в неё чего-либо.
Когда вы говорите «элементарная модель» — о какой модели вы говорите? Цермело-Фрнкеля? Если же вы используете что-то кроме ZFC, то ожидать от читателя понимания этой модели без разъяснения о какой модели идёт речь, ну, это, мягко говоря, некорректно.
«Погружаться» это будет если расставить числа в системе координат представленной на пятом изображении. Тогда новые объекты будут ниже. Если направить обе координаты вниз, конечно.
Понимаете, границы — нечетки. Ну и далее, надо читать нечеткую алгебру и думать в ее направлении.
Когда начнете сильно хорошо в ней разбираться, придете к концепту нейронок… И все замкнется.
Искусственная соображалка без фатальных недостатков без нейросетей разработать