CMAT з'яўляецца матрыца праграмы калькулятар, напісаны на мове C.
Разлікі могуць быць выкананы на матрыца з комплекснымі рацыянальнымі каэфіцыентамі з дапамогай дакладных працэдур арыфметыкі, а таксама на матрыцы з элементамі мод з Ёсць Unix, DOS і Windows XP версіі.
Для запуску пад Windows2000 + з акна DOS, карыстальнік павінен спачатку загрузіць DOS эмулятар з http://dosbox.sourceforge.net/.
Unix, DOS і Windows XP версіі, разам з крыніцай З, могуць быць запампаваны.
Людзі, якія выкарыстоўваюць версіі UNIX павінны стварыць. Cmatrc файл у працоўны каталог, які складаецца з дзвюх ліній
- datpath=.
- cmat=.
(Гл. таксама раздзел
cmat_bugfix.html для паведамленні аб памылцы.)
Ёсць тры калькулятара праграм у рамках CMAT: CMATR, CMATCR і CMATM.
CMATR працы над полем рацыянальных лікаў, CMATCR работ полем комплексных рацыянальных і CMATM працуе над полем з р элементаў, дзе р-любое простае менш за 2 16 = 65536.
Праграм выкарыстоўваць некалькі арыфметычных дакладнасці працэдуры заснаваныя на тых, хто [ Fla ] [342-357,175-185]. (Гл. дакументацыю ).
- Да M0 (= 1930) аб'ектаў кожнага тыпу могуць быць створаны і захаваны для выкарыстання ў наступных сесіях.
- (rational) numbers: R[0],...,R[M0-1];
- (rational) matrices: RM[0],...,RM[M0-1];
- polynomials (rational): PR[0],...,PR[M0-1];
- polynomial (rational) matrices: PRM[0],...,PRM[M0-1];
- (complex rational) numbers CR[0],...,CR[M0-1];
- (complex rational) matrices CRM[0],...,CRM[M0-1];
- polynomials (complex rational): PCR[0],...,PCR[M0-1];
- polynomial (complex rational) matrices: PCRM[0],...,PCRM[M0-1];
- (mod p) matrices: mM[0],...,mM[M0-1];
- polynomials (mod p): Pm[0],...,Pm[M0-1];
- polynomial (mod p) matrices: PmM[0],...,PmM[M0-1].
Праграма можа апрацоўваць цэлыя адвольнага памеру. Памер матрыцы абмяжоўваецца толькі час, неабходнае для стварэння матрыцы ў пытанне, і для разліку з ім. Выкананне раз значна менш пры разліку з мода матрыц з
Рацыянальны / комплекс / MOD P колькаснага ROUTINES AVAILABLE.
Спалучэнне, складанне, адніманне, множанне, узвядзенне ў ступень, стаўленне і зваротныя. Таксама м-й ступені з рацыянальных можа быць вылічаная на зададзеную колькасць знакаў пасля коскі.
Паліномны ROUTINES AVAILABLE.
Складанне, адніманне, множанне, скалярны множанне, узвядзенне ў ступень, вытворнай, ацэнкі, фактар, рэшта, найбольшы агульны дзельнік, выказаўшы Нод ў выглядзе лінейнай камбінацыі паліномаў удзел, свабодных ад квадратаў раскладання. Выніковая двух паліномаў над ? [X] і дискриминант палінома над ? [X] можа быць знойдзена. Існуе модульнага ўзвядзення ў ступень для мод паліномаў стар
Берлекэмпа матрыца квадратаў Палінай па модулі р (Нашы Берлекэмпа матрыца транспонированная звычайна Берлекэмпа матрыцы.) Раскладанні паліномаў з рацыянальнымі, комплекс рацыянальных або мода р каэфіцыенты на непрыводнае. Пошук непрыводных паліном зададзенай ступені па модулю р Пошук й кругавой паліном. (MOD р)
MATRIX ROUTINES AVAILABLE.
- Складанне, адмаўленьне, комплексна-спалучанае Транспанаванне, множаньне на скаляр, множанне матрыц, узвядзенне ў ступень, Кронекера прадукту, ацэнкі матрычных паліномаў на квадратнай матрыцы.
- Стандартных элементарных радкоў і слупкоў аперацыі могуць быць выкананы па ўсіх відах матрыц.
- Элементы захоўваюцца матрыцы могуць быць зменены, альбо індывідуальна, альбо радкі або слупкі. Адной радкі або слупкі можа быць выдалены.
- Адной радкі або слупкі вектар можа быць абраны з захоўваюцца матрыцы. У больш агульным плане, подматрицы захоўваюцца матрыцы можа быць сфарміравана шляхам выбару подсемейства радкоў або Стоўбцаў адпаведна.
- Дзве матрыцы могуць быць злучаныя па радках або слупках. Секционированной матрыцы [| i] можа быць створана ад А. матрыца можа быць разгорнута ў вектар-слупок (працэс карысным для знаходжання мінімальнага палінома матрыцы).
- Фарміраванне матрыцы-ці, для выкарыстання ва ўласных разліках.
- Стварэнне спецыяльных матрыц, такіх як адзінкавая матрыца, элементарных матрыц Іарданіі і кампаньён матрыц, а таксама ленточных матрыц.
- Стварэнне матрыцы скаляр якога (Ij)-га элемента з'яўляюцца простыя арыфметычныя выразы, такія як I + J - я ^ 2 + 3 * /, для лічнік і назоўнік, можа быць, цалкам створаная ў рамках CMAT.
- Пошук зваротная, спалучаны, вызначальнік, характарыстычных паліном і мінімальны паліном матрыцы скаляр, P -1 AP. Раскладанне Холецкого станоўча пэўная матрыца знаходзіцца: = L * DL, дзе L з'яўляецца верхняй трохкутнай і блок D з'яўляецца дыяганальнай матрыцай. Выйсце ёсць дыяганальныя элементы D па дыяганалі і вышэй яе дыяганальных элементаў, належаць Л.
Зваротнай матрыцы М М мод цэлых лікаў можна знайсці, калі т> 1 натуральны лік, узаемна просты з вызначальнікам М. - Пошук адноўленай форме радкі эшалона, рашэнні лінейных раўнанняў, знаходжання базы для нуль-прасторы N (A) і слупкоў-прасторы З (А) матрыцы A. Гэтыя працэдуры з'яўляюцца вельмі карыснымі ў алгарытмы для знаходжання жордановой форме, ці, больш агульна, рацыянальнае кананічны выгляд квадратнай матрыцы. (Гл. [ паперы ].)
- Разлік скалярнага творы, даўжыня і выкарыстання Шміта працэс, каб знайсці артаганальны базіс для слупка-прасторы матрыцы. Пошук крос-твор вектар-радка (N - 1) ХП матрыца.
- Пошук вызначальнік і спалучаны матрыца з паліномны запісаў.
- Пошук Сміт кананічная форма матрыцы з паліномны элементамі. (Напрыклад, пры ўжыванні да матрыцы B = XI -, дзе з'яўляецца матрыца з рацыянальнымі або комплексу рацыянальных запісаў, гэта дае падабенства інварыянт, у прыватнасці, мы атрымліваем мінімальны паліном як інварыянт вышэйшай ступені.)
Мы таксама атрымліваем паліномны матрыц P і Q, якога дэтэрмінанты пастаяннай паліномаў, з тым уласцівасцю, што PBQ знаходзіцца ў кананічнай форме Сміта. - Элементарныя радок / слупок аперацый для матрыц з паліномны запісаў.
- Друк матрыц рацыянальных лікаў у файл або на экран, з дакладнасцю да зададзенага ліку дзесятковых знакаў.
- Перадача дадзеных па лініі-прынтэр.
- Файл R (& Le M0-J), падрыхтаваны матрыц такога ж тыпу (рацыянальнае, з якая плавае кропкай, комплексныя рацыянальныя або модульных) могуць быць уведзеныя ў масіў пазіцый J /... + г-1.
RUNNING CMAT.
Пасля ўводу cmat, карыстальнік цяпер можа спусціцца праз розныя ўзроўні, выбраўшы з двух варыянтаў экране. Каб падняцца праз розныя ўзроўні, тыпу Q, калі гэта варыянт. Пры выхадзе з праграмы, карыстач атрымлівае магчымасць захаваць дадзеныя для паўторнага выкарыстання ў наступных сесіях.
Вылічэнні з CMAT.
Каб увесці рацыянальнае лік і захоўваць лік, R [0], напрыклад, выбраць адпаведны пункт меню і тыпу N 0.
УВАГА: Выкарыстоўвайце Control-H, а не клавішу вяртання, у забой больш сімвалаў.
Цэлыя лікі ўводзяцца, як звычайна, а нецелых рацыянальных лікаў ўводзяцца з касой рысай, як цэлае / натуральны лік: напрыклад, 1 / 2, а комплексныя ліку з ненулявой ўяўнай часткі павінен заканчвацца я: напрыклад 1/2I ўяўляе (1 / 2) i. Няма дужкі, якія будуць выкарыстоўвацца пры ўводзе нумары. Рацыянальныя лікі выводзяцца ў 'малодшыя члены "з станоўчым назоўнікам.
Некаторыя шыраты дапускаецца ў дачыненні да адлегласці. Напрыклад, выраз 1-я, 1 - я, 1 - я ўяўляю ж комплекс рацыянальных, а 1-я уяўляе два лікі 1 і-я.
Матрыцы ўводзяцца радок за радком, канец радка адзначаецца на вяртанне карэткі. Прасторы асобных элементаў радка. Увайшоўшы матрыц RM [0] і Р. М. [1], прадукт RM [0] * RM [1] адпраўляецца ў РМ [2] (напрыклад) або RM [0], Р. М. [1]), выбраўшы варыянт множання Т з меню ніжэй, і увёўшы Т 0 1 2.
Rational Matrix Arithmetic
------------------------------------
a j k l : RM[j] + RM[k] -> RM[l]
t j k l : RM[j] * RM[k] -> RM[l]
s j k l : RM[j] - RM[k] -> RM[l]
m j k : -RM[j] -> RM[k]
f j k l : R[j](RM[k]) -> RM[l] (scalar multiple)
* j k : (RM[j])* -> RM[k] (transpose)
e n j k : RM[j] ^ n -> RM[k] (exponentiation)
z j k l : RM[j] - R[k]I -> RM[l]
p : print numbers and matrices
x : to enter data
q : to exit
------------------------------------
Каб спыніць увод паліном або матрыцу з клавіятуры, тыпу Q ці не літарна-лічбавых знакаў пры ўводзе каэфіцыента. Змаўчанні паліном або матрыцы затым захоўваецца.
Для разліку 10-м ўлады РМ [0], выберыце опцыю электроннай ўзвядзення ў ступень з вышэй меню, набраўшы E Кастрычніцкай 0 3 да накіраваць выснова ў РМ [3]. Сітуацыя некалькі прасцей з модульнымі арыфметычныя разлікі. Тут няма нумары захоўваюцца і неадмоўныя ліку менш адпаведнага модуля ўводзяцца непасрэдна, а не захоўваюцца. Напрыклад, каб памножыць матрыцу мм [0], 5 (Mod 7) і захаваць вынік як мм [1], абярыце адпаведны пункт меню з меню лініі
f,j k l p :j * (mM[k]) -> mM[l](mod p)(scalar multiple)
і тыпу F мая 0 1 7.
Важна памятаць, што пры выкарыстанні модульнай раздзеле арыфметыка CMAT, аперацыі павінны ажыццяўляцца толькі на захоўваемых аб'ектаў, якія маюць той жа модуль.
Каб спыніць увод заўчасна пасля ўводу першай літары меню, тыпу Q варта RETURN.
Нарэшце, на ўваход файл R (Le & M0-J), падрыхтаваны матрыцы аднаго і таго ж тыпу (рацыянальныя, з якая плавае кропкай, комплексныя рацыянальныя або модульныя) у масіў пазіцый J /... + г-1, першая радок файл павінен утрымліваць лік матрыц; наступная радок складаецца з радка і нумар слупка першай матрыцы, а затым адпаведныя радкі матрыцы. Напрыклад, наступны файл уяўляе сабой дзве матрыцы рацыянальных лікаў, 3 х 3 матрыцы вынікаюць 2 х 2-матрыца:
- /* rational matrix file */
- 2
- 3 3
- 2/3 5 -7/8
- 1/2 12 -5
- 7 6 4
- 2 2
- 1 0
- 0 1
Каментары на алгарытмы, якія выкарыстоўваюцца ў CMAT
- Трукі П. Henrici, згаданых у [ Buc ] [200-201] выкарыстоўваюцца для паскарэння аперацыі складання і множання рацыянальных лікаў.
- Гаўса-Жардана метад выкарыстоўваецца для знаходжання адноўленай форме радкі эшалона і для рашэння сістэмы лінейных раўнанняў над ўсе тры поля.
- Спалучаны, зваротная, вызначальнік і характарыстычных паліном матрыцы рацыянальных лікаў або рацыянальных комплексу знаходзяцца па метадзе Фаддеева-Леверье. (Гл. [ Fad ] [177-181].)
Для матрыц над ? р, мы выкарыстоўваем мадыфікацыю алгарытму ў сувязі з Фробениуса (гл. [ MCW ] [168-175]), каб знайсці характарыстычных паліном.
За ? р, Гаўса-Жардана выкарыстоўваецца алгарытм, каб знайсці зваротную і вызначальнік матрыцы. Спалучаны знаходзіцца карыстаючыся тым, што ADJ (A) = 0, калі рангу () & Le N-2, ранг (прил. ()) = 1, калі ранг () = N-1 і ADJ (A) = (Det ()) -1 ў адваротным выпадку. - Зваротная цэлалікавай матрыца M мод знойдзеныя з дапамогай далучанай матрыцы і множання мод М зваротнай вызначальніка мод м.
- Мінімальны паліном М (х) п х п матрыцы знаходзіцца па пошуку меры натуральнае т такое, што M прадставім у выглядзе лінейнай камбінацыі матрыц я п,..., т-1.
Гэта робіцца шляхам разгорткі матрыцы Я,..., п г у калонку вектараў на 1 і R & Le Le м і вырашаючы раўнанне
[0] Я +···+ [R-1] г-1 = R
як сістэму раўнанняў N 2 у г невядомых. Сістэма не будзе супадаць для 1 ? R ? M, але будзе мець адзінае рашэнне, калі г = т, што дае мінімальны паліном M (X) = X т-[М-1] х М-1 - · · · - [0]. - Кананічнай форме Сміта знаходзіцца па алгарытму [ Хар ] [111-113]. Хутчэй алгарытмы існуюць (гл. [ Lu2 ]).
- Факторизация паліномаў ? р [х] ажыццяўляецца з дапамогай метаду знаходжання нетрывіяльных фактар ??у сувязі з П. Камион (гл. [ Cam ]). Гэта выкарыстоўваецца ў спалучэнні з Берлекэмпа матрыца палінома. Інфармацыю па гэтай матрыцы гл. [ КНУ ] [420-429]. (Нашы Берлекэмпа матрыца транспонированная Кнута.)
- Факторизация паліном ? [X] ажыццяўляецца з дапамогай алгарытму, выкладзеных у [ Муз ]. Алгарытм выкарыстоўвае працэдуру ступені мноства выпрабаванняў, якія часам адкрывае непрыводнае да больш складаных іспытаў занятыя. Hensel-Цассенхауза квадратычным і лінейныя ўзняцця выкарыстоўваюцца для атрымання факторизации / (х) па модулю высокай ступенню простага чысла. Ступені мноства выпрабаванняў таксама мае ўплыў скарачэння колькасці выпрабаванняў падраздзяленняў, неабходных для вызначэння магчымых фактараў над ? [X] пасля ўзняцця будуць завершаны.
- Факторизация паліном ? (я) [X] ажыццяўляецца з дапамогай алгарытму, выкладзеных у [ Тра ].
- Квадратаў алгарытм раскладання для паліномаў ў сувязі з DYY Yun і апісана ў [ КНУ ] [631-632] выкарыстоўваецца.
- Непрыводнае палінома зададзенай ступені (MOD р) пабудаваны з выкарыстаннем імавернаснага алгарытму з [ Lu2 ] [145-149].
- Алгарытм, які выкарыстоўваецца для разліку выніковай двух паліномаў з цэлымі каэфіцыентамі, выкладзеныя ў артыкуле Р. Лоос ў [ Buc ] [130].
- Кругавы паліном п-Пхи (х) вылічаецца з выкарыстаннем алгарытму з [ Lu2 ] [354-356], што, у сваю чаргу заснаваны на рахунак у [ Lu1 ] [58-63]. Факторынг Phi р п -1 (х) над ? р [х] дае {? (P N -1)} / п унітарнага прымітыўных паліномаў ступені п над ? р.
- М-й ступені з рацыянальнага ліку вылічаецца з выкарыстаннем алгарытму з [ MA1 ].
Спасылкі
- [ Buc ] В. Бухбергера, GE Колінз і Р. Лоос (рэдактары)
Кампутарнай алгебры, Сімвалічныя і алгебраічных вылічэнні.
1972, Springer-Verlag Wien, Нью-Ёрк. - [ Cam ] П. Камион. дэтэрмінаванай алгарытм факторизации палінома F Q [X].
Аналы дыскрэтнай матэматыкі 17 (1983) 149-157. - [ Fad ] В. Н. Фаддеева. вылічальных метадаў лінейнай алгебры.
1959, Давер, Нью-Ёрк. - [ Fla ] H. Фляндрыі. Навукова Паскаль.
1984 г. Рестон Publishing Company, Рестон, штат Вірджынія. ( Second Edition Birkhauser, 1995). - [ Хар ] Хартл і К Hawkes. кольцы, модулі і лінейная алгебра.
1970, Радыё і сувязь, Лондан. - [ КНУ ] Кнут. Мастацтва праграмавання, том 2.
Другое выданне 1981 года, Addison-Wesley Publishing Company, Чытанне, штат Масачусэтс. - [ Lu1 ] H. Люнебург. Galoisfelder, Kreisteilungskorper унд Schieberegisterfolgen.
1979, Б. І. Wissenschaftsverlag, Мангейм / Wien / Цюрых. - [ Lu2 ] H. Люнебург. На Rational нармальная форма эндоморфизмов.
1987, Б. І. Wissenschaftsverlag, Мангейм / Wien / Цюрых. - [ MA1 ] КР Мэттьюс. MTH карані вылічальных.
Каледж матэматыкі Journal 19 (1988) 174-176. - [ Ma2 ] КР Мэттьюс. Рацыянальны алгарытм кананічныя формы.
Mathematica Bohemica 117 (1992) 315-324 ( PDF-файл ) - [ MCW ] WA McWorter, малодшы Алгарытм характарыстычных паліном.
Матэматыка Magazine 56 (1983) 168-175. - [ Муз ] Массер DR. шматмернага паліномны факторизации.
JACM 22 (1975) 291-308. - [ Tra ] Трагер BM. алгебраічных Факторынг і рацыянальнай інтэграцыі функцый.
Працы 1976 ACM сімпозіум па Сімвалічныя і алгебраічных вылічэнні, 219-226.
ПАЦВЯРДЖЭННЕ
Я ўдзячны за гэтыя гады за дапамогу ў выпраўленні памылак і паляпшэння распрацоўкі праграм шчодра дае Майкл Форбс (у першыя гады), Пітэр Адамс і Шон Викери.
Электронная пошта
http://www.numbertheory.org/keith.html
Апошняе змяненне 6 мая 2011Popular Linkscockroach questions, adaptive transform coding, legal theory, xfoil program, analytic bibliography belorussian, moving to horizontal navigation, website host, programming language, traceviz rubi script, connection string aspnet, line breaking for browsers, vps web host, wordpress web host, papuaweb technical help, combine pdf 5.2