как понять в чём суть "механизма", что такое "механизм" в этом случае?
При чём тут вообще механизм (Механизм представляет собою замкнутую последовательность сочленённых звеньев, где как минимум одно из них (ведущее) служит для приложения работы, и как минимум одно (ведомое) — для получения полезной работы)?
Где прочитать, что про это думают математики?
Что с ходу приходит в голову, это вузовский курс "теория функций комплексного переменного",
только это нечто такое сложное, что "проходят мимо" в ВУЗе и забывают за ненадобностью.
Мне непонятно, как эта "изученность" позволят доказывать корректность программ.
Ничего общего. И да, доказательство корректности программ по прежнему не поддаётся моему пониманию, периодически возвращаюсь к этой теме.
Здравствуйте, Эйнсток Файр, Вы писали:
ЭФ>Что вообще хотели сказать этой фразой?
А зачем ты притащил сюда эту безграмотную фразу?
Если бы указал источник, было бы понятно, что поглумиться над сказавшим.
ЭФ>Мне непонятно, как эта "изученность" позволят доказывать корректность программ. ЭФ>Ничего общего. И да, доказательство корректности программ по прежнему не поддаётся моему пониманию, периодически возвращаюсь к этой теме.
Function theory may refer to:
1) Theory of functions of a real variable, the traditional name of real analysis, a branch of mathematical analysis dealing with the real numbers and real-valued functions of a real variable
2) Theory of functions of a complex variable, the historical name for complex analysis, the branch of mathematical analysis that investigates functions of complex numbers
3) Constructive function theory, the study of the connection between the smoothness of a function and its degree of approximation
4) Geometric function theory, the study of geometric properties of analytic functions
Ничего из этого не имеет отношения к тому, что нужно.
А нужно мне вот это:
«те, кто углублялся в дебри оснований математики (в частности, теории множеств),
считают функцию основным понятием теории множеств и определяют ее как отображение из множества в множество.
Отображение при этом может быть задано из класса в класс, что является обощением функции.»
Здравствуйте, Эйнсток Файр, Вы писали:
ЭФ>Этот раздел как называется?
Это называется теорией множеств. Только нет там никакого универсального ответа о "механизме функций".
Просто кому-то приспичило попытаться формализовать все сущее, и получилось весьма коряво на мой взгляд.
Хотя теория множеств вполне используется в качестве основы для формализации математики.
То же самое более простыми словами:
Вот допустим функция на входе берет int32_t и выдает результат bool.
Можно сказать, что функция является отображением множества в 2^32 элементов в множество из двух элементов.
ЭФ>>Ничего из этого не имеет отношения к тому, что нужно. lpd>
Это не смешно.
Зачем мне такая "теория функций многих переменных", в которой нет ничего полезного кроме понятия "аргумент функции".
Зачем мне "частные производные", "градиент функции" и "дифференциал"? Ну и с многомерными интегралами то же самое, с формулами Грина и Стокса.
Re[4]: «Механизм функций основательно изучен математиками»
Ну хорошо, что же математики там наизучали про функцию?
Перечисли, пожалуйста, основные понятия и достигнутые математиками результаты.
«Математики изучают свойства композиции функций, то есть способа (одного единственного!) создания новой функции, объединяя две или более других функций»
— асоциативность
— некоммутативность
— идентичность
— обратимость
(ну и что? Что на практике из этого можно сделать/извлечь для доказательства корректности, а не для оптимизации кода)
«Математики изучают (зачем это надо программистам-не-криптографам?) условия, при которых функция имеет обратную функцию, а так же способы нахождения обратной функции»
Допустим, что всё это выливается в компиляторе в систему статической проверки типов при компиляции.
Но это же не обеспечивает гарантирует корректности программ! Да, наверное становится лучше, чем было,
но гарантирует мало что. Как ошибки в программах были, так и остаются.
«Связь функционального программирования с математическими основами позволяет в тексте программы наследовать доказательность построения результата»
(цитата оттуда же)
КАК!!! как, блин, она позволяет это делать?
«Трудоемкость отладки композиций из хорошо определенных функций растет аддитивно, а не мультипликативно.»
А из плохо определённых? Хорошесть и плохость — это математическое свойство или математики такого не описывали?
Не надо тут. Это официальный учебный материал, освещённый одобрением министерства образования.
А автор у него Городняя Лидия Васильевна, ученица самого Ершова Андрея Петровича, который был у неё руководителем дипломного проекта.
Здравствуйте, Эйнсток Файр, Вы писали:
ЭФ>Ты хочешь сказать, обучение в ведущем ВУЗе великой Российской Федерации никуда не годится?
Не надо мои аллегории переводить в политические лозунги. Ты и на фразу о поиске черной кошки в темной комнате начнешь рассуждать про приборы ночного видения.
Re[5]: «Механизм функций основательно изучен математиками»
G> Не надо мои аллегории переводить в политические лозунги.
Ты первый начал, проведя некорректное обобщение. Ты качества текста перенёс на качества автора.
G> Ты и на фразу о поиске черной кошки в темной комнате начнешь рассуждать про приборы ночного видения.
Если ты себе такое позволяешь, то почему мне нельзя?
Re[6]: «Механизм функций основательно изучен математиками»
Здравствуйте, Эйнсток Файр, Вы писали:
ЭФ>Ты первый начал, проведя некорректное обобщение. Ты качества текста перенёс на качества автора.
Я делал упор на качества читателя, который слишком упорен в поиске смысла в тексте, которого там может и не быть.
ЭФ>Если ты себе такое позволяешь, то почему мне нельзя?
Недостаточно тонко, на мой взгляд
Re: «Механизм функций основательно изучен математиками»
Здравствуйте, Эйнсток Файр, Вы писали:
ЭФ>Что вообще хотели сказать этой фразой?
ЭФ>не "изучен", а "продуман"?
Обдуман, скорее. Математики — они такие. У них сначала появляются зависимости, потом — функциональные зависимости, а потом уже единица и натуральный счёт. По одной из теорий так. Но фразы, конечно, из контекста вырывать всё равно не стоит.
Re[2]: «Механизм функций основательно изучен математиками»
Здравствуйте, Эйнсток Файр, Вы писали:
ЭФ>«Связь функционального программирования с математическими основами позволяет в тексте программы наследовать доказательность построения результата» ЭФ>(цитата оттуда же)
Это явно про отсутствие сайд-эффектов. Отладил все функции — считай, отладил программу.
A> Это явно про отсутствие сайд-эффектов. Отладил все функции — считай, отладил программу.
Видите ли, это мне рассказывали ещё когда паскалю учили. Что подпрограммам нежелательно менять глобальные переменные.
Я понимаю, что Лисп был раньше, что оттуда эта концепция перешла много куда.
Но это всё равно как говорить "переобувайте обувь на входе в квартиру". В России большинство и так это делает.
Конечно, в мировом масштабе это не так (американцы, французы и т.п.), но нам-то зачем впаривать функциональное программирование
под видом манны небесной?
Re[4]: «Механизм функций основательно изучен математиками»
Здравствуйте, Эйнсток Файр, Вы писали:
A>> Это явно про отсутствие сайд-эффектов. Отладил все функции — считай, отладил программу.
ЭФ>Видите ли, это мне рассказывали ещё когда паскалю учили. Что подпрограммам нежелательно менять глобальные переменные. ЭФ>Я понимаю, что Лисп был раньше, что оттуда эта концепция перешла много куда.
ЭФ>Но это всё равно как говорить "переобувайте обувь на входе в квартиру". В России большинство и так это делает. ЭФ>Конечно, в мировом масштабе это не так (американцы, французы и т.п.), но нам-то зачем впаривать функциональное программирование ЭФ>под видом манны небесной?
Во-первых. В математике нет таких слов, как "нежелательно". Там всё строго. Нет сайд-эффектов — будет... как её там назвали... "доказательность". В рамках чистых функций.
Во-вторых. Тебе пожаловаться, или смысл понять? Если смысл понять, то даже без контекста разумно предположить, что "доказательность" это про чистоту функций, хотя контекст бы в любом случае не помешал. А если пожаловаться, то хоть расскажи, на кого батон крошишь.
Re: «Механизм функций основательно изучен математиками»
ЭФ>Что с ходу приходит в голову, это вузовский курс "теория функций комплексного переменного", ЭФ>только это нечто такое сложное, что "проходят мимо" в ВУЗе и забывают за ненадобностью.
Скорее уж тут следует читать курс под названием "функциональный анализ" или что-нибудь подобное. Про всякие обобщенные функции и иже с ними. Это как-то больше похоже на сабжевое название (если учесть, что само сабжевое название звучит странно).
Re: «Механизм функций основательно изучен математиками»
Доказательность не только не заканчивается функциями, но даже более того — она с них и не начинается.
Просто некоторые ограниченные бестолочи, которые кроме функций ничего не знают и знать не хотят, привнесли когда-то в университетские круги эту сомнительную моду.
У практикующих бойцов данного фронта в ходу преимущественно две аббревиатуры: SAT и SMT, ну и конечно практическое воплощение сольвера — z3 (https://github.com/Z3Prover/z3).
PS. Насколько я, дилетант в данном деле, понимаю, начинать путь следует не с функанов-теоркатов, и тем более не с ТФКП, a с предикативного исчисления, карт Карно, синтеза микропрограммных автоматов и т.д. Могу, конечно, и ошибаться.
PPS. Про то, что ТФКП зачем-то проходят (мимо) в ВУЗах, а потом забывают за ненадобностью — это Вы зря. Оно полезно в цифровой обработке сигналов и в радиосвязи.
PPPS. Обратите также внимание, что z3 solver написан не на каком-нибудь Лиспе или Хаскелле, а вполне себе на прагматичном C++.