· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.HEAP —› Написал седня прогу!

. 1 . 2 . >>

Посл.отвђт Сообщенiе


Дата: Окт 25, 2004 00:22:48

По сабжу.
Матрица А умножается на Б. Получилось В. Потом помнял их местами, гляжу а тута по логике, что 2*4 и 4*2 должно быть одинаково. А прога говорит что ежели матрицы местами меняются то не фига! Ну думаю глючит достал Шипачева, а там в свойствах матрицы так и сказано A*B != B*A Во дела! Аж блин, хреново, от такой логики стало! ПОЧЕМУ? так выходит? Вижу что получается так, но почему? В упор не вижу.


Дата: Окт 25, 2004 00:53:34 · Поправил: dShell

дык это верно. ведь по сути что есть числа - это матрицы( 1, 1)
Вот что написано в моих лекциях по алгебре:
3) Умножение двух матриц.
Условие умножения: A - Mat(m x n, k), B - Mat(n x l, k)
C - Mat(m x l, k); C = A*B.

То есть если поменять местами A и B, то получится совершенно другая матрица (l x m, k).

А выходит так из-за определения произведения. если расписать это на примере двух матриц размером два на два:
(1 2) (5 6) (1*5+2*7 1*6+2*8)
(3 4)*(7 8)=(3*5+4*7 3*6+4*8) 

(5 6) (1 2) (1*5+3*6 2*5+4*6)
(7 8)*(3 4)=(1*7+3*8 2*7+4*8)


мы умножаем и складываем разные элементы матрицы :). Но a*b == b*a для детерминантов, по пятому свойству вроде :)


Дата: Окт 25, 2004 12:34:04 · Поправил: Arvensis

dShell
Вам определенно стоит перечитать эти лекции еще раз.
„ведь по сути что есть числа - это матрицы( 1, 1)“
Очень не рекомендую рассматривать числа так. Произведение числа на матрицу и произведение матриц определяются по разному. Рассматривать число как матрицу не лучше, чем складывать метры с килограммами.
„Условие умножения: A - Mat(m x n, k), B - Mat(n x l, k)
C - Mat(m x l, k); C = A*B.“

Обозначения мне незнакомы, но насколько я понимаю, m x n, n x l - размерности, т.е. A состоит из m строк и n столбцов, B - из n строк и l столбцов. Тогда произвеление A*B определено и в результативной матрице будет m строк и l столбцов. Пока все правильно, C = Mat(m x l, k). Что такое k?
„То есть если поменять местами A и B, то получится совершенно другая матрица (l x m, k)“
Если l!=m не получится. Произведение будет просто не определено. А если и получится (l=m), то не l x m, а n x n .
„Но a*b == b*a для детерминантов, по пятому свойству вроде :)“
Непонятно, что имеется в виду под a и b; если это определители соответственно матриц A и B, возражений не имею.
EvilsInterrupt
„помнял их местами, гляжу а тута по логике, что 2*4 и 4*2 должно быть одинаково.“
При проведении параллелей между различными алгебрами надо быть осторожнее. Операция умножения по отношению к матрицам лишь называется и обозначается так же, как умножение по отношению к числам. Определяется она совершенно иначе, соответственно, и свойства другие. Нельзя распространять закон коммутативности умножения с чисел на матрицы, руководствуясь названиями. В булевой алгебре есть закон дистрибутивности сложения A+(B*C) = (A+B)*(A+C). Ты же не станешь переносить его в "обычную" алгебру?


Дата: Окт 25, 2004 13:26:11 · Поправил: NoName

2 EvilsInterrupt
„а там в свойствах матрицы так и сказано A*B != B*A“
Всем про эти матрицы в бошку вдалбливали, но я точно запомнли вот что.
Правило это написано для того чтобы люди не умножали матрицы в обратном порядке. Но конечно правило не "железное", и, как понимаю я, есть частные слачаи. Иными словами есть матрицы которые моджно перемножать в любом порядке, но таких меньшинство. Как, например, е тебя.


Дата: Окт 25, 2004 16:47:47

>(1 2) (5 6) (1*5+2*7 1*6+2*8) и т.д.
Зря написано!
Если бы ты прочитал повнимательней, то бы увидел название темы: "Написал прогу", как бы я по твоему бы написал незная как это должно работать? А?

Меня удивило, почему такой факт?
В принципе Arvensis изложил, но полного просветления, что-то еще нету не смотря что читаю учебник по вышке! Может the Svin увидит и скажет.


Дата: Окт 25, 2004 17:49:55 · Поправил: dShell

Arvensis
По сути вы правы.
k - это поле.
„Если l!=m не получится. Произведение будет просто не определено. А если и получится (l=m), то не l x m, а n x n .“
Виноват, я просто мысленно переключился на квадратные матрицы одинаковых размеров :(.
a и b - это определители матриц A и B соответсвенно.

EvilsInterrupt
„Зря написано! Если бы ты прочитал повнимательней, то бы увидел название темы: "Написал прогу", как бы я по твоему бы написал незная как это должно работать? А?“
Я хотел показать, что соответсвующие элементы матриц A*B и B*A своершенно разные.


Дата: Окт 25, 2004 18:36:45

dShell
Пардон за грубость! :(

Блин, щас че то загнался!

Есть Матрица А из n строк и k столбцов и есть Вектор-столбец VK тоже из n строк,
Также есть вектор-строка VS как и А из k столбцов,как надо умножать A*VK и A*VS?


Дата: Окт 25, 2004 22:15:10

Ну а если кто о конечных полях Галуа, как нить умно и просто выразится, то я буду на 3 байте от счастья!


Дата: Окт 25, 2004 22:19:52


Дата: Окт 25, 2004 22:26:14

Черт, не кислая книжечка. Хочу такую.
А о полях Галуа тебе выражаться... Они будут описаны в моей статье, которая, быть может, когда-нибудь и будет написана. В той ссылке, что я тебе давал по AES, есть приличные объяснения GF. А чтобы знать, о чем с тобой говорить, дык... Это же сложно. Ты знаешь, скажем, что такое кольцо?


Дата: Окт 25, 2004 22:38:28

>Черт, не кислая книжечка. Хочу такую.
:))))
Володя у меня с математикой и инглишом, а также с си такой кошмар. И как я токо живу?


Дата: Окт 25, 2004 22:39:58

Тогда жди статьи. Иначе надо начинать с понятия группа, мультипликативная группа, порождающий элемент, кольцо, и т.п. Там до фига. Здесь я это печатать запарюсь.


Дата: Окт 25, 2004 22:45:24

volodya
Гибкости пальцев и времени тебе по больше, а может у тебя мысль возникнет мне ее прислать, вдруг я че нить спрошу дурное, а окажется дельным! :) ;) Наверняка уж про поля написал! :)))


Дата: Окт 25, 2004 22:48:30 · Поправил: volodya

Нет. Только-только начал. Почитай пока

Лидл Р., Нидеррайтер Г. "Конечные поля"

poiskknig рулит :)


Дата: Окт 25, 2004 22:56:53

EvilsInterrupt

к вопросу о матрицах

при умножении матриц пользуемся правилом Кели, и все проще некуда.
Смьісл сего правила гласит о том, что к произведению подвластньі матрици, чтобьі количество столбцов первой бьіло равно количеству "рядков" (не знаю перевода ))) ) второй, тоесть, можно перемножить только такие размерности

n x M * M x l = n * l (вон, большая буква одинакова для обеих)

если я правильно понял твой пост, то тьі пьітаешся перемножить

M x l * n * M
в случае, когда l <> n, ошибка..
посему произвольная перестановка матриц не всегда имеет место бьіть..

. 1 . 2 . >>


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.064