2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу Пред.  1, 2, 3, 4, 5 ... 13  След.
 
 Re: Язык программирования для математика
Сообщение01.06.2010, 14:57 
Аватара пользователя
Xaositect в сообщении #326305 писал(а):
Множество функций из $X$ в $Y$ чаще пишут как $Y^X$, но $X\to Y$ тоже встречается.

А можно ещё вопрос: как вообще пришли к обозначению $Y^X$? Ну $X\to Y$ это понятно, а вот степень-то как тут привязать? И почему именно $Y$ пишется в "основании"?
Что-то я совсем от темы отошёл. Ну да ладно. А вот верно ли тогда, что $f:X\to Y$ и $f\in X\to Y$ -- то же самое? По-моему второй вариант более интуитивно воспринимаем, почему же тогда используют первый?

 
 
 
 Re: Язык программирования для математика
Сообщение01.06.2010, 15:21 
Аватара пользователя
caxap в сообщении #326306 писал(а):
А можно ещё вопрос: как вообще пришли к обозначению $Y^X$? Ну $X\to Y$ это понятно, а вот степень-то как тут привязать? И почему именно $Y$ пишется в "основании"?

Просто если $Y$ и $X$ конечны, то количество таких функций в точности $|Y|^{|X|}$. Ну и всякие свойства степени: $a^{x+y} = a^xa^y, a^{xy} = (a^x)^y$ -- тоже в некотором смысле выполнены.

 
 
 
 Re: Язык программирования для математика
Сообщение01.06.2010, 15:26 
Аватара пользователя
caxap в сообщении #326296 писал(а):
[(x,y) | x <- Integer, y <- Integer] -- $\{(x,y) | x\in \mathbb Z,y \in\mathbb Z\}$

Вот тут следует сделать одно уточнение. В Хаскеле это список (типа кортеж, т. е. важен порядок элементов), а справа -- множество, т. е. порядок не важен. Но в остальном аналогия действительно имеется и смысл такой же, как и в математической нотации.

 
 
 
 Re: Язык программирования для математика
Сообщение01.06.2010, 20:31 
Аватара пользователя
caxap в сообщении #326306 писал(а):
По-моему второй вариант более интуитивно воспринимаем, почему же тогда используют первый?

Я со вторым вариантом не встречался, только с первым.

Все приведённые выше примеры, кроме $X \to Y$ для обозначения множества функций из $X$ в $Y$, встречались мне в математике. А такое не встречалось.

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

-- Вт июн 01, 2010 23:34:57 --

Вопрос: "Почему пишут так, а не иначе", зачастую бессмысленен. Например, почему для бинарного отношения $R$ часто пишут $xRy$ вместо $\langle x,y \rangle \in R$? Почему пишут $\sqrt{2} < \sqrt{3}$ вместо $\langle \sqrt{2}, \sqrt{3} \rangle \in <$? Традиция!

Та же традиция велит для функции $f$ писать $f(x) = y$ или $f : x \mapsto y$ вместо $\langle x,y \rangle \in f$...

 
 
 
 Re: Язык программирования для математика
Сообщение01.06.2010, 21:15 
Аватара пользователя
Как вариант языка можно рассмотреть C# + Math.NET (http://www.mathdotnet.com/. Кроме Матлаба и другие математические пакеты (например, Mathematica) имеют встроенный язык программирования.

 
 
 
 Re: Язык программирования для математика
Сообщение20.06.2010, 16:24 
Для математика вряд ли будет что-нибудь лучше языка компьютерной алгебры: например, Mathematica, Mapla, MAXIMA и др.

Сам пользуюсь Mathematica. На Mathematica можно даже писать пользовательский интерфейс GUI.

 
 
 
 Re: Язык программирования для математика
Сообщение28.06.2010, 10:56 
Аватара пользователя
какое несчастье, что фортран до сих пор жив, что суровые профессора на нем пытаются что-то кодить, а потом это все надо разгребать.

(Оффтоп)

далее ряд неприводимых ругательств

с тех пор, как он растерял свое приемущество в скорости перед тем же Си и написаны трансляторы типа f2c, смысла в нем не вижу.
для тех, кто не застрял в прошлом веке, хаскель был бы отличным вариантом, т.к. развивает соображалку, а не пытается втиснуть ее в узкие рамки.

да, светит мне горчишник, чувствую... :)

 
 
 
 Re: Язык программирования для математика
Сообщение28.06.2010, 17:52 
allchemist в сообщении #335840 писал(а):
с тех пор, как он растерял свое приемущество в скорости перед тем же Си и написаны трансляторы типа f2c, смысла в нем не вижу.

Молодой ишшо... (с)
А в чём премущества Си перед фортраном? Ну кроме того, что хомячки, считающие себя хардкорными программистами, по нему учатся?
Без наезда, чисто интересуюсь.
Просто пару лет назад пришлось мне разгребать то, что писал "суровый профессор на фортране". Если бы он писал это на Си, 1) у него ничего бы никогда не заработало 2) если бы оно даже заработало, я бы это никогда не разгрёб.

 
 
 
 Re: Язык программирования для математика
Сообщение28.06.2010, 18:23 
Аватара пользователя

(Оффтоп)

Эх, жалко Вздымщик Цыпа куда-то пропал. А то как-то вяловато обсуждение идёт :-)

 
 
 
 Re: Язык программирования для математика
Сообщение28.06.2010, 19:23 
allchemist в сообщении #335840 писал(а):
с тех пор, как он растерял свое приемущество в скорости перед тем же Си и написаны трансляторы типа f2c, смысла в нем не вижу
Основное преимущество фортрана в том, что на нём написано огромное количество самых разнообразных численных методов, C-шная реализация которых отсутствует.

Вот в этой теме обсуждалось: Фортран

 
 
 
 Re: Язык программирования для математика
Сообщение28.06.2010, 21:35 
Аватара пользователя
> А то как-то вяловато обсуждение идёт
это легко исправить :)

> А в чём премущества Си перед фортраном?
хм. ну хотя бы тем, что он очень распространен и под него много хороших библиотек. да, под фортран тоже много библиотек (особенно, если на netlib.org посмотреть), но 1) эти процедуры могут вызываться из сишного кода 2) транслятор f2c работает отлично.

(Оффтоп)

да, тут я хочу вспомнить про убогость синтаксиса фортрана и другие прелести, но сдержусь, т.к. для таких флеймов есть ЛОР :)


> Если бы он писал это на Си
на си можно писать аккуратный и понятный код. да и на фортране тоже можно, почему нет. это уже от человека зависит.

> Без наезда, чисто интересуюсь.
дак этож самое, я тоже не любитель си, хотя приходится иметь с ним дело.
ради повторного вброса, язык должен не вгонять сознание программиста в жесткие рамки, как это делают и фортран, и си, а давать ему направление для развития. и в этом плане хаскель отличный вариант (хотя он мне тоже не нравится :D). А еще, говорят, что это две большие разницы - ждать год, пока разработчики языка и компилятора сделают новую фичу, и иметь возможность добавить эту фичу руками за 20 минут.

 
 
 
 Re: Язык программирования для математика
Сообщение28.06.2010, 22:39 
О чем базар, господа математики-программисты? Ассемблер и только ассемблер!!! в противном случае вы будете вынуждены всю жизнь пользоваться неуклюжими и неоптимальными функциями, написанными за вас другими заведомо менее талантливыми... хм...

А вот кстати и пример. Если кто помнит, команда процессора "div CX" делит содержимое регистров DX:AX на регистр CX, частное помещается в AX, остаток - в DX. Всё прекрасно, но поделить скажем 4 294 967 295 на 5 никак не получица - результат деления не уместится в AX. А если частное не помещается в назначенный регистр, возбуждается прерывание с вектором 0... т.е. аварийный выход из программы. А поделить - ну оччень надо!!!

Тогда на помощь приходит следующая волшебная процедура:

Код:
;процедура делит содержимое регистров DX:AX ­ на SI
;результат в  DX:AX, остаток в CX

div_si:

         push    bx
         push    bp
         push    di

         xor     bx,bx
         xor     cx,cx
         xor     di,di
         mov    bp,33

M5A4:
         rcl     cx,1
         rcl     bx,1
         sub     cx,si
         sbb     bx,di
         jnb     M5B2

         add     cx,si
         adc     bx,di

M5B2:
         cmc
         rcl     ax,1
         rcl     dx,1
         dec     bp
         jnz     M5A4

         pop     di
         pop     bp
         pop     bx
         ret


Разве это не прекрасно?

 
 
 
 Re: Язык программирования для математика
Сообщение28.06.2010, 22:56 
allchemist в сообщении #336032 писал(а):
ну хотя бы тем, что он очень распространен и под него много хороших библиотек
:lol:
И это всё?

 
 
 
 Re: Язык программирования для математика
Сообщение28.06.2010, 23:03 
Аватара пользователя
> Ассемблер и только ассемблер! ... Разве это не прекрасно?
no comments

> И это всё?
для не-системного программирования, мне видится, что все. но это немало. хотя, вызывать процедуры из скомпиленых сишных библиотек умеют многие языки и реализации.

 
 
 
 Re: Язык программирования для математика
Сообщение28.06.2010, 23:57 
Аватара пользователя

(Оффтоп)

Alexu007 в сообщении #336052 писал(а):
Ассемблер и только ассемблер!!!

Это, конечно, очень по-дзенски. Но посмотрим, как Вы будете реализовывать решение какой-нибудь (даже простой) задачи по ЧМ (или ещё хуже -- какие-нибудь символьные вычисления). Мазохисты Вам позавидуют.

А, это шутка была! Поздно, я и не сообразил сразу. Смешно.

 
 
 [ Сообщений: 195 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 13  След.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group