{VERSION 3 0 "SUN SPARC SOLARIS" "3.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 }{CSTYLE "Hyperlink" -1 17 "" 0 1 0 128 128 1 2 0 1 0 0 0 0 0 0 } {CSTYLE "2D Comment" 2 18 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "S an Serif" -1 27 "Helvetica" 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 256 "Courier" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 257 "Tim es" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 258 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 259 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 } {CSTYLE "" -1 260 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 261 "Times" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 262 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "ttHyperlink" -1 263 "Courier" 0 0 0 128 128 1 0 1 1 0 0 0 0 0 0 }{CSTYLE "" 27 264 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" 27 265 "" 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 266 "courier" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 267 "cou rier" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 268 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 269 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 270 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 271 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 272 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 273 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 274 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 275 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 276 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 277 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 278 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 279 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 280 "" 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 281 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 282 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 283 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 284 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 285 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 286 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 287 "" 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 }{CSTYLE "" -1 288 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 289 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 }{CSTYLE "" -1 290 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 }{PSTYLE "Normal " -1 0 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Text Output" -1 2 1 {CSTYLE "" -1 -1 "Courier" 1 10 0 0 255 1 0 0 0 0 0 1 3 0 3 }1 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Heading 1" 0 3 1 {CSTYLE "" -1 -1 "" 1 18 0 0 0 0 0 1 0 0 0 0 0 0 0 }1 0 0 0 8 4 0 0 0 0 0 0 -1 0 }{PSTYLE "Heading 2" 3 4 1 {CSTYLE "" -1 -1 "" 1 14 0 0 0 0 0 0 0 0 0 0 0 0 0 }0 0 0 -1 8 2 0 0 0 0 0 0 -1 0 }{PSTYLE "Heading 3" 4 5 1 {CSTYLE "" -1 -1 "" 1 12 0 0 0 0 1 0 0 0 0 0 0 0 0 }0 0 0 -1 0 0 0 0 0 0 0 0 -1 0 }{PSTYLE "War ning" 2 7 1 {CSTYLE "" -1 -1 "" 0 1 0 0 255 1 0 0 0 0 0 0 1 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Maple Output" 0 11 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 3 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "" 11 12 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }1 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Title" 0 18 1 {CSTYLE "" -1 -1 "" 1 18 0 0 0 0 0 1 1 0 0 0 0 0 0 }3 0 0 -1 12 12 0 0 0 0 0 0 19 0 }{PSTYLE "Author" 0 19 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 0 0 -1 8 8 0 0 0 0 0 0 -1 0 }{PSTYLE "Heading 4" 5 20 1 {CSTYLE "" -1 -1 "" 1 10 0 0 0 0 1 0 0 0 0 0 0 0 0 }0 0 0 -1 0 0 0 0 0 0 0 0 -1 0 }{PSTYLE "" 0 256 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "" 18 257 1 {CSTYLE "" -1 -1 "" 1 24 0 0 0 0 0 0 2 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "" 11 258 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }1 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "" 7 259 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "" 7 260 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "" 0 261 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }} {SECT 0 {PARA 257 "" 0 "" {TEXT 27 25 "Laboratorio di Matematica" }} {PARA 19 "" 0 "" {TEXT 27 17 "Domenico Luminati" }}{PARA 256 "" 0 "" {TEXT 27 14 "a.a. 1999/2000" }}{PARA 0 "" 0 "" {HYPERLNK 17 "Lezione 1 " 1 "" "l1" }{TEXT -1 0 "" }}{PARA 0 "" 0 "" {HYPERLNK 17 "Lezione 2" 2 "" "l2" }{TEXT -1 0 "" }}{PARA 0 "" 0 "" {HYPERLNK 17 "Lezione 3" 2 "" "l3 " }{TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{SECT 0 {PARA 3 "" 0 "l1" {TEXT 27 47 "Lezione 1: aritmetica dei numeri e dei \+ polinomi" }}{PARA 20 "" 0 "" {TEXT 27 77 "(28.9.1999 h. 8.30-10.30, 29 .9.1999 h. 14.30-18.30, 30.9.1999 h. 14.30-18.30)" }{TEXT -1 0 "" }} {SECT 0 {PARA 4 "" 0 "" {TEXT 27 20 "Istruzioni coinvolte" }}{PARA 0 " " 0 "" {TEXT 0 11 "+ - * / ^ !" }}{PARA 0 "" 0 "" {TEXT 0 29 "iquo ire m gcd ifactor isprime" }}{PARA 0 "" 0 "" {TEXT 0 14 "quo rem factor" } }{PARA 0 "" 0 "" {TEXT 0 27 "expand normal simplify subs" }}{PARA 0 " " 0 "" {TEXT 0 11 "evalf evalb" }}{PARA 0 "" 0 "" {TEXT 0 9 "for while " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{SECT 0 {PARA 3 " " 0 "l2" {TEXT 27 56 "Lezione 2: soluzione di equazioni e sistemi di e quazioni" }}{PARA 20 "" 0 "" {TEXT 27 53 "( 6.10.1999 h. 16.30-18.30, \+ 7.10.1999 h. 16.30-18.30)" }{TEXT -1 0 "" }}{SECT 0 {PARA 4 "" 0 "" {TEXT 27 20 "Istruzioni coinvolte" }}{PARA 0 "" 0 "" {TEXT 0 30 "solve RootOf I evala allvalues" }}{PARA 0 "" 0 "" {TEXT 0 19 "[ ,..., ] \{ \+ ,..., \}" }}}{SECT 0 {PARA 4 "" 0 "" {TEXT 27 45 "Equazioni polinomial i a coefficienti costanti" }}{PARA 0 "" 0 "" {TEXT -1 11 "Il comando \+ " }{TEXT 0 5 "solve" }{TEXT -1 54 " permette di risolvere equazioni po linomiali (e non) ." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "solve ( 3 * x = 5, x);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "solve ( 3 * x^2 - 5 * x + 2 = 0 , x);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 33 "solve ( x^2 - 2 * x + 2 = 0 , x);" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 39 "solve ( x^3 - 2 * x^2 - x + 2= 0 , x );" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 39 "solve ( x^3 - 2 * x^2 - x + 3= 0 , \+ x );" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 44 "solve ( x^4 + x^3 + x^2 + 2*x + 1 = 0 , x );" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "solve ( x^5 + x^3 + x^2 + x + 1 = 0 , x);" }{TEXT -1 0 "" }}} {SECT 0 {PARA 5 "" 0 "" {TEXT 27 12 "Osservazioni" }{TEXT -1 1 ":" }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 68 "In alcuni casi si ottengono dei risultati che fanno uso del simbolo " }{TEXT 256 1 "I" }{TEXT 257 1 "." }{TEXT -1 17 " Questo denota l'" }{TEXT 260 17 "unit\340 immaginaria" }{TEXT -1 60 ": elevato al quadrato d \340 -1, ossia di risolvere l'equazione " }{XPPEDIT 18 0 "x^2+1 = 0;" "6#/,&*$%\"xG\"\"#\"\"\"\"\"\"F(\"\"!" }{TEXT -1 2 ". " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 4 "I^2;" }}}{PARA 0 "" 0 "" {TEXT -1 249 "Evidentemente non \350 un numero reale (un numero reale elevato a l quadrato \350 sempre positivo). Si pu\362 provare che l'aggiunta di \+ tale elemento ai numeri reali (ossia considerare i numeri complessi) \+ permette di risolvere tutte le equazioni polinomiali." }}{PARA 0 "" 0 "" {TEXT -1 58 "In altri casi si ottiene come risposta una cosa del ti po: " }{XPPEDIT 18 0 "RootOf(_Z^5+_Z^3+_Z^2+_Z+1);" "6#-%'RootOfG6#,,* $%#_ZG\"\"&\"\"\"*$F(\"\"$F**$F(\"\"#F*F(F*\"\"\"F*" }{TEXT -1 238 ", \+ che sembra quasi una presa in giro (\"root of\" significa \"radice di \"). In realt\340 Maple sta ha creato un oggetto simbolico che ha la p ropriet\340 di essere una radice del polinomio in questione e che pu \362 essere poi manipolato algebricamente." }}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 45 "r:= solve ( x^5 + x^3 + x^2 + x + 1 = 0 , x);" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "r^5 +r^3 + r^2 + r + 1;" }}} {PARA 0 "" 0 "" {TEXT -1 144 "Sembrerebbe che quanto appena detto non \+ sia vero, infatti, bisogna dire esplicitamente di valutare algebricame nte l'espressione, con il comando " }{TEXT 0 5 "evala" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "evala(r^5 +r^3 + r^2 + r + 1);" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "evala(r^5 +r^3 + r^2 + r ); " }}}{PARA 0 "" 0 "" {TEXT -1 75 "Perch\351 viene generato tale oggett o simbolico? Semplicemente perch\351 esitono " }{HYPERLNK 17 "formule \+ risolutive" 1 "formule_risolutive.mws" "" }{TEXT -1 68 " per le equazi oni di grado 1, 2, 3, 4, mentre si pu\362 dimostrare che " }{TEXT 259 71 "non esiste una tale formula per equazioni di grado superiore al q uarto" }{TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 100 "Nel caso si abb ia bisogno dei valori numerici delle radici di un polinomio, si pu\362 usare il comando " }{TEXT 0 9 "allvalues" }{TEXT -1 101 ", che sostit uisce in una espressione tutte le espressioni di tipo RootOf con dei v alori approssimati " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "allva lues(r);" }}}{PARA 12 "" 1 "" {TEXT -1 47 "Si osservi che per l'equazi one di quinto grado " }{XPPEDIT 18 0 "r^5+r^3+r^2+r+1 = 0;" "6#/,,*$% \"rG\"\"&\"\"\"*$F&\"\"$F(*$F&\"\"#F(F&F(\"\"\"F(\"\"!" }{TEXT -1 55 " si sono trovate 5 radici. Questo \350 un fatto generale: " }{TEXT 258 93 "una equazione di grado n ha esattamente n radici (complesse co ntate con la loro molteplicit\340)" }{TEXT -1 2 ". " }}{PARA 258 "" 0 "" {TEXT -1 228 "Bench\351 la formula risolutiva delle equazioni di qu arto grado esista, i programmatori di Maple hanno trovato conveniente \+ far usare RootOf come output anche per tali equazioni quando i risult ati sono troppo complessi. Il comando " }{TEXT 0 9 "allvalues" }{TEXT -1 84 " pu\362 essere usato anche per forzare Maple ad usare la formul a risolutiva. Ad esempio" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 " r:=solve(x^4+ 3 * x^ 3 + 2 * x +3 =0,x);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "allvalues(r);" }}}}}{SECT 0 {PARA 4 "" 0 "" {TEXT 27 24 "Equazioni con parametri " }}{PARA 0 "" 0 "" {TEXT -1 11 "Il comand o " }{TEXT 0 5 "solve" }{TEXT -1 74 " permette di risolvere anche equa zioni in cui siano presenti dei parametri" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "equazione:= a*x=b:\nsoluzione:=solve(equazione,x);" } }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 75 "Bisogna per\362 prestare attenzi one ad interpretare il risultato: l'equazione " }{XPPEDIT 18 0 "ax = b ;" "6#/%#axG%\"bG" }{TEXT -1 18 " ha per soluzione " }{XPPEDIT 18 0 "b /a;" "6#*&%\"bG\"\"\"%\"aG!\"\"" }{TEXT -1 4 " se " }{XPPEDIT 18 0 "a; " "6#%\"aG" }{TEXT -1 3 " e " }{XPPEDIT 18 0 "b;" "6#%\"bG" }{TEXT -1 16 " non sono 0. Se " }{XPPEDIT 18 0 "a = 0;" "6#/%\"aG\"\"!" }{TEXT -1 4 " e " }{XPPEDIT 18 0 "b;" "6#%\"bG" }{TEXT -1 37 " non \350 0 no n ha soluzioni, mentre se " }{XPPEDIT 18 0 "a = 0;" "6#/%\"aG\"\"!" } {TEXT -1 3 " e " }{XPPEDIT 18 0 "b = 0;" "6#/%\"bG\"\"!" }{TEXT -1 99 " ha infinite soluzioni. Per\362 se diamo questii valori particolari \+ otteniamo dei risultati inattesi:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "subs(a=0,soluzione);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "subs(a=0,b=0,soluzione);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 55 "In effetti la soluzione che si ottiene non ha senso se " }{XPPEDIT 18 0 "a = 0;" "6#/%\"aG\"\"!" }{TEXT -1 92 ", quindi bisogna prima sostituire i valori dei parametri nell'equazione e quindi risol verla." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 56 "equazione1 := sub s (a=0,equazione):\nsolve(equazione1,x);" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 135 "Non dare output \350 il modo che ha Maple per dire che n on ci sono soluzioni, ma come abbiamo gi\340 detto ci\362 non \350 sem pre vero, in effetti " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 60 "eq uazione2 := subs (a=0,b=0,equazione):\nsolve(equazione2,x);" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 47 "e questo \350 il modo che ha Maple per dire che a " }{XPPEDIT 18 0 "x;" "6#%\"xG" }{TEXT -1 35 " si pu \362 dare un valore arbitrario. " }}}}{SECT 0 {PARA 4 "" 0 "sistemi" {TEXT 27 30 "Sistemi in una o pi\371 incognite" }}{PARA 0 "" 0 "" {TEXT -1 79 "Si possono risolvere sistemi di pi\371 equazioni in una o pi\371 incognite ad esempio" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 48 "solve(\{3 * x + 2 * y = 1, 2 * x + y = 3\},\{x,y\});" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "solve(x + 2* y=1,\{x,y\});" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 46 "solve( \{ x + y + z=2, x + 2 * z = 3\},\{x,y,z\});" }}}{PARA 0 "" 0 "" {TEXT -1 70 "Nel secondo es empio il risultato va interpretato nel modo seguente: a " }{XPPEDIT 18 0 "y;" "6#%\"yG" }{TEXT -1 75 " si pu\362 dare un valore arbitrario in corrispondenza del quale si determina " }{XPPEDIT 18 0 "x;" "6#%\" xG" }{TEXT -1 63 ". In modo analogo si interpreta la soluzione nel ter zo esempio." }}{SECT 0 {PARA 5 "" 0 "" {TEXT 27 12 "Osservazioni" }} {PARA 0 "" 0 "" {TEXT -1 13 "La notazione " }{TEXT 0 14 "\{eq1, eq2,.. .\}" }{TEXT -1 59 " sta ad indicare l'insieme delle equazioni, e analo gamente " }{TEXT 0 15 "\{var1,var2,...\}" }{TEXT -1 172 " sta a denota re l'insieme delle variabili rispetto a cui si vuole risolvere il sist ema o l'equazione. Cambiare l'insieme delle variabili, cambia drastica mente il risultato." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "solve (a * x = b , x);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "solve(a * x = b , \{a,b,x\});" }}}{PARA 0 "" 0 "" {TEXT -1 63 "Nel secondo ca so si possono assegnare arbitrariamente valori a " }{XPPEDIT 18 0 "x; " "6#%\"xG" }{TEXT -1 3 " e " }{XPPEDIT 18 0 "a;" "6#%\"aG" }{TEXT -1 31 " da cui si ricava il valore di " }{XPPEDIT 18 0 "b;" "6#%\"bG" } {TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 215 "Nel comando solve si pu \362 fare a meno di specificare le incognite rispetto a cui si vuole r isolvere l'equazione, ma in tal caso tutto ci\362 che non \350 una cos tante viene automaticamente considerato un'incognita, per cui" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "solve ( x^2 = 1);" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 "solve(a * x = b);" }}}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{SECT 0 {PARA 20 "" 0 "insiemi_liste" {TEXT -1 1 "I" }{TEXT 27 14 "nsiemi e liste" }}{PARA 0 "" 0 "" {TEXT -1 20 " Un'oggetto del tipo " }{HYPERLNK 17 "\{a,b, ..\}" 2 "set" "" }{TEXT 261 151 " sta ad indicare l'insieme i cui elementi sono a, b, ... (com e nella notazione matematica, quindi non sorprende il risultato delle \+ seguenti operazioni:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "eval b(\{1,2,3,4\}=\{2,3,1,4\});" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 35 "evalb(\{1,1,1,2,3,4,4,4\}=\{1,2,3,4\});" }}}{PARA 0 "" 0 "" {TEXT -1 33 "Divesi sono gli oggetti del tipo " }{HYPERLNK 17 "[a,b,...]" 2 "list" "" }{TEXT -1 17 ", che sono detti " }{TEXT 262 5 "liste" } {TEXT -1 71 ", per i quali hanno importanza sia l'ordine che le ripeti zioni. Quindi " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 27 "evalb([1,2 ,3,4]=[2,3,1,4]);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 35 "evalb( [1,1,1,2,3,4,4,4]=[1,2,3,4]);" }}}}}{PARA 0 "" 0 "" {TEXT -1 120 "Come per le equazioni, a maggior ragione per i sistemi bisogna prestare at tenzione quando questi dipendono da parametri." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "sistema:=\{k * x + y = k , x + k * y =1\}:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "solve( sistema , \{x,y\});" }}}{PARA 0 "" 0 "" {TEXT -1 89 "Apparentemente sembrerebbe che il sist ema ammetta una unica soluzione per ogni valore di " }{XPPEDIT 18 0 "k ;" "6#%\"kG" }{TEXT -1 4 ". Ma" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "sistema1:= subs(k=1,sistema);\nsolve( sistema1 , \{x,y\});" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 56 "sistema2:= subs(k=-1,sistema );\nsolve( sistema2 , \{x,y\});" }}}{PARA 0 "" 0 "" {TEXT -1 4 "Per " }{XPPEDIT 18 0 "k = 1;" "6#/%\"kG\"\"\"" }{TEXT -1 3 " e " }{XPPEDIT 18 0 "k = -1;" "6#/%\"kG,$\"\"\"!\"\"" }{TEXT -1 91 " si ottengono inf inite soluzioni. Come accorgersi che ci sono questi valori particolari di " }{XPPEDIT 18 0 "k;" "6#%\"kG" }{TEXT -1 129 " ? Un trucco che in alcuni casi pu\362 funzionare \350 quello di sostituire i termini not i del sistema con altri parametri e risolvere:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "sistema:=\{k * x + y = a , x + k * y = b\}:" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "solve( sistema , \{x,y\});" }}}{PARA 0 "" 0 "" {TEXT -1 40 "ecco che \350 comparso un avvertimento . Se " }{XPPEDIT 18 0 "k^2-1 = 0;" "6#/,&*$%\"kG\"\"#\"\"\"\"\"\"!\"\" \"\"!" }{TEXT -1 22 " ci sono dei problemi." }}}}{SECT 0 {PARA 3 "" 0 "l3 " {TEXT 27 28 "Lezione 3: vettori e matrici" }}{PARA 20 "" 0 "" {TEXT 27 103 "( 21.10.1999 h 8.30-10.30, 22.10.1999 h. 16.30-18.30, 23 .10.1999 h. 16.30-18.30, 28.10.1999 8.30-10.30)" }{TEXT -1 0 "" }} {SECT 0 {PARA 4 "" 0 "" {TEXT 27 20 "Istruzioni coinvolte" }}{PARA 0 " " 0 "" {TEXT 0 42 "array matrix vector linsolve trace inverse" }} {PARA 0 "" 0 "" {TEXT 0 14 "&* evalm equal" }}{PARA 0 "" 0 "" {TEXT 0 21 "randmatrix randvector" }}{PARA 0 "" 0 "" {TEXT 0 4 "with" }{TEXT -1 0 "" }}}{PARA 0 "" 0 "" {TEXT 0 0 "" }}{PARA 0 "" 0 "" {TEXT -1 11 "Il comando " }{HYPERLNK 17 "with" 2 "with" "" }{TEXT -1 33 " serve a \+ caricare dei pacchetti (" }{HYPERLNK 17 "packages" 2 "package" "" } {TEXT -1 73 ") che definiscono ulteriori istruzioni di Maple. Ad esemp io il pacchetto " }{HYPERLNK 17 "linalg" 2 "linalg" "" }{TEXT -1 56 " \+ carica delle istruzioni connesse con l'algebra lineare." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 13 "with(linalg):" }}}{SECT 0 {PARA 4 " " 0 "" {TEXT 27 7 "Vettori" }}{PARA 0 "" 0 "" {TEXT -1 14 "L'istruzion e " }{HYPERLNK 17 "vector" 2 "linalg[vector]" "" }{TEXT -1 37 " serve per creare vettori. Ad esempio" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "v := vector([3,2,3,-1]);" }}}{PARA 0 "" 0 "" {TEXT -1 16 "crea il vettore " }{XPPEDIT 18 0 "v;" "6#%\"vG" }{TEXT -1 15 " di coordina te " }{XPPEDIT 18 0 "3,2,3,-1;" "6&\"\"$\"\"#\"\"$,$\"\"\"!\"\"" } {TEXT -1 19 ". \nSe ora scriviamo" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 2 "v;" }}}{PARA 0 "" 0 "" {TEXT -1 183 "non vediamo, come ci saremmo aspettati il vettore con tutte le sue coordinate. Per vede re il vettore nella sua interezza, bisogna dire esplicitamente a Mapl e di farlo con il comando " }{HYPERLNK 17 "evalm" 2 "evalm" "" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "evalm(v);" }}}{PARA 0 "" 0 " " {TEXT -1 50 "Per estrarre le coordinate di un vettore si usa l'" } {HYPERLNK 17 "operazione di selezione" 2 "selection" "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "v[1];" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "v[2];" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "v[3 ];" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "v[4];" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "v[5];" }}}{SECT 0 {PARA 7 "" 0 "" {TEXT 264 21 "Perch\351 questo errore?" }{TEXT 265 0 "" }}{PARA 0 "" 0 "" {TEXT -1 62 "Quest'ultima istruzione genera un errore in quanto i l vettore " }{XPPEDIT 18 0 "v;" "6#%\"vG" }{TEXT -1 79 " ha solo quatt ro coordinate., e noi gli abbiamo chiesto di mostrarci la quinta." }}} {PARA 0 "" 0 "" {TEXT -1 30 "Se vogliamo vedere il vettore " } {XPPEDIT 18 0 "v;" "6#%\"vG" }{TEXT -1 20 " nella sua interezza" }} {PARA 0 "" 0 "" {TEXT -1 49 "Ci sono modi alternativi di definire dei \+ vettori:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 15 "v := vector(5); " }}}{PARA 0 "" 0 "" {TEXT -1 4 "ora " }{XPPEDIT 18 0 "v;" "6#%\"vG" } {TEXT -1 70 " \350 un vettore con 5 componenti che non sono state asse gnate, vediamolo" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "evalm(v); " }{TEXT -1 0 "" }}}{PARA 0 "" 0 "" {TEXT -1 29 "e che possiamo ora as segnare:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "v[1]:=4 ; v[2]:= 5 ;\nevalm(v);" }}}{PARA 0 "" 0 "" {TEXT -1 15 "Un'altro modo \350" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "v:= vector ( 6 , [1,2,3,4]); " }}}{PARA 0 "" 0 "" {TEXT -1 100 "in questo modo si \350 creato un ve ttore a 6 componenti di cui si sono state assegnate solo le prime 4." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "v:= vector ( 6 , [6,3,3,4, 2,5,1,90]);" }}}{SECT 0 {PARA 259 "" 0 "" {TEXT 27 21 "Perch\351 quest o errore?" }}{PARA 0 "" 0 "" {TEXT -1 76 "Abbiamo cercato di assegnare 8 componenti di un vettore che ne aveva solo 6." }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT 27 7 "Matrici" }}{PARA 0 "" 0 "" {TEXT -1 13 "L'istruzio ne " }{HYPERLNK 17 "matrix" 2 "linalg[matrix]" "" }{TEXT -1 76 " serve a definire delle matrici, ad esempio se si vuole definire la matrice \+ " }{XPPEDIT 18 0 "matrix([[1, 2, 3], [4, 5, 6]]);" "6#-%'matrixG6#7$7% \"\"\"\"\"#\"\"$7%\"\"%\"\"&\"\"'" }{TEXT -1 21 " il comando da dare \+ \350" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "M := matrix(2,3,[1,2 ,3,4,5,6]);" }}}{PARA 0 "" 0 "" {TEXT -1 192 "Ossia matrix richiede tr e argomenti: vengano specificati prima il numero di righe, poi il nume ro di colonne e quindi la lista dei suoi elementi letti dall'alto in b asso e da sinistra a destra." }}{PARA 0 "" 0 "" {TEXT -1 61 "Come per \+ i vettori si possono usare delle forme alternative:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "M:= matrix ( 7, 6);" }}}{PARA 0 "" 0 "" {TEXT -1 15 "in questo modo " }{XPPEDIT 18 0 "M;" "6#%\"MG" }{TEXT -1 61 " \350 una matrice 7 x 6 i cui elementi non sono stati assegnati:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 9 "evalm(M);" }}}{PARA 0 "" 0 "" {TEXT -1 7 "O anche" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "M: =matrix(4,3,[1,2,3,4,5,6,7]);" }}}{PARA 0 "" 0 "" {TEXT -1 84 "che ris ulta essere una matrice 4 x 3 in cui sono stati assegnati i primi 7 el ementi." }}}{SECT 0 {PARA 4 "" 0 "" {TEXT 27 5 "Array" }}{PARA 0 "" 0 "" {TEXT -1 192 "I vettori e le matrici sono casi particolari di ogget ti pi\371 generali chiamati array, e le istruzioni vector e matrix alt ro non sono che abbreviazioni di alcuni usi particolari dell'istruzion e " }{HYPERLNK 17 "array" 2 "array" "" }{TEXT -1 1 "." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 57 "w := array (1..4,[4,1,-2,7]);\nv := vecto r (4,[4,1,-2,7]);" }}}{PARA 0 "" 0 "" {TEXT -1 17 "Confrontiamo ora " }{XPPEDIT 18 0 "v;" "6#%\"vG" }{TEXT -1 3 " e " }{XPPEDIT 18 0 "w;" "6 #%\"wG" }{TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "eva lb(v=w);" }}}{PARA 0 "" 0 "" {TEXT -1 187 "Sebbene i due oggetti siano uguali, abbiamo ottenuto risposta negativa, questo perch\351 evalb es egue un test troppo superficiale. Per confrontare matrici, vettori, bi sogna usare il comando " }{HYPERLNK 17 "equal" 2 "equal" "" }{TEXT -1 2 ". " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "equal(v,w);" }}} {PARA 0 "" 0 "" {TEXT -1 28 "Analogamente con le matrici:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 82 "A:=matrix(3,2,[1,2,3,4,5,6]):\nB:=a rray(1..3,1..2,[[1,2],[3,4],[5,6]]):\nequal(A,B);" }}}{PARA 0 "" 0 "" {TEXT -1 277 "\n\310 abbastanza chiara, dagli esempi la sintassi dell' istruzione array: si specificano gli intervalli su cui far variare gli indici e quindi si mette la lista degli elementi nel caso delle matri ci gli elementi sono dati come lista di liste, che descrivono le righe della matrice." }}{PARA 0 "" 0 "" {TEXT -1 55 "Si possono per\362 ind icizzare gli array anche su diversi " }{HYPERLNK 17 "range" 2 "range" "" }{TEXT -1 62 " di interi (non necessariamente che inizino con 1). S crivendo " }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "w := array (-1. .2,[1,2,3,4]):" }}}{PARA 0 "" 0 "" {TEXT -1 89 "si ottiene un vettore \+ in cui le coordinate non sono indicizzate da 1,2,3,4 ma da -1,0,1,2" } }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "w[-1];w[0];w[1];w[2];" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 5 "w[3];" }}}{SECT 0 {PARA 260 " " 0 "" {TEXT 27 21 "Perch\350 questo errore?" }}{PARA 0 "" 0 "" {TEXT -1 110 "Abbiamo chiesto di mostrare l'elemento indicizzato da 3 di un \+ array in cui gli indici variano nel range -1..0." }}}{PARA 0 "" 0 "" {TEXT -1 61 "Si possono definire anche array a 3 o pi\371 indici, ad e sempio:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 117 "t:=array(-1..0,8 ..10,-11..-8,[\n[[1,2,3,4],[5,6,7,8],[9,10,11,12]],\n[[-1,-2,-3,-4],[- 5,-6,-7,-8],[-9,-10,-11,-12]]\n]):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "t[0,9,-9];" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT 27 32 " Costruzione di matrici e vettori" }}{PARA 0 "" 0 "" {TEXT -1 115 "Oltr e a creare matrici/vettori assegnando esplicitamente tutte le sue comp onenti si pu\362 usare un'altra costruzione:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "A:=matrix(2,3,funz);" }}}{PARA 0 "" 0 "" {TEXT -1 72 "\350 stata creata in questo modo una matrice che al posto i,j ha l 'oggetto " }{TEXT 266 9 "funz(i,j)" }{TEXT -1 5 ". Se " }{TEXT 267 4 " funz" }{TEXT -1 116 " fosse stata una funzione avremma avuto la matric e con al posto i,j la funzione calcolata in tali valori. Ad esempio" } }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 42 "funz := (i,j) -> i+j:\nA:=m atrix(2,3,funz);" }}}{PARA 0 "" 0 "" {TEXT -1 41 "Ad esempio si pi \362 definire una funzione " }{TEXT 0 5 "id(n)" }{TEXT -1 54 " che gen eri la matrice identit\340 nxn nel seguente modo:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 59 "id := n -> matrix(n,n,(i,j) -> if i = j then \+ 1 else 0 fi ):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 7 " id(7);" } }}{PARA 0 "" 0 "" {TEXT -1 166 "Un metodo molto pi\371 efficiente per \+ generare matrici identit\340 \350 quello di sfruttare alcune opzioni d el comando array, e precisamente dando il comando array nella forma" } }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 26 "array(identity,1..5,1..5); " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "id := n -> array(identi ty,1..n,1..n);" }}}{PARA 0 "" 0 "" {TEXT -1 44 "Pu\362 essere utile ge nerare matrici e vettori " }{TEXT 268 7 "casuali" }{TEXT -1 44 ", a ta l fine si possono usare le istruzioni " }{HYPERLNK 17 "ramndmatrix" 2 "randmatrix" "" }{TEXT -1 3 " e " }{HYPERLNK 17 "randvector" 2 "randve ctor" "" }{TEXT -1 1 ":" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 14 "r andvector(7);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "randmatrix (3,7);" }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT 27 25 "Operazioni con le mat rici" }}{PARA 0 "" 0 "" {TEXT -1 56 "Per sommare due matrici/vettori s i usa il normale segno " }{TEXT 0 1 "+" }{TEXT -1 77 ", mentre per mo ltiplicare due matrici (matrice con vettore) si usa il segno " }{TEXT 0 2 "&*" }{TEXT -1 1 "." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 50 "A := matrix(3,5):\nB := matrix(3,7):\nA + B;\nA &* B;" }}}{PARA 0 "" 0 "" {TEXT -1 78 "Per ottenere i risultati bisogna chiederlo esplicitame nte con il comando evalm" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 " evalm(A + B);\nevalm (A &* B);" }}}{SECT 0 {PARA 7 "" 0 "" {TEXT 27 21 "Perch\351 questi errori?" }}{PARA 0 "" 0 "" {TEXT -1 89 "Le matric i A e B hanno dimensioni tali che non possono essere n\351 sommate n \351 moltiplicate." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 168 "A := matrix (3,7,\n[1,2,3,4,5,6,7,\n9,8,7,6,5,4,3,\n-1,-2,-3,-4,-5,-6,-7] ):\nB := matrix (3,7,\n[-1,-2,-3,-4,-5,-6,-7,\n-9,-8,-7,-6,-5,-4,-3, \n1,2,3,4,5,6,7]):\nevalm(A + B);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "C1 := evalm(A &* id(7));" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 24 "C2 := evalm(id(3) &* A);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "equal ( A , C1 ) and equal ( A , C2 ) ;\n" }}} {PARA 0 "" 0 "" {TEXT -1 35 "In generale il prodotto di matrici " } {TEXT 269 17 "non \350 commutativo" }{TEXT -1 1 ":" }}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 112 "A := matrix( 3,3,[-7,2,3,-4,5,3,-7,11,9]): \nB := matrix( 3,3,[-2,12,31,-14,1,1,0,-32,5]):\nequal(A &* B , B &* A );" }}}{PARA 0 "" 0 "" {TEXT -1 21 "Per Maple il simbolo " }{TEXT 0 2 "&*" }{TEXT -1 186 " denota un prodotto che gode di tutte le propriet \340 formali della moltiplicazione tranne la propriet\340 commutativa, il comando evalm interpreta poi questo simbolo come prodotto di matri ci." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 85 "L' elevamento a potenza di matrici quadrate si esegue semplicemente usand o il simbolo " }{TEXT 0 1 "^" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "A := matrix (2,2,[0,1,1,0]);\nevalm(A^2);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{SECT 0 {PARA 5 "" 0 "" {TEXT 27 10 "La trac cia" }}{PARA 0 "" 0 "" {TEXT -1 87 "La traccia di una matrice quadrata \350 data dalla somma dei suoi elementi sulla diagonale" }}{PARA 261 "" 0 "" {XPPEDIT 18 0 "tr(A) = sum(A[i,i],i = 1 .. n);" "6#/-%#trG6#% \"AG-%$sumG6$&F'6$%\"iGF-/F-;\"\"\"%\"nG" }{TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 84 "il calcolo della traccia di una matrice pu\362 esser e effettueto mediante l'istruzione " }{HYPERLNK 17 "trace" 2 "linalg[t race]" "" }{TEXT -1 1 "." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 17 " trace(id(25750));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "A:=mat rix(100,100,(i,j)->j+i):\ntrace(A);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 74 "A:=matrix(20,20):\nB:=matrix(20,20):\nevalb (trace(A \+ &* B) = trace(B &* A));" }}}{PARA 0 "" 0 "" {TEXT -1 56 "Questo calcol o mostra che prese due matrici arbitrarie, " }{XPPEDIT 18 0 "A;" "6#% \"AG" }{TEXT -1 3 " e " }{XPPEDIT 18 0 "B;" "6#%\"BG" }{TEXT -1 21 " 2 0x20 la traccia di " }{XPPEDIT 18 0 "AB;" "6#%#ABG" }{TEXT -1 28 " coi ncide con la traccia di " }{XPPEDIT 18 0 "BA;" "6#%#BAG" }{TEXT -1 30 ". Questo \350 un fatto generale:\n" }{TEXT 272 5 "Siano" }{TEXT -1 1 " " }{XPPEDIT 18 0 "A;" "6#%\"AG" }{TEXT -1 3 " e " }{XPPEDIT 18 0 "B; " "6#%\"BG" }{TEXT -1 1 " " }{TEXT 273 12 "due matrici " }{XPPEDIT 18 0 "n;" "6#%\"nG" }{TEXT -1 1 "x" }{XPPEDIT 18 0 "n;" "6#%\"nG" }{TEXT -1 1 " " }{TEXT 274 6 "allora" }{TEXT -1 1 " " }{XPPEDIT 18 0 "tr(AB) \+ = tr(BA);" "6#/-%#trG6#%#ABG-F%6#%#BAG" }{TEXT -1 48 ".\n Lo si provi. \nNon \350 per\362 in generale vero che " }{XPPEDIT 18 0 "tr(AB) = tr( A)*tr(B);" "6#/-%#trG6#%#ABG*&-F%6#%\"AG\"\"\"-F%6#%\"BGF," }{TEXT -1 14 ". Per esempio:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 97 "A := m atrix(2,2,[1,0,0,0]):\nB := matrix(2,2,[0,0,0,1]):\ntrace( A &* B) ;\n trace ( B ) * trace( A);" }}}{PARA 0 "" 0 "" {TEXT -1 205 "Le due matr ici dell'esempio sono molto particolari, ci\362 non tragga in inganno. Tentiamo il seguente esperimento facciamo generare matrici quadrate 2 x2 a caso per 500 volte e vediamo quante volte si ha che " }{XPPEDIT 18 0 "tr(AB) = tr(A)*tr(B);" "6#/-%#trG6#%#ABG*&-F%6#%\"AG\"\"\"-F%6#% \"BGF," }{TEXT -1 1 "." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 169 "s uccessi := 0:\nfor i from 1 to 1000 do\nA:=randmatrix(2,2):\nB:=randma trix(2,2):\nif trace (A &* B) = trace (A) * trace (B) then\nsuccessi : = successi + 1 fi:\nod:\nsuccessi; " }}}{PARA 0 "" 0 "" {TEXT -1 29 "I n effetti si pu\362 provare che" }}{PARA 0 "" 0 "" {TEXT 275 31 "la pr obabilit\340 che due matrici " }{XPPEDIT 18 0 "n;" "6#%\"nG" }{TEXT -1 1 "x" }{XPPEDIT 18 0 "n;" "6#%\"nG" }{TEXT -1 1 " " }{TEXT 276 3 "c on" }{TEXT -1 1 " " }{XPPEDIT 18 0 "2 <= n;" "6#1\"\"#%\"nG" }{TEXT -1 1 " " }{TEXT 277 14 "siano tali che" }{TEXT -1 1 " " }{XPPEDIT 18 0 "tr(AB) = tr(A)*tr(B);" "6#/-%#trG6#%#ABG*&-F%6#%\"AG\"\"\"-F%6#%\"B GF," }{TEXT -1 1 " " }{TEXT 278 7 "\350 nulla" }{TEXT -1 2 ". " }} {PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 47 "Diversame nte vanno le cose rispetto alla somma:" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 79 "A:=matrix(20,20):\nB:=matrix(20,20):\nevalb (trace(A \+ + B) = trace(A) + trace(B));" }}}{PARA 0 "" 0 "" {TEXT -1 123 "Anche i n questo caso il conto appena fatto \350 una dimostrazione solo nel ca so di matrici 20x20 del seguente fatto generale:\n" }{TEXT 270 7 " sia no " }{XPPEDIT 18 0 "A;" "6#%\"AG" }{TEXT -1 3 " e " }{XPPEDIT 18 0 "B ;" "6#%\"BG" }{TEXT -1 1 " " }{TEXT 271 24 "due matrici nxn, allora " }{XPPEDIT 18 0 "tr(A+B) = tr(A)+tr(B);" "6#/-%#trG6#,&%\"AG\"\"\"%\"BG F),&-F%6#F(F)-F%6#F*F)" }{TEXT -1 14 ".\nLo si provi." }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT 27 15 "Sistemi lineari" }}{PARA 0 "" 0 "" {TEXT -1 22 "Un sistema lineare di " }{XPPEDIT 18 0 "n;" "6#%\"nG" }{TEXT -1 14 " equazioni in " }{XPPEDIT 18 0 "m;" "6#%\"mG" }{TEXT -1 63 " in cognite \350 completamente descritto in termini di una matrice " } {XPPEDIT 18 0 "n;" "6#%\"nG" }{TEXT -1 1 "x" }{XPPEDIT 18 0 "m;" "6#% \"mG" }{TEXT -1 19 " e di un vettore a " }{XPPEDIT 18 0 "n;" "6#%\"nG " }{TEXT -1 34 " componenti: si cercano i vettori " }{XPPEDIT 18 0 "x; " "6#%\"xG" }{TEXT -1 3 " a " }{XPPEDIT 18 0 "m;" "6#%\"mG" }{TEXT -1 21 " componenti tali che " }{XPPEDIT 18 0 "A*x = b;" "6#/*&%\"AG\"\"\" %\"xGF&%\"bG" }{TEXT -1 60 ". Per risolvere sistemi lineari con Maple \+ si usa il comando " }{HYPERLNK 17 "linsolve" 2 "linalg[linsolve]" "" } {TEXT -1 1 "." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 109 "A := matri x(3,5,\n[-4, 6, 4, 4, 9,\n0, 3, 7, -3, 2,\n8, 9, -8, 1, -6]):\nb := ve ctor([-3, -5, 6]):\nlinsolve(A,b);" }}}{PARA 0 "" 0 "" {TEXT -1 107 "Q uesto sistema lineare ha infinite soluzioni che dipendono da due param etri (assegnando valori arbitrari a " }{XPPEDIT 18 0 "_t[1];" "6#&%#_t G6#\"\"\"" }{TEXT -1 3 " e " }{XPPEDIT 18 0 "_t[2];" "6#&%#_tG6#\"\"# " }{TEXT -1 51 "si ottengono tutte e sole le soluzioni del sistema." } }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 151 "A := matrix(5,5,\n[-4, 6, \+ 4, 4, 9,\n0, 3, 7, -3, 2,\n8, 9, -8, 1, -6,\n-9, 7, 5, 8, -5,\n-6, -2, -1, 5, 0]):\nb := vector([-3, -5, 6, 0, -2]):\nlinsolve(A,b);" }}} {PARA 0 "" 0 "" {TEXT -1 46 "Questo sistema lineare ha una unica soluz ione." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 118 "A := matrix(5,3,\n [-4, 6, 4,\n0, 3, 7,\n8, 9, -8,\n-9, 7, 5,\n-6, -2, -1]):\nb := vector ([-3, -5, 6, 0, -2]):\nlinsolve(A,b);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{SECT 0 {PARA 7 "" 0 "" {TEXT 27 27 "Perch\351 no n ha fatto niente?" }}{PARA 0 "" 0 "" {TEXT -1 212 "Non \350 che non h a fatto niente, soltanto non c '\350 stato output perch\351 il sistema non ha soluzioni. Un trucco per avere sempre un output non vuoto \350 quello di chiedere non le soluzioni ma l'insieme delle soluzioni" }} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "\{linsolve(A,b)\};" }}} {PARA 0 "" 0 "" {TEXT -1 37 "che in questo caso \350 l'insieme vuoto. " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 113 "A := matrix(5,3,\n[-4, 6, 4,\n0, 3, 7,\n8, 9, -8,\n-9, 7, 5,\n-6, -2, -1]):\nb := vector([-5 , 6, 0, -2]):linsolve(A,b);" }}}{SECT 0 {PARA 7 "" 0 "" {TEXT 27 21 "P erch\351 questo errore?" }}{PARA 0 "" 0 "" {TEXT -1 11 "il vettore " } {XPPEDIT 18 0 "b;" "6#%\"bG" }{TEXT -1 64 " deve avere tante component i quante sono le righe della matrice " }{XPPEDIT 18 0 "A;" "6#%\"AG" } {TEXT -1 1 "." }}}{PARA 0 "" 0 "" {TEXT -1 61 "Per risolvere sistemi l ineari, si potrebbe usare il comando " }{HYPERLNK 17 "solve" 1 "" "si stemi" }{TEXT -1 140 ". linsolve, oltre a essere pi\371 efficiente, ci risparmia la fatica di scrivere esplicitamente il sistema di equazion i con tutte le variabili." }}{SECT 0 {PARA 5 "" 0 "" {TEXT 27 12 "Osse rvazione" }}{PARA 0 "" 0 "" {TEXT -1 110 "Anche con linsolve, come con solve, va usata molta cauteala con sistemi lineari in cui compaiano d ei parametri" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 59 "A:=matrix(2, 2,[k,1,1,k]);\nb:=vector([1,k]);\nlinsolve (A,b);" }}}{PARA 0 "" 0 "" {TEXT -1 148 "Un trucco per costringere Maple a mostrare i problemi ch e ci sono \350 quello di sostituire il vettore con un vettore i ndeter minato e quindi risolvere" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "x:=vector(2);\nlinsolve (A,x);" }}}{PARA 0 "" 0 "" {TEXT -1 22 "\310 \+ evidente che i casi " }{XPPEDIT 18 0 "k = 1;" "6#/%\"kG\"\"\"" }{TEXT -1 3 " e " }{XPPEDIT 18 0 "k = -1;" "6#/%\"kG,$\"\"\"!\"\"" }{TEXT -1 32 " vanno analizzati separatamente." }}}}{SECT 0 {PARA 4 "" 0 "" {TEXT 27 55 "Equazioni matriciali (lineari) e inversa di una matrice" }}{PARA 0 "" 0 "" {TEXT -1 104 "Il comando linsolve pu\362 essere usat o anche per risolvere equazioni matriciali lineari: date due matrici \+ " }{XPPEDIT 18 0 "A;" "6#%\"AG" }{TEXT -1 3 " e " }{XPPEDIT 18 0 "B;" "6#%\"BG" }{TEXT -1 31 " di dimensioni rispettivamente " }{XPPEDIT 18 0 "n;" "6#%\"nG" }{TEXT -1 3 " x " }{XPPEDIT 18 0 "k;" "6#%\"kG" } {TEXT -1 3 " e " }{XPPEDIT 18 0 "n;" "6#%\"nG" }{TEXT -1 3 " x " } {XPPEDIT 18 0 "m;" "6#%\"mG" }{TEXT -1 42 " ci si pu\362 chiedere se e siste una matrice " }{XPPEDIT 18 0 "X;" "6#%\"XG" }{TEXT -1 1 " " } {XPPEDIT 18 0 "n;" "6#%\"nG" }{TEXT -1 3 " x " }{XPPEDIT 18 0 "m;" "6# %\"mG" }{TEXT -1 10 " tale che " }{XPPEDIT 18 0 "AX = B;" "6#/%#AXG%\" BG" }{TEXT -1 1 "." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 150 "A := \+ matrix(3,4,\n[8, -2, 7, -6,\n3, 4, -3, 7,\n3, 2, -5, -6]):\nB := matri x(3,5,\n[9, -5, -7, -1, -6,\n-1, -1, 6, 0, -6,\n0, 0, -3, -2, -1]):\nl insolve(A,B);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 167 "A := matr ix(4,3,\n[5, -4, -3,\n1, -7, -1,\n7, 4, 3,\n-8, 2, 4]):\nB := matrix(4 ,5,\n[-1, 9, 7, -3, -8,\n-7, 3, 4, -7, 3,\n8, -9, 0, -5, 0,\n-4, -8, 2 , 3, 5]):\n\{linsolve (A,B)\};" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 182 "A := matrix(4,4,\n[-2, -7, -8, -9,\n-7, -5, 8, -7,\n8, 7, 2, \+ -5,\n9, 9, -2, 8]):\nB := matrix(4,5,\n[-2, 2, 7, 2, 9,\n-6, -8, -4, 0 , -8,\n7, -6, 8, 4, 5,\n-2, -1, -5, -2, 2]):\nlinsolve (A,B);" }}} {PARA 0 "" 0 "" {TEXT -1 47 "Ci si pu\362 chiedere in particolare quan do, data " }{XPPEDIT 18 0 "A;" "6#%\"AG" }{TEXT -1 20 " esiste una mat rice " }{XPPEDIT 18 0 "X;" "6#%\"XG" }{TEXT -1 10 " tale che " } {XPPEDIT 18 0 "AX = Id;" "6#/%#AXG%#IdG" }{TEXT -1 11 " (una tale " } {XPPEDIT 18 0 "X;" "6#%\"XG" }{TEXT -1 15 " si chiama una " }{TEXT 279 15 "inversa destra " }{TEXT -1 3 "di " }{XPPEDIT 18 0 "A;" "6#%\"A G" }{TEXT -1 2 ")." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "A := r andmatrix(3,5):\nlinsolve(A,id(3));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 42 "A := randmatrix(5,3):\n\{linsolve(A,id(5))\};" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 40 "A := randmatrix(5,5):\nlinso lve(A,id(5));" }}}{PARA 0 "" 0 "" {TEXT -1 133 "Facciamo un esperiment o: facciamo generare matrici casuali di dimensione 5 x 7 e vediamo per quante di esse esiste un'inversa destra." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 153 "successi := 0:\nB := id(5):\nfor i from 1 to 500 do \nA := randmatrix(5,7):\nC:=\{linsolve(A,B)\}:\nif not C = \{\} then s uccessi := successi + 1 fi:\nod:\nsuccessi;" }}}{SECT 0 {PARA 5 "" 0 " " {TEXT 27 12 "Osservazioni" }}{PARA 0 "" 0 "" {TEXT -1 31 "Si pu\362 \+ dimostrare che una tale " }{XPPEDIT 18 0 "X;" "6#%\"XG" }{TEXT -1 15 " non esiste se " }{XPPEDIT 18 0 "A;" "6#%\"AG" }{TEXT -1 15 " \350 una matrice " }{XPPEDIT 18 0 "n;" "6#%\"nG" }{TEXT -1 3 " x " }{XPPEDIT 18 0 "m;" "6#%\"mG" }{TEXT -1 5 " con " }{XPPEDIT 18 0 "m < n;" "6#2% \"mG%\"nG" }{TEXT -1 18 ", ma anche quando " }{XPPEDIT 18 0 "n <= m;" "6#1%\"nG%\"mG" }{TEXT -1 76 " non \350 detto che esista (contrariamen te a quanto mostrerebbe l'esperimento)." }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 203 "A := matrix(5,7,\n[-24, -55, -93, -70, 10, -55, -89, \n-21, -93, -77, -57, 4, 89, -33,\n15, 31, 23, -6, 42, -84, 51,\n939, \+ 192, 346, 38, -432, 1551, -1346,\n90, 49, 59, 16, -20, 84, -78]):\n\{l insolve(A,id(5))\};" }}}{PARA 0 "" 0 "" {TEXT -1 77 "quello che si pu \362 dimostrare \350 per\362 che la probabilit\340 che una tale matric e (" }{XPPEDIT 18 0 "n;" "6#%\"nG" }{TEXT -1 3 " x " }{XPPEDIT 18 0 "m ;" "6#%\"mG" }{TEXT -1 5 " con " }{XPPEDIT 18 0 "n <= m;" "6#1%\"nG%\" mG" }{TEXT -1 39 ") non abbia una inversa destra \350 nulla." }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 0 "" 0 "" {TEXT -1 31 "Prendiamo una m atrice quadrata " }{XPPEDIT 18 0 "A;" "6#%\"AG" }{TEXT -1 41 " a caso, troviamo una sua inversa destra " }{XPPEDIT 18 0 "C;" "6#%\"CG" } {TEXT -1 2 " (" }{HYPERLNK 17 "siamo sicuri che esiste" 1 "" "probabil ita" }{TEXT -1 27 ") e verifichiamo quanto fa " }{XPPEDIT 18 0 "AC;" " 6#%#ACG" }{TEXT -1 0 "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 62 "A \+ := randmatrix (5,5):\nC:=linsolve (A,id(5)):\nevalm (A &* C );" }}} {PARA 0 "" 0 "" {TEXT -1 43 "Non poteva essere altrimenti. Ma quanto f a " }{XPPEDIT 18 0 "CA;" "6#%#CAG" }{TEXT -1 2 " ?" }}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 17 "evalm (C &* A ) ;" }}}{PARA 0 "" 0 "" {TEXT -1 27 "Questo \350 un fatto generale:" }}{PARA 0 "" 0 "" {TEXT 281 2 " se" }{TEXT -1 1 " " }{XPPEDIT 18 0 "A;" "6#%\"AG" }{TEXT -1 1 " " } {TEXT 282 47 "\350 una matrice quadrata che ha un'inversa destra" } {TEXT -1 1 " " }{XPPEDIT 18 0 "C;" "6#%\"CG" }{TEXT -1 1 " " }{TEXT 283 11 "allora tale" }{TEXT -1 1 " " }{XPPEDIT 18 0 "C;" "6#%\"CG" } {TEXT -1 1 " " }{TEXT 284 15 "\350 unica e anche" }{TEXT -1 1 " " } {XPPEDIT 18 0 "CA = Id;" "6#/%#CAG%#IdG" }{TEXT -1 2 ". " }{TEXT 285 12 "Tale matrice" }{TEXT -1 1 " " }{XPPEDIT 18 0 "C;" "6#%\"CG" } {TEXT -1 1 " " }{TEXT 286 10 "\350 detta l'" }{TEXT 280 7 "inversa" } {TEXT 287 3 " di" }{TEXT -1 1 " " }{XPPEDIT 18 0 "A;" "6#%\"AG" } {TEXT -1 1 "." }}{PARA 0 "" 0 "" {TEXT -1 72 "Maple pu\362 calcolare \+ l'inversa di una matrice per mezzo dell'istruzione " }{HYPERLNK 17 "in verse" 2 "linalg[inverse]" "" }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 11 "inverse(A);" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "equal(in verse(A),C);" }}}}}{SECT 0 {PARA 4 "" 0 "probabilita" {TEXT 27 16 "Una precisazione" }}{PARA 0 "" 0 "" {TEXT -1 146 "Si \350 sovente detto c he la probabilit\340 che una matrice abbia certe propriet\340 \350 0. \+ Questo parlando in termini matematici \350 vero. Per il calcolatore " }{TEXT 288 2 "NO" }{TEXT -1 61 ". Nel senso che il calcolatore ha la p ossibilit\340 di generare " }{TEXT 290 17 "equiprobabilmente" }{TEXT -1 13 " soltanto un " }{TEXT 289 13 "numero finito" }{TEXT -1 332 " (a nche se molto grande) di matrici, e quindi, anche se piccola, la proba bilit\340 che una di esse non goda della propriet\340 in esame \350 po sitiva. In ogni caso tale probabilit\340 \350 talmente bassa che se a \+ qualcuno non riesce uno degli esperimenti tentati sopra deve considera rsi particolarmente (s)fortunato (a seconda del punto di vista)!" }}}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{MARK "7 2" 0 } {VIEWOPTS 0 0 0 1 1 1803 }