Frage von hochstein, 25

Gibt es einen Unterschied zwischen der äußeren und inneren Summe?

Gibt es einen Unterschied zwischen der äußeren und inneren Summe oder kann man sie durch die Kommutativität der Adition vertauschen?

Antwort
von Roach5, 16

Bei einer endlichen Summe kannst du das machen, bei einer unendlichen Reihe nur, wenn diese absolut konvergiert.

Du hast das ganze schon richtig erkannt, du nutzt die Kommutativität, in deinem Beispiel nennen wir aji*bij := cij, da aji*bij auch nur eine Folge abhängig von i und j ist.

Dann haben wir S(i = 1 bis n)S(j = 1 bis n)cij

= c11+...+c1n+c21+...+c2n+...+cn1+...+cnn 

= c11+...+cn1+c12+...+cn2+...+c1n+...+cnn 

= S(j=1 bis n)S(i=1 bis n)cij.

Das ganze funktioniert, weil wir nur endlich oft Kommutativität benutzen, wir bekommen also keine Probleme à la Riemannscher Umordnungssatz.

LG

Kommentar von Roach5 ,

Bemerkung: Was ich hier geschrieben habe war kein Beweis sondern eher eine Erklärung, warum es Sinn macht. Wonach du suchst ist der Satz von Fubini, der besagt, dass man in einem Integral die Reihenfolge der Ausführung vertauschen darf über einem kompakten Träger (wenn du nicht weißt was das ist, ist das nicht schlimm, nennen wir es in den ganzen Zahlen einfach endlich).

Er sagt also:∫∫f(x,y)dxdy = ∫∫f(x,y)dydx unter bestimmten Voraussetzungen.

Nehmen wir als Integrationsgrenzen beide Male 0 bis n und konstruieren eine Funktion, die stetig ist, sodass immer das Integral von k-1 nach k und l-1 nach l unserem ckl entspricht (diese ist konstruierbar), dann bekommen wir genau deinen Satz, dass du die Summe vertauschen kannst.

Expertenantwort
von hypergerd, Community-Experte für Mathematik, 5

"Summen tauschen" ist zu unkonkret! Zur Summe gehört die Laufvariable und der Bereich! 

2 Summen zur Addition eines 2D-Feldes (Arrays) ist nichts weiter als eine Tabelle mit Spalten (x-Achse) und Zeilen (Y-Achse). Die Summen mit der Laufvariable definieren einfach nur, ob man erst zeilenweise oder erst spaltenweise addiert. Da die Addition nach dem Kommutativgesetz beliebig vertauscht werden kann, ist im Ergebnis kein Unterschied.

§1: 2D-Funktionen haben wie 2D-Arrays 2 Übergabeparameter, nur dass die Funktionen universeller sind (beliebiger Argumententyp; Array nur ganze Zahlen)

Funktion: f(x,y)     Array: a[x][y]

§2: nur wenn die Funktion dem Kommutativgesetz gehorcht (Summe oder Produkt), dürfen bei Funktionen die Übergabeparameter vertauscht werden!

Zu beachten ist weiterhin der Gültigkeitsbereich! Bei einem unsymmetrischen Array (Spaltenanzahl ungleich Zeilenanzahl) würde eine Vertauschung zu Fehlern führen! Auch 2D Funktionen können für jedes Argument andere Gültigkeitsbereiche besitzen! 

Wenn nun hinter beiden Summen der Term a[j][i]*b[i][j] steht, bedeutet das in Formelsprache eine Verschachtelung von 3 Funktionen:

f( fa(j,i), fb(i,j) )  mit f(x,y)= x*y also Kommutativ

Die äußere Funktion erlaubt also eine Vertauschung.

ABER: viel wichtiger sind die inneren Funktionen. Falls sich NICHT-Kommutative Funktionen wie fa(x,y)=x*sin(y) dahinter verstecken (denn so könnte Dein Array a[j][i] gefüllt worden sein), ergibt das völlig andere Funktionswerte, wenn man i und j bzw. die Argumenten-Reihenfolge (oder Summenvariable) vertauscht!

Der Iterationsrechner zeigt das im Beispiel 125 mit Fxy und a2D[x][i]: http://www.gerdlamprecht.de/Roemisch_JAVA.htm#ZZZZZ0125

Weiter unten auf der Seite ist Beispiel 125 mit 3 Bildern beschrieben.Ich habe mal ein konkretes Beispiel konstruiert:

1. aus der dortigen Addition machen wir Deine Multiplikation: Fxy(...)*a2D

2.  damit das Array bei Argumentvertauschung nicht zu klein wird, setzen wir den Bereich für beide auf 1 bis 3

3. Fxy wird nicht kommutativ: x*sin(y)

normal Fall a) Ges.Summe=52.55454673031519

b) nur in Fxy vertauschen: aus Fxy(x,aC[2]) wird Fxy(aC[2],x)

Ges.Summe=36.582781330565055 (völlig anders)

c) auch noch a2D[x-aC[3]][aC[2]-aC[4]] nach a2D[aC[2]-aC[4]][x-aC[3]]

aC[3]=a muss abgezogen werden, da Arrays immer bei 0 beginnen

aC[4]=b

Ges.Summe=52.55454673031518

Und nun sind wir in der realen Rechentechnik-Welt angekommen: Theoretisch ist es egal, ob man erst Zeilen oder erst Spalten addiert, ABER die Rundungsfehler verhalten sich anders: letzte Stelle ist statt der 9 die 8!  siehe Bild

Expertenantwort
von Ellejolka, Community-Experte für Mathematik, 25

Beispiel ?

Kommentar von hochstein ,

Summe(oben n; unten i=1)(Summe(oben n; unten j=1)aji*bij) und kann man da die klammern weglassen und die summen vertauschen?

Kommentar von Ellejolka ,

denke mal eher nicht.

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten