Математика vs computer science
От: Khimik  
Дата: 04.12.16 08:58
Оценка:
Здесь уже была похожая тема, я хочу сформулировать предмет немного по-другому.
Когда программист разрабатывает что-то сложное, часто перед ним возникают задачи как из области математики, так и из “computer science”. Возникает вопрос, насколько размыта грань между этими двумя науками? Мне кажется, она весьма размыта, и можно найти много промежуточных примеров, находящихся в каком-то месте шкалы “от математики к программированию”. Вот примеры трёх задач (приёмы оптимизации), которые, как я понимаю, находятся в этой границе и от первого примера к третьему идёт плавный переход от математики к программизму:

— при перемножении матриц, заменить часть умножений сложениями;
— при делении множества чисел на константу, заменить его умножением этих чисел на число, обратное этой константе;
— размножить тело цикла, чтобы на одну итерацию приходилось в среднем меньше операторов условных переходов.

Какие ещё можно придумать примеры?
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re: Математика vs computer science
От: vsb Казахстан  
Дата: 04.12.16 09:06
Оценка: +2
Здравствуйте, Khimik, Вы писали:

K>Здесь уже была похожая тема, я хочу сформулировать предмет немного по-другому.

K>Когда программист разрабатывает что-то сложное, часто перед ним возникают задачи как из области математики, так и из “computer science”. Возникает вопрос, насколько размыта грань между этими двумя науками?

Computer Science это подраздел математики. Поэтому вопрос неуместен.

K>- при перемножении матриц, заменить часть умножений сложениями;

K>- при делении множества чисел на константу, заменить его умножением этих чисел на число, обратное этой константе;
K>- размножить тело цикла, чтобы на одну итерацию приходилось в среднем меньше операторов условных переходов.

И что же в этом не математического?
Re: Математика vs computer science
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 04.12.16 13:24
Оценка:
Здравствуйте, Khimik, Вы писали:

K>Здесь уже была похожая тема, я хочу сформулировать предмет немного по-другому.

K>Когда программист разрабатывает что-то сложное, часто перед ним возникают задачи как из области математики, так и из “computer science”. Возникает вопрос, насколько размыта грань между этими двумя науками? Мне кажется, она весьма размыта, и можно найти много промежуточных примеров, находящихся в каком-то месте шкалы “от математики к программированию”.

computer science на самом деле никакой не sciense и не программирование — это разные разделы математики. Само программирование это еще один раздел математики.

Разница только в том, какие модели ты используешь в своей программе — чисто математические модели, скажем, синус-косинус, или модели соответствующие объектам реального мира. Если первое, то это сильно редко, матеатика ради математики. Если второе, то здесь будет подтягиваться соответствующая наука — физика, биология, или иная область деятельности, например инвентаризация, верстка, страхование и тд.
Re[2]: Математика vs computer science
От: pagid Россия  
Дата: 04.12.16 16:29
Оценка: +5 -1
Здравствуйте, Ikemefula, Вы писали:

I>computer science на самом деле никакой не sciense и не программирование — это разные разделы математики. Само программирование это еще один раздел математики.

Программирование — не математика. Одна из разновидностей инженерного ремесла.
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re[3]: Математика vs computer science
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 04.12.16 17:22
Оценка:
Здравствуйте, pagid, Вы писали:

I>>computer science на самом деле никакой не sciense и не программирование — это разные разделы математики. Само программирование это еще один раздел математики.

P>Программирование — не математика. Одна из разновидностей инженерного ремесла.

Оно примеяется в инженерии и состоит чуть более чем полностью, из математики.
Re[4]: Математика vs computer science
От: pagid Россия  
Дата: 04.12.16 17:27
Оценка: +3 -1
Здравствуйте, Ikemefula, Вы писали:

I>Оно примеяется в инженерии и состоит чуть более чем полностью, из математики.

Это математика применяется в программировании, как и в других инженерных дисциплинах. И программирование из математики не состоит.
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re: Математика vs computer science
От: Sharov Россия  
Дата: 04.12.16 20:51
Оценка:
Здравствуйте, Khimik, Вы писали:

CS явл. частным случаем математики, таким же как и физика. Физика изучает окр. мир, cs -- выч. устройства и их св-ва. Ну и алгоритмы всякие. Ну там совсем грань стирается.
Кодом людям нужно помогать!
Re[2]: Математика vs computer science
От: pagid Россия  
Дата: 05.12.16 03:41
Оценка: +2
Здравствуйте, Sharov, Вы писали:

S>CS явл. частным случаем математики, таким же как и физика.

И физика не частный случай математики. Она математику использует в качестве инструмента.
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re[3]: Математика vs computer science
От: Sharov Россия  
Дата: 05.12.16 09:55
Оценка:
Здравствуйте, pagid, Вы писали:

P>Здравствуйте, Sharov, Вы писали:


S>>CS явл. частным случаем математики, таким же как и физика.

P>И физика не частный случай математики. Она математику использует в качестве инструмента.

Ну физики любят говорить, что математика -- физика с дешевыми экспериментами. Почему же не вывернуть наоборот?
Кодом людям нужно помогать!
Re[3]: Математика vs computer science
От: rising_edge  
Дата: 05.12.16 12:20
Оценка:
Здравствуйте, pagid, Вы писали:

P>Программирование — не математика. Одна из разновидностей инженерного ремесла.


Дедушка Кнут так не думает.
Re: Математика vs computer science
От: Географ Россия нет
Дата: 05.12.16 13:46
Оценка:
Здравствуйте, Khimik, Вы писали:

K>Здесь уже была похожая тема, я хочу сформулировать предмет немного по-другому.

K>Когда программист разрабатывает что-то сложное, часто перед ним возникают задачи как из области математики, так и из “computer science”. Возникает вопрос, насколько размыта грань между этими двумя науками?

ПМСМ, математика — это чистая наука. Вычислительная математика — прикладная наука, призванная придумать и реализовать методы для применения компьютеров в решении математических задач или использования оных в других прикладных или не очень, науках и ремёслах. Методы практически всегда приближённые.

Это эмпирическое мнение, не жёсткое утверждение.
Re: Математика vs computer science
От: Pavel Dvorkin Россия  
Дата: 05.12.16 17:06
Оценка: 58 (2) +3 -1
Здравствуйте, Khimik, Вы писали:

Математика — наука о некоторой абстракции. Реальный мир ей, в общем-то не нужен, она из него вышла (геометрия у древних греков), но давно от него оторвалась.
Что ей, к примеру до того, что физический мир трехмерный (пространство-время я не обсуждаю ) — хочется ей иметь многомерные пространства, имеет право.
Если потом ее выводы как-то соответствуют реальному миру — замечательно, и эти теории могут применяться в тех науках, которые изучают реальный мир.
Если не соответствуют — она вполне обойдется. Может, когда-то в реальном мире и найдется что-то, для чего эта математическая теория сможет быть применена. Например, теория групп, когда ее Галуа и его предшественники создавали, никаким боком к химии не лежала, а потом вдруг выяснилось, что она неплохо подходит для описания симметрии кристаллов.

Резюме : математика — аппарат, некоторые элементы которого могут использоваться в науках о реальном мире. Физике, химии, программировании , строительстве и квадратно-гнездовом выращивании помидоров.
With best regards
Pavel Dvorkin
Re: Математика vs computer science
От: Voblin Россия http://maslyaew.narod.ru/
Дата: 05.12.16 18:53
Оценка: +2
Здравствуйте, Khimik, Вы писали:

K>[...]


Когда-то давно я для себя сформулировал, что если хочешь забыть математику, займись программированием. Это, конечно, шутка, но в ней есть не только доля шутки. По своему опыту могу сказать, что:

1. Геометрия не пригодилась. Целиком вся. Я понимаю, что если бы я занимался 3D-делами, то некоторые разделы геометрии были бы рабочим инструментом. Но так — увы.

2. Алгебра пригождается на уровне примерно 2-го класса средней школы. То есть весь аппарат — это сложить/отнять/умножить/поделить. За всю свою долгую трудовую деятельность в промышленной разработке использовал логарифм 2 (прописью: два) раза.

3. Тервер и статистика при анализе массивов данных пригождаются, но опять же на уровне первых полутора институтских лекций. Помню, как как-то раз в разговоре с коллегами (классные спецы, кстати) ввернул, что здесь бы лучше не среднее арифметическое брать, а медиану. Словил стеклянные взгляды.

4. И только теория множеств вкупе с исчислением предикатов — хлеб и соль, потому что базы данных — это оно и есть. Хотя мои соратники по борьбе умудряются развлекаться датабэйз-дизайном колбасить хитромудрые запросы, совсем не зная слова "предикат".

5. Программить что-нибудь на тему всяких "высоких" разделов типа линейной алгебры, дифференциального, интегрального и операционного исчислений, ТФКП и прочей жути, довелось ровно 0 (прописью: ноль) раз. Уж даже не знаю, горевать ли мне по этому поводу...

Так что связь IT с математикой — это скорее миф, чем реальность. Как инструмент, вырабатывающий способность к доказательному мышлению, математика, конечно, бесценна, но если говорить о ней как о сумме знаний, то тут, извините, программирование отдельно, а математика отдельно. Такие дела.
Re: Математика vs computer science
От: andyp  
Дата: 05.12.16 20:23
Оценка: +1
Здравствуйте, Khimik, Вы писали:

K>Какие ещё можно придумать примеры?


Сейчас, например , копошусь вот с этим:
https://msdn.microsoft.com/en-us/library/aa289166.aspx
https://en.wikipedia.org/wiki/Combinatorial_number_system

Типичный стык комбинаторики и CS. Нужно это мне для решения одной маленькой задачи по обработке сигналов в приложениях к связи.
Re[2]: Математика vs computer science
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 06.12.16 18:05
Оценка: 10 (1) +2 -1
Здравствуйте, Voblin, Вы писали:

V>Когда-то давно я для себя сформулировал, что если хочешь забыть математику, займись программированием. Это, конечно, шутка, но в ней есть не только доля шутки. По своему опыту могу сказать, что:


V>1. Геометрия не пригодилась. Целиком вся. Я понимаю, что если бы я занимался 3D-делами, то некоторые разделы геометрии были бы рабочим инструментом. Но так — увы.


Геометрия это не только линейка и циркуль, это внятное логическое мышление. Отработать такую механику больше не на чем.

V>2. Алгебра пригождается на уровне примерно 2-го класса средней школы. То есть весь аппарат — это сложить/отнять/умножить/поделить. За всю свою долгую трудовую деятельность в промышленной разработке использовал логарифм 2 (прописью: два) раза.


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

V>3. Тервер и статистика при анализе массивов данных пригождаются, но опять же на уровне первых полутора институтских лекций. Помню, как как-то раз в разговоре с коллегами (классные спецы, кстати) ввернул, что здесь бы лучше не среднее арифметическое брать, а медиану. Словил стеклянные взгляды.


Здесь противоречние с п.2. Теория вероятностей и статистика требуют гораздо больше чем арифметические действия.

V>4. И только теория множеств вкупе с исчислением предикатов — хлеб и соль, потому что базы данных — это оно и есть. Хотя мои соратники по борьбе умудряются развлекаться датабэйз-дизайном колбасить хитромудрые запросы, совсем не зная слова "предикат".


Теория множеств и исчисление предикатов — это серьезные абстракции. У людей без образования такое и близко не появится, их 'здравый смысл' работает на совсем другом бензине. Алгебра и геометрия в частности нужны для того, что бы ты вообще мог с абстракциями работать.

V>5. Программить что-нибудь на тему всяких "высоких" разделов типа линейной алгебры, дифференциального, интегрального и операционного исчислений, ТФКП и прочей жути, довелось ровно 0 (прописью: ноль) раз. Уж даже не знаю, горевать ли мне по этому поводу...


Программинг это в чистом виде абстракции, коих в реальной жизни ровно 0. Ты научился оперировать абстракциями именно в школе.

V>Так что связь IT с математикой — это скорее миф, чем реальность. Как инструмент, вырабатывающий способность к доказательному мышлению, математика, конечно, бесценна, но если говорить о ней как о сумме знаний, то тут, извините, программирование отдельно, а математика отдельно. Такие дела.


Эта самая сумма знаний есть скорее побочный эффект. Как только найдешь способ прокачать абстрактное мышление без математики, сразу начинай ждать Нобелевку.
Re[3]: Математика vs computer science
От: vdimas Россия  
Дата: 07.12.16 08:22
Оценка: +1
Здравствуйте, pagid, Вы писали:

P>Программирование — не математика. Одна из разновидностей инженерного ремесла.


Инженерное ремесло частенько опирается на математику.
Re[5]: Математика vs computer science
От: vdimas Россия  
Дата: 07.12.16 08:22
Оценка: +2
Здравствуйте, pagid, Вы писали:

I>>Оно примеяется в инженерии и состоит чуть более чем полностью, из математики.

P>Это математика применяется в программировании, как и в других инженерных дисциплинах.

Ес-но. Т.е. без математики программирование превращается в профанацию.
Re[2]: Математика vs computer science
От: vdimas Россия  
Дата: 07.12.16 08:28
Оценка: +1
Здравствуйте, Voblin, Вы писали:

V>Так что связь IT с математикой — это скорее миф, чем реальность.


От области деятельности зависит.
IT — это слишком широко.
Кто-то пишет склады с бухгалтериями на готовых "движках", так там алгебры за 5-й класс средней школы за глаза.

А кто-то решает задачи оптимизации (линейное программирование) или задачи на графах или обработку сигналов.

В общем, программирование в целом — это прикладная часть математики.

Но и программирование "чисто математических задач", это, скорее, прикладное программирование, так же как программирование, скажем, биологических или химических задач. ))
Re[4]: Математика vs computer science
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 07.12.16 08:30
Оценка:
Здравствуйте, rising_edge, Вы писали:

P>>Программирование — не математика. Одна из разновидностей инженерного ремесла.


_>Дедушка Кнут так не думает.


Дедушка Кнутт — не инженер
Маньяк Робокряк колесит по городу
Re[6]: Математика vs computer science
От: pagid Россия  
Дата: 07.12.16 08:46
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Ес-но. Т.е. без математики программирование превращается в профанацию.

Практически любая инженерная деятельность превращается без математики в профанацию.
Re[4]: Математика vs computer science
От: pagid Россия  
Дата: 07.12.16 08:47
Оценка:
Здравствуйте, vdimas, Вы писали:

V>Инженерное ремесло частенько опирается на математику.

Почти всегда, но в математикой от этого не становится.
Re[3]: Оффтоп
От: Sharov Россия  
Дата: 07.12.16 11:35
Оценка:
Здравствуйте, Ikemefula, Вы писали:

V>>1. Геометрия не пригодилась. Целиком вся. Я понимаю, что если бы я занимался 3D-делами, то некоторые разделы геометрии были бы рабочим инструментом. Но так — увы.


I>Геометрия это не только линейка и циркуль, это внятное логическое мышление. Отработать такую механику больше не на чем.


Вот очень согалсен. Я сейчас подсел на такую игрушку как Euclidea. Вещь! Особенно когда дело касается не просто построения, а накладываются ограничения на кол-во линий или элементарных построений. Логическое мышление в чистом виде. И кстати становится понятно, почему все началось с геометрии и Евклида. На счет отработки механики я бы поспорил -- чем шахматы не угодили как альтернатива?
Кодом людям нужно помогать!
Re[4]: Оффтоп
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 08.12.16 07:13
Оценка:
Здравствуйте, Sharov, Вы писали:

I>>Геометрия это не только линейка и циркуль, это внятное логическое мышление. Отработать такую механику больше не на чем.


S>Вот очень согалсен. Я сейчас подсел на такую игрушку как Euclidea. Вещь! Особенно когда дело касается не просто построения, а накладываются ограничения на кол-во линий или элементарных построений. Логическое мышление в чистом виде. И кстати становится понятно, почему все началось с геометрии и Евклида. На счет отработки механики я бы поспорил -- чем шахматы не угодили как альтернатива?


В геометрии и агебре ты можешь проверить сам себя более простыми методами. В шахматах очень трудно самостоятельно найти ответ — что бы найти ошибку в счете, надо найти ошибку в счете Кроме того, шахматах ты 'щупаешь' сами фигуры, а не комбинации. И разумеется, шахматы не дают базы для физики, химии и других вещей. Они вообще дают абстраакции, которые мало применимы в реальной жизни, кроме нескольких исключений.
Re[3]: Математика vs computer science
От: VladD2 Российская Империя www.nemerle.org
Дата: 08.12.16 14:49
Оценка:
Здравствуйте, pagid, Вы писали:

I>>computer science на самом деле никакой не sciense и не программирование — это разные разделы математики. Само программирование это еще один раздел математики.

P>Программирование — не математика. Одна из разновидностей инженерного ремесла.

А computer science — это наука обобщающая и классифицирующая знания о программировании. И вот тут computer science пересекается с математикой.

С тем что computer science — это раздел математики в корне не согласен. Вот скажем паттерны ООП — это computer science, но никак не математика. А вот алгоритмы — это уже и computer science и математика.

Так что я бы определил computer science как науку пересекающуюся с математикой. А программирование, как инженерную специальность использующую computer science в качестве базовой науки.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Отредактировано 08.12.2016 15:00 VladD2 . Предыдущая версия .
Re[2]: Математика vs computer science
От: VladD2 Российская Империя www.nemerle.org
Дата: 08.12.16 14:51
Оценка:
Здравствуйте, Sharov, Вы писали:

S>CS явл. частным случаем математики, таким же как и физика. Физика изучает окр. мир, cs -- выч. устройства и их св-ва. Ну и алгоритмы всякие. Ну там совсем грань стирается.


На мой взгляд не является частью, а использует. Точно так же и физика с химией использует математику для предоставления формул и расчетов.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Математика vs computer science
От: VladD2 Российская Империя www.nemerle.org
Дата: 08.12.16 14:52
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Ну физики любят говорить, что математика -- физика с дешевыми экспериментами. Почему же не вывернуть наоборот?


Потому что это просто треп из которого не стоит делать далеко идущие выводы.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[5]: Математика vs computer science
От: Khimik  
Дата: 08.12.16 15:04
Оценка:
Здравствуйте, VladD2, Вы писали:

Ответов много, я с трудом их понимаю. Лучше бы подкинули ещё хотя бы пару примеров задач на стыке математики и программизма.
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re[6]: Математика vs computer science
От: VladD2 Российская Империя www.nemerle.org
Дата: 08.12.16 15:36
Оценка:
Здравствуйте, Khimik, Вы писали:

K>Ответов много, я с трудом их понимаю. Лучше бы подкинули ещё хотя бы пару примеров задач на стыке математики и программизма.


Многие алгоритмы были придуманы математиками и адаптированы для реального применения программистами. Ну, и банальные расчеты координат для окошка — это ни что иное как математика. Разные теории используются в качестве моделей для систем типов ЯП.

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

Вот математика — это базовая абстрактная наука этой систематизации. Прикладные науки (физика, химия, computer science, ...) изучают менее абстрактные (более практичные) области знаний. А само программирование — та самая инженерия, когда решаются какие-то прикладные задачи. При решении прикладных задач в ИТ используется множетсво знаний. В том числе знания специфичные для разработки ПО — это computer science и другие знания. Вот часть из них это и есть математика. Точно так же используются и другие знания (из физики, химии, юриспруденции и экономики).

Общее у математики и программирования — это абстрагирование. И там, и там часто создаются модели. Вот здесь идет четкий стык.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: еще одно соображение
От: Pavel Dvorkin Россия  
Дата: 08.12.16 15:52
Оценка:
Здравствуйте, Khimik, Вы писали:

Обратите внимание на то, что основные алгоритмы ИТ были разработаны в 60-е годы прошлого века (Дейкстра, Кнут, Хоар, Вирт и т.д.) Великим умам математики 17-19 веков просто не приходило в голову их не только решать, но даже ставить.

К примеру, сортировка Хоара. Неужели корифеи математики 17-19 веков не смогли бы ее придумать ? Не верю. Они гораздо более сложные вещи придумали, такие, что их и не всякий студент поймет. А сортировку Хоара спокойно нормальному школьнику объяснить можно.

Было бы нужно — кто-нибудь да придумал бы. Но просто ненужно было. Не было у них такой задачи.

Я вообще подозреваю, что если настоящего математика спросить, как отсортировать массив, то мы можем получить ответ : "допустим, что массив уже отсортирован" . Если же надоедать — нарвемся на недоумение. Что за проблема-то — ну выберите наименьший элемент, поставьте на первое место, потом следующий на второе и т.д.

Время-то этих перестановок их не очень волнует. У них там всякие асимптотики, логарифм к бесконечности стремится , так не все ли равно, сколько раз переставлять придется. В асимптотическом пределе все равно все переставим
With best regards
Pavel Dvorkin
Re[3]: Математика vs computer science
От: Voblin Россия http://maslyaew.narod.ru/
Дата: 14.12.16 15:25
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Геометрия это не только линейка и циркуль, это внятное логическое мышление. Отработать такую механику больше не на чем.


Я специально чуть ниже вписал вот это: "Как инструмент, вырабатывающий способность к доказательному мышлению, математика, конечно, бесценна".

Но давайте посмотрим, что подразумевается под математикой в тот момент, когда она преподаётся. Логическое мышление? Отчасти да, но сильно косвенным образом. В первую очередь это навыки (в частности, счёта) и чёртова уйма определений, формулировок и прочего материала, который нужно выучить. Сама логика даётся в очень куцем виде. В лучшем случае элементы теории множеств и булева алгебра. Даже те, кому посчастливилось прослушать университетский курс математики, как правило, не в курсе, что такое большая и малая посылки, где в высказывании антецедент, где консеквент. Словосочетания "отрицание антецедента" и "подтверждение консеквента" для них ничего не значат.
Такое ощущение, что кто-то где-то "наверху" посчитал, что способность к логическому мышлению — слишком опасное оружие, и пускать его в свободное обращение лучше не надо
Re[3]: Математика vs computer science
От: Voblin Россия http://maslyaew.narod.ru/
Дата: 14.12.16 16:33
Оценка:
Здравствуйте, vdimas, Вы писали:

V>От области деятельности зависит.

V>IT — это слишком широко.
V>Кто-то пишет склады с бухгалтериями на готовых "движках", так там алгебры за 5-й класс средней школы за глаза.

Не нужно забывать, что 99% реальных программизмов — это именно что или склады с бухгалтериями на готовых движках, или отрисовка сайтов, или всякая прочая трахотня с капризными API.

V>А кто-то решает задачи оптимизации (линейное программирование) или задачи на графах или обработку сигналов.


Да я же и не спорю. Только эти все воистину прекрасные задачи укладываются в оставшийся 1%.

V>В общем, программирование в целом — это прикладная часть математики.


Весь наш грешный мир — это прикладная часть математики

Вот я что я ещё заметил. Вчера ребёнок пристал с тем, что у него никак не получается разгрызть задачку по его терверу. Там нужно было, имея одну заданную плотность распределения вероятностей икса, получить плотность вероятности заданной функции от икса. Что-то у него всё никак с ответом не сходилось. Возникло серьёзное подозрение, что в задачнике косяк (так бывает). Рассказал мне, как он крутил эти свои интегралы. Я естественным образом ничего не понял (годы программизмов прошли не зря), зато быстренько сляпал табличку в ёкселе, и при помощи численных методов, графиков и какой-то матери брутфорсом вышел на ответ из задачника. После этого уже, не отвлекаясь на сомнения в правильности ответа в задачнике, ребёнок заколбасил задачу правильным аналитическим методом.
Это я к тому, что программирование даёт нам набор инструментов вместо честной мат. аналитики. Привычка работать бензопилой хорошо отбивает навык работы лобзиком.
Re[4]: Математика vs computer science
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 15.12.16 11:25
Оценка:
Здравствуйте, Voblin, Вы писали:

V>Здравствуйте, Ikemefula, Вы писали:


I>>Геометрия это не только линейка и циркуль, это внятное логическое мышление. Отработать такую механику больше не на чем.


V>Я специально чуть ниже вписал вот это: "Как инструмент, вырабатывающий способность к доказательному мышлению, математика, конечно, бесценна".


V>Но давайте посмотрим, что подразумевается под математикой в тот момент, когда она преподаётся. Логическое мышление? Отчасти да, но сильно косвенным образом. В первую очередь это навыки (в частности, счёта) и чёртова уйма определений, формулировок и прочего материала, который нужно выучить.


Абстракции невозможно 'скопировть', их можно только вырастить, долгим методичным применением.

>Сама логика даётся в очень куцем виде.


Это уже не важно. Главное, что после школьной программы у тебя более-менее внятно прокачано абстрактное мышление и худо бедно есть возможности применять его в разных направлениях.
Re[6]: Математика vs computer science
От: alpha21264 СССР  
Дата: 15.12.16 12:08
Оценка:
Здравствуйте, Khimik, Вы писали:

K>Здравствуйте, VladD2, Вы писали:


K>Ответов много, я с трудом их понимаю. Лучше бы подкинули ещё хотя бы пару примеров задач на стыке математики и программизма.


Ну вот я 15 лет занимался проектированием микросхем и печатных плат.
Чтобы просто провести проводнички, векторная алгебра в полный рост.
А потом пошли высокие частоты, и стало нужно считать электрические переходные процессы.
Тут-то и полезли системы интегро-дифференциальных уравнений больших размерностей.

Хотя, если кто-то только ларьки автоматизирует, то может ему и не надо...

Течёт вода Кубань-реки куда велят большевики.
Re[4]: Математика vs computer science
От: alpha21264 СССР  
Дата: 15.12.16 12:55
Оценка:
Здравствуйте, Voblin, Вы писали:

V>Словосочетания "отрицание антецедента" и "подтверждение консеквента" для них ничего не значат.


Да в общем-то и не должны значить. По русски это "условие" и "следствие".

Течёт вода Кубань-реки куда велят большевики.
Отредактировано 15.12.2016 14:16 alpha21264 . Предыдущая версия .
Re[6]: Математика vs computer science
От: Evgeny.Panasyuk Россия  
Дата: 15.12.16 13:06
Оценка:
Здравствуйте, Khimik, Вы писали:

K>Ответов много, я с трудом их понимаю. Лучше бы подкинули ещё хотя бы пару примеров задач на стыке математики и программизма.


Например CAD, CAE, CAM — в русском языке это охватывается термином САПР.
Re[5]: Математика vs computer science
От: Voblin Россия http://maslyaew.narod.ru/
Дата: 15.12.16 13:33
Оценка:
Здравствуйте, alpha21264, Вы писали:

A>Словосочетания "отрицание антецедента" и "подтверждение консеквента" для них ничего не значат.

A>Да в общем-то и не должны значить. По русски это "условие" и "следствие".

Так тоже нормально. "Отрицание условия" и "подтверждение следствия". Две хрестоматийные логические ошибки.
Re[2]: еще одно соображение
От: anton_t Россия  
Дата: 18.12.16 15:18
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Я вообще подозреваю, что если настоящего математика спросить, как отсортировать массив, то мы можем получить ответ : "допустим, что массив уже отсортирован" . Если же надоедать — нарвемся на недоумение. Что за проблема-то — ну выберите наименьший элемент, поставьте на первое место, потом следующий на второе и т.д.


PD>Время-то этих перестановок их не очень волнует. У них там всякие асимптотики, логарифм к бесконечности стремится , так не все ли равно, сколько раз переставлять придется. В асимптотическом пределе все равно все переставим


Нотация О-большое, которой описывается сложность алгоритмов — это математика. У нас на мехмате на курсе матлогики давалась.
Re[4]: Математика vs computer science
От: anton_t Россия  
Дата: 18.12.16 15:21
Оценка: +1
Здравствуйте, Voblin, Вы писали:

V>Вот я что я ещё заметил. Вчера ребёнок пристал с тем, что у него никак не получается разгрызть задачку по его терверу. Там нужно было, имея одну заданную плотность распределения вероятностей икса, получить плотность вероятности заданной функции от икса. Что-то у него всё никак с ответом не сходилось. Возникло серьёзное подозрение, что в задачнике косяк (так бывает). Рассказал мне, как он крутил эти свои интегралы. Я естественным образом ничего не понял (годы программизмов прошли не зря), зато быстренько сляпал табличку в ёкселе, и при помощи численных методов, графиков и какой-то матери брутфорсом вышел на ответ из задачника. После этого уже, не отвлекаясь на сомнения в правильности ответа в задачнике, ребёнок заколбасил задачу правильным аналитическим методом.

V>Это я к тому, что программирование даёт нам набор инструментов вместо честной мат. аналитики. Привычка работать бензопилой хорошо отбивает навык работы лобзиком.

Не вместо, а вместе Вычислительные методы, позволяющие приближенно решить какую-то математическую задачу — это часть математики.
Re[2]: еще одно соображение
От: Evgeny.Panasyuk Россия  
Дата: 18.12.16 16:07
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Время-то этих перестановок их не очень волнует.


Волнует в том числе.
Александр Степанов когда-то комментировал этот тезис (попытку развести математику и computre science по признаку интереса к стоимости операций) — 1:04:22 — https://youtu.be/Ih9gpJga4Vc?t=3862
Re[3]: еще одно соображение
От: Evgeny.Panasyuk Россия  
Дата: 18.12.16 16:25
Оценка:
Здравствуйте, anton_t, Вы писали:

PD>>Время-то этих перестановок их не очень волнует. У них там всякие асимптотики, логарифм к бесконечности стремится , так не все ли равно, сколько раз переставлять придется. В асимптотическом пределе все равно все переставим

_>Нотация О-большое, которой описывается сложность алгоритмов — это математика. У нас на мехмате на курсе матлогики давалась.

Подсчёт абсолютного количества операций, сравнение и минимизация абсолютного времени выполнения — это всё тоже математика. Более того, эти задачи давно имеют выработанные в математике методы, подходы и инструменты для решения/исследования.

Почему-то постоянно встречаются попытки оторвать куски, а то и целые области программирования от математики. Яркий пример это заявления о кошерностиматематичности функционального программирования и не математичности императивного, основывающиеся лишь на том что некоторый код на ФЯ близок к какой-то известной им со школы математической нотации. Хотя и ИП, и ФП — это исключительно строгие системы с жёстко-логичными правилами — а следовательно в том числе являются математикой.
Re[4]: еще одно соображение
От: pagid Россия  
Дата: 18.12.16 16:38
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>Почему-то постоянно встречаются попытки оторвать куски, а то и целые области программирования от математики.

Чуть в строну. Сопромат, ТОЭ, баллистика... это тоже математика?
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re[5]: еще одно соображение
От: Evgeny.Panasyuk Россия  
Дата: 18.12.16 17:01
Оценка: 3 (1)
Здравствуйте, pagid, Вы писали:

EP>>Почему-то постоянно встречаются попытки оторвать куски, а то и целые области программирования от математики.

P>Чуть в строну. Сопромат, ТОЭ, баллистика... это тоже математика?

Про ТОЭ и баллистику ничего не скажу, а вот сопротивление материалов это по сути прикладная математика — на основании гипотез и предположений (гипотеза плоских сечений, принцип Сен-Венана и т.п.) строится математическая модель и исследуется математическими же методами (кусочно заданные функции, СЛАУ, производные линии искривленой оси балки, интегралы по сечениям, тензоры напряжений и т.д. и т.п.), далее математическими же методами оценивается применимость этой модели к реальным системам на основе экспериментов.
Re[6]: еще одно соображение
От: pagid Россия  
Дата: 18.12.16 17:14
Оценка: +1
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>Про ТОЭ и баллистику ничего не скажу, а вот сопротивление материалов это по сути прикладная математика — на основании гипотез и предположений (гипотеза плоских сечений, принцип Сен-Венана и т.п.) строится математическая модель и исследуется математическими же методами (кусочно заданные функции, СЛАУ, производные линии искривленой оси балки, интегралы по сечениям, тензоры напряжений и т.д. и т.п.), далее математическими же методами оценивается применимость этой модели к реальным системам на основе экспериментов.


Тогда и физику и бух.учет придется тоже считать иатематикой.
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re[7]: еще одно соображение
От: Evgeny.Panasyuk Россия  
Дата: 18.12.16 17:38
Оценка: :)
Здравствуйте, pagid, Вы писали:

EP>>Про ТОЭ и баллистику ничего не скажу, а вот сопротивление материалов это по сути прикладная математика — на основании гипотез и предположений (гипотеза плоских сечений, принцип Сен-Венана и т.п.) строится математическая модель и исследуется математическими же методами (кусочно заданные функции, СЛАУ, производные линии искривленой оси балки, интегралы по сечениям, тензоры напряжений и т.д. и т.п.), далее математическими же методами оценивается применимость этой модели к реальным системам на основе экспериментов.

P>Тогда и физику и бух.учет придется тоже считать иатематикой.

Почему "придётся"? Прикладная математика в чистом виде и есть.
Применяемую повседневно арифметику для подсчёта цен неоспоримо считают математикой — чем бух.учёт-то хуже? Исторически это одна из первых областей приложения математики, и обратно — одна из областей из которых математика выросла.

Конечно можно спорить/философствовать о том насколько эти прикладные дисциплины обособились, и есть ли какая-то грань обособления переступив которую дисциплина перестаёт быть математикой — это вопрос терминологии.
Но я в любом случае решительно не понимаю тех кто почему-то называет ФП математикой, но не удостаивает этой чести ИП. Или например считает что в алгоритмах математика появляется только тогда, когда к ним применяется асимптотический анализ сложности, но при этом не считают математикой анализ абсолютного количества операций и их стоимости, не говоря уже о математичности внутреннего устройства алгоритмов. То есть тут либо тогда всё это считать математикой, либо ничего (с чем я не согласен, но это хотя бы внутренне непротиворечивая позиция).
Re[8]: еще одно соображение
От: pagid Россия  
Дата: 18.12.16 17:55
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>Почему "придётся"? Прикладная математика в чистом виде и есть.

EP>Применяемую повседневно арифметику для подсчёта цен неоспоримо считают математикой — чем бух.учёт-то хуже?
Ничем не хуже. Но тогда вся жизнь — математика. А на самом деле она иструмент. Используемый во многих науках, прикладных дисциплинах и видах деятельности.
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re[9]: еще одно соображение
От: Evgeny.Panasyuk Россия  
Дата: 18.12.16 18:39
Оценка:
Здравствуйте, pagid, Вы писали:

EP>>Почему "придётся"? Прикладная математика в чистом виде и есть.

EP>>Применяемую повседневно арифметику для подсчёта цен неоспоримо считают математикой — чем бух.учёт-то хуже?
P>Ничем не хуже. Но тогда вся жизнь — математика.

Внезапно этимология слова математика примерно так широко и расшифровывается:

https://en.wikipedia.org/wiki/Mathematics#Etymology
The word mathematics comes from the Greek μάθημα (máthēma), which, in the ancient Greek language, means "that which is learnt",[23] "what one gets to know", hence also "study" and "science", and in modern Greek just "lesson". The word máthēma is derived from μανθάνω (manthano), while the modern Greek equivalent is μαθαίνω (mathaino), both of which mean "to learn". In Greece, the word for "mathematics" came to have the narrower and more technical meaning "mathematical study" even in Classical times.[24] Its adjective is μαθηματικός (mathēmatikós), meaning "related to learning" or "studious", which likewise further came to mean "mathematical". In particular, μαθηματικὴ τέχνη (mathēmatikḗ tékhnē), Latin: ars mathematica, meant "the mathematical art".


P>А на самом деле она иструмент. Используемый во многих науках, прикладных дисциплинах и видах деятельности.


Есть разные мнения — кто-то считает царицей, кто-то служанкой, кто-то считает что в любой науке столько истины, сколько в ней математики. Я же говорю — об этом вполне можно спорить.
Мой же поинт в том что как-то странно выдёргивать из программирования какую-то мизерную часть типа неизменяемости или асимптотической сложности и называть их математикой, но при этом считать что остальные части (которые помимо всего прочего УЖЕ имеют строгие математические описания и модели) не математикой, не математичными и т.п.
Re[10]: еще одно соображение
От: pagid Россия  
Дата: 18.12.16 18:50
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>Внезапно этимология слова математика примерно так широко и расшифровывается:

Просто не нужно путать "использует" и "является".
И да, если бухгалтер, физик или программист делая какие-то расчеты или математические выкладки скажет "я сейчас занимаюсь математикой", он будет прав, только вот от этого бух.учет, физика или программирование математикой не становятся.
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re[11]: еще одно соображение
От: Evgeny.Panasyuk Россия  
Дата: 18.12.16 19:55
Оценка:
Здравствуйте, pagid, Вы писали:

EP>>Внезапно этимология слова математика примерно так широко и расшифровывается:

P>Просто не нужно путать "использует" и "является".

Я не путаю.

P>И да, если бухгалтер, физик или программист делая какие-то расчеты или математические выкладки скажет "я сейчас занимаюсь математикой", он будет прав, только вот от этого бух.учет, физика или программирование математикой не становятся.


Программирование это математика потому что код это математическая абстракция, даже императивный, структуры данных — тоже математика, процесс создания кода, доказывания его свойств (пусть и не абсолютно строго) — математическая активность. А отнюдь не только потому что где-то в коде встречается какой-нибудь "расчёт" а-ля x*2. Если этого не видно, то смотри такие абстрактные математические штуки как машина Тьюринга, формальная грамматика, граф, логику Хоара и т.д. и т.п.
Re[12]: еще одно соображение
От: pagid Россия  
Дата: 18.12.16 20:17
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>Я не путаю.



EP>Программирование это математика потому что код это математическая абстракция, даже императивный, структуры данных — тоже математика, процесс создания кода, доказывания его свойств (пусть и не абсолютно строго) — математическая активность. А отнюдь не только потому что где-то в коде встречается какой-нибудь "расчёт" а-ля x*2. Если этого не видно, то смотри такие абстрактные математические штуки как машина Тьюринга, формальная грамматика, граф, логику Хоара и т.д. и т.п.

Тогда начнем по-новой Во всех уже упомянутых науках, дисциплинах и областях деятельности используются не менее абстрактные математические штуки. Во всех, начиная с физики и до бух.учета. Они математикой не являются, но её методы используют. Почему для программирования должно быть сделано исключение и его следует считать математикой совершенно непонятно.
... << RSDN@Home 1.2.0 alpha 5 rev. 1495>>
Re[13]: еще одно соображение
От: Evgeny.Panasyuk Россия  
Дата: 18.12.16 20:30
Оценка:
Здравствуйте, pagid, Вы писали:

P>Тогда начнем по-новой Во всех уже упомянутых науках, дисциплинах и областях деятельности используются не менее абстрактные математические штуки. Во всех, начиная с физики и до бух.учета. Они математикой не являются, но её методы используют. Почему для программирования должно быть сделано исключение и его следует считать математикой совершенно непонятно.


Я вроде чётко сказал что считаю и физику и бух.учёт прикладной математикой

P>>Тогда и физику и бух.учет придется тоже считать иатематикой.
EP>Почему "придётся"? Прикладная математика в чистом виде и есть.

Re[3]: еще одно соображение
От: Sharov Россия  
Дата: 19.12.16 12:39
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>Волнует в том числе.

EP>Александр Степанов когда-то комментировал этот тезис (попытку развести математику и computre science по признаку интереса к стоимости операций) — 1:04:22 — https://youtu.be/Ih9gpJga4Vc?t=3862

Я как раз выше этот тезис и приводил(из этой лекции), только в обратную сторону.
Кодом людям нужно помогать!
Re[4]: еще одно соображение
От: Evgeny.Panasyuk Россия  
Дата: 19.12.16 14:40
Оценка:
Здравствуйте, Sharov, Вы писали:

EP>>Волнует в том числе.

EP>>Александр Степанов когда-то комментировал этот тезис (попытку развести математику и computre science по признаку интереса к стоимости операций) — 1:04:22 — https://youtu.be/Ih9gpJga4Vc?t=3862
S>Я как раз выше этот тезис и приводил(из этой лекции), только в обратную сторону.

Да, там та же цитата используется. Только я сослался на момент чуть раньше — там в ответ на тезис о том что в отличии от CS у математики нет понятия цены операций, Степанов привёл в пример древнегреческую математику, где подсчитывали необходимое количество операций с циркулем и линейкой.
Re[4]: еще одно соображение
От: Sharov Россия  
Дата: 19.12.16 15:20
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:



EP>Почему-то постоянно встречаются попытки оторвать куски, а то и целые области программирования от математики. Яркий пример это заявления о кошерностиматематичности функционального программирования и не математичности императивного, основывающиеся лишь на том что некоторый код на ФЯ близок к какой-то известной им со школы математической нотации. Хотя и ИП, и ФП — это исключительно строгие системы с жёстко-логичными правилами — а следовательно в том числе являются математикой.


Я ни разу не фпшник, но код на ФЯ (особенно чистом, типа хацкеля) действительно напоминает мат. доказательство. Не нотацию, а схему доказательства. Т.е. код явл. собой доказательство некой проблемы-теоремы, поэтому он так пришелся по душе математикам. От математиков для математиков. В тоже время строчка кода на императивном языка может запустить ракету на марс, т.е. наличествуют side-effect'ы. С другой стороны, все вычисления (программы) ради этих side-effect'ов и пишутся. Поэтому фп уже который десяток лет без особого успеха штурмует умы программистов.
Кодом людям нужно помогать!
Re[12]: еще одно соображение
От: Voblin Россия http://maslyaew.narod.ru/
Дата: 19.12.16 16:28
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>структуры данных — тоже математика...


Возьмём для примера проектирование базы данных. Берём функциональные требования и превращаем их в набор сущностей и связей. Есть там математика? Где-то там в глубине, конечно, да, но конкретно в момент проектирования базы мы ею совершенно не паримся. Мы паримся тем, правильно ли мы поняли предметную область. А это уже не математика, а бухгалтерия, делопроизводство и прочая "лирика". И ещё паримся тем, что нам забыл рассказать потенциальный пользователь. Это тоже не математика, а скорее психология. Представляем себе толпу умственно не выдающихся пользователей и пытаемся прикинуть, как система себя поведёт, если вместо нормального use-кейса в их головах вирусоподобным образом угнездится какой-нибудь изврат. Это тоже не математика, а скорее социальная психология. Особенно тот её раздел, в котором изучаются разбитые окна.

Да, структура базы данных — это техническое приложение исчисления предикатов, которое однозначно математика. Но при проектировании структуры мы этой самой математикой вообще не занимаемся. Занимаемся чем угодно, но только не математикой.
Re[13]: еще одно соображение
От: Evgeny.Panasyuk Россия  
Дата: 19.12.16 17:02
Оценка:
Здравствуйте, Voblin, Вы писали:

EP>>структуры данных — тоже математика...

V>Возьмём для примера проектирование базы данных. Берём функциональные требования и превращаем их в набор сущностей и связей. Есть там математика? Где-то там в глубине, конечно, да, но конкретно в момент проектирования базы мы ею совершенно не паримся. Мы паримся тем, правильно ли мы поняли предметную область. А это уже не математика, а бухгалтерия, делопроизводство и прочая "лирика". И ещё паримся тем, что нам забыл рассказать потенциальный пользователь. Это тоже не математика, а скорее психология. Представляем себе толпу умственно не выдающихся пользователей и пытаемся прикинуть, как система себя поведёт, если вместо нормального use-кейса в их головах вирусоподобным образом угнездится какой-нибудь изврат. Это тоже не математика, а скорее социальная психология. Особенно тот её раздел, в котором изучаются разбитые окна.
V>Да, структура базы данных — это техническое приложение исчисления предикатов, которое однозначно математика. Но при проектировании структуры мы этой самой математикой вообще не занимаемся. Занимаемся чем угодно, но только не математикой.

Занимаются, в том числе и математикой. Если уметь думать только о пользователях — то банально ничего не получится — помимо этого нужно ещё и понимать как это всё механически работает, каким механическим клеем всё это связывается, уметь применять и изменять всю эту абстрактную механику. Тот кто думает ТОЛЬКО о пользователях и "прочем делопроизводстве" — это заказчик, а не инженер или проектировщик.
Даже если не знать математических терминов, а называть и использовать все эти винтики и шурупики как-то по-своему, интуитивно — то это всё равно математика — жёсткая, абстрактная, механическая система. Сложение не перестанет быть сложением от того что складывающий не знает этого слова.
Re[14]: еще одно соображение
От: Voblin Россия http://maslyaew.narod.ru/
Дата: 19.12.16 18:00
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>Занимаются, в том числе и математикой.


Весь вопрос в том, какова доля этого самого "в том числе". По опыту скажу, что мизерная. И сама эта математика пусть не детсадовского, но точно не мехматовского уровня.

В том числе приходится ещё не забывать кушать. Так что теперь, будем абсолютизировать приём пищи?
Re[15]: еще одно соображение
От: Evgeny.Panasyuk Россия  
Дата: 19.12.16 18:28
Оценка:
Здравствуйте, Voblin, Вы писали:

EP>>Занимаются, в том числе и математикой.

V>Весь вопрос в том, какова доля этого самого "в том числе". По опыту скажу, что мизерная.

Это скорее от незнания соответствующих терминов.
Вот например многие ли знают что такое логика Хоара, Хоаровские тройки, варианты циклов? Тем не менее при императивном программировании это всё возникает (и даже интуитивно применяется) практически постоянно.

V>И сама эта математика пусть не детсадовского, но точно не мехматовского уровня.


А я не говорил что это какая-то глубокая, сложная или супер-абстрактная математика. Обычно действительно всё очень просто и конкретно.
Re[16]: еще одно соображение
От: Voblin Россия http://maslyaew.narod.ru/
Дата: 19.12.16 19:27
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>Это скорее от незнания соответствующих терминов.


Со знанием соответствующих терминов усё в полном порядке. Но тем лично для меня только нагляднее их мизерное применение.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.