Gauß-Algorithmus


Die folgenden Umformungen sind die für den Gauß-Algorithmus "geeigneten Manipulationen":

Bemerkung und Bezeichnung: ( a ij )x=b MathType@MTEF@5@5@+=feaafeart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrVepeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaWaaeWaaeaacaWGHbWaaSbaaSqaaiaadMgacaWGQbaabeaaaOGaayjkaiaawMcaaiaadIhacqGH9aqpcaWGIbaaaa@3D55@ sei ein lineares n × m - System. Die folgenden Manipulationen heißen elementare Zeilenoperationen; sie verändern die Lösungsmenge nicht.

  1. Vertauschen zweier Zeilen:
( a i a j )x=( b i b j )( a j a i )x=( b j b i ) MathType@MTEF@5@5@+=feaafeart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrVepeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaWaaeWaaeaafaqabeqbbaaaaeaacqWIUlstaeaacaWGHbWaaSbaaSqaaiaadMgacqGHIaYTaeqaaaGcbaGaeSO7I0eabaGaamyyamaaBaaaleaacaWGQbGaeyOiGClabeaaaOqaaiabl6UinbaaaiaawIcacaGLPaaacaWG4bGaeyypa0ZaaeWaaeaafaqabeqbbaaaaeaacqWIUlstaeaacaWGIbWaaSbaaSqaaiaadMgaaeqaaaGcbaGaeSO7I0eabaGaamOyamaaBaaaleaacaWGQbaabeaaaOqaaiabl6UinbaaaiaawIcacaGLPaaacaaMf8Uaeyi1HSTaaGzbVpaabmaabaqbaeqabuqaaaaabaGaeSO7I0eabaGaamyyamaaBaaaleaacaWGQbGaeyOiGClabeaaaOqaaiabl6UinbqaaiaadggadaWgaaWcbaGaamyAaiabgkci3cqabaaakeaacqWIUlstaaaacaGLOaGaayzkaaGaamiEaiabg2da9maabmaabaqbaeqabuqaaaaabaGaeSO7I0eabaGaamOyamaaBaaaleaacaWGQbaabeaaaOqaaiabl6UinbqaaiaadkgadaWgaaWcbaGaamyAaaqabaaakeaacqWIUlstaaaacaGLOaGaayzkaaaaaa@736B@ .
 
  1. Multiplizieren einer Zeile mit einem α0 MathType@MTEF@5@5@+=feaafeart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrVepeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqySdeMaeyiyIKRaaGimaaaa@3A09@ :   
( a i )x=( b i )( α a i )x=( α b i ) MathType@MTEF@5@5@+=feaafeart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrVepeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaWaaeWaaeaafaqabeWabaaabaGaeSO7I0eabaGaamyyamaaBaaaleaacaWGPbGaeyOiGClabeaaaOqaaiabl6UinbaaaiaawIcacaGLPaaacaWG4bGaeyypa0ZaaeWaaeaafaqabeWabaaabaGaeSO7I0eabaGaamOyamaaBaaaleaacaWGPbaabeaaaOqaaiabl6UinbaaaiaawIcacaGLPaaacaaMf8Uaeyi1HSTaaGzbVpaabmaabaqbaeqabmqaaaqaaiabl6Uinbqaaiabeg7aHjaadggadaWgaaWcbaGaamyAaiabgkci3cqabaaakeaacqWIUlstaaaacaGLOaGaayzkaaGaamiEaiabg2da9maabmaabaqbaeqabmqaaaqaaiabl6Uinbqaaiabeg7aHjaadkgadaWgaaWcbaGaamyAaaqabaaakeaacqWIUlstaaaacaGLOaGaayzkaaaaaa@63A9@ .
 
  1. Addieren einer Zeile zu einer anderen:
( a i )x=( b i )( a i + a j )x=( b i + b j ) MathType@MTEF@5@5@+=feaafeart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrVepeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaWaaeWaaeaafaqabeWabaaabaGaeSO7I0eabaGaamyyamaaBaaaleaacaWGPbGaeyOiGClabeaaaOqaaiabl6UinbaaaiaawIcacaGLPaaacaWG4bGaeyypa0ZaaeWaaeaafaqabeWabaaabaGaeSO7I0eabaGaamOyamaaBaaaleaacaWGPbaabeaaaOqaaiabl6UinbaaaiaawIcacaGLPaaacaaMf8Uaeyi1HSTaaGzbVpaabmaabaqbaeqabmqaaaqaaiabl6UinbqaaiaadggadaWgaaWcbaGaamyAaiabgkci3cqabaGccqGHRaWkcaWGHbWaaSbaaSqaaiaadQgacqGHIaYTaeqaaaGcbaGaeSO7I0eaaaGaayjkaiaawMcaaiaadIhacqGH9aqpdaqadaqaauaabeqadeaaaeaacqWIUlstaeaacaWGIbWaaSbaaSqaaiaadMgaaeqaaOGaey4kaSIaamOyamaaBaaaleaacaWGQbaabeaaaOqaaiabl6UinbaaaiaawIcacaGLPaaaaaa@67CB@ .
 

Von den analogen elementaren Spaltenoperationen benötigen (und notieren) wir nur eine. Sie verändert allerdings die Koordinatenfolge in den Lösungsvektoren!

  1. Vertauschen zweier Spalten:
    ( a i a j )( x i x j )=b( a j a i )( x j x i )=b MathType@MTEF@5@5@+=feaafeart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrVepeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaWaaeWaaeaafaqabeqafaaaaeaacqWIVlctaeaacaWGHbWaaSbaaSqaaiabgkci3kaadMgaaeqaaaGcbaGaeS47IWeabaGaamyyamaaBaaaleaacqGHIaYTcaWGQbaabeaaaOqaaiabl+UimbaaaiaawIcacaGLPaaadaqadaqaauaabeqafeaaaaqaaiabl6UinbqaaiaadIhadaWgaaWcbaGaamyAaaqabaaakeaacqWIUlstaeaacaWG4bWaaSbaaSqaaiaadQgaaeqaaaGcbaGaeSO7I0eaaaGaayjkaiaawMcaaiabg2da9iaadkgacaaMf8Uaeyi1HSTaaGzbVpaabmaabaqbaeqabeqbaaaabaGaeS47IWeabaGaamyyamaaBaaaleaacqGHIaYTcaWGQbaabeaaaOqaaiabl+UimbqaaiaadggadaWgaaWcbaGaeyOiGCRaamyAaaqabaaakeaacqWIVlctaaaacaGLOaGaayzkaaWaaeWaaeaafaqabeqbbaaaaeaacqWIUlstaeaacaWG4bWaaSbaaSqaaiaadQgaaeqaaaGcbaGaeSO7I0eabaGaamiEamaaBaaaleaacaWGPbaabeaaaOqaaiabl6UinbaaaiaawIcacaGLPaaacqGH9aqpcaWGIbaaaa@7397@ .

Die Kombination von 2. und 3. ist das am häufigsten eingesetzte Werkzeug:

  1. Subtrahieren eines von Null verschieden Vielfachen einer Zeile von einer anderen:

    ( a i )x=( b i )( a i α a j )x=( b i α b j ) MathType@MTEF@5@5@+=feaafeart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrVepeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaWaaeWaaeaafaqabeWabaaabaGaeSO7I0eabaGaamyyamaaBaaaleaacaWGPbGaeyOiGClabeaaaOqaaiabl6UinbaaaiaawIcacaGLPaaacaWG4bGaeyypa0ZaaeWaaeaafaqabeWabaaabaGaeSO7I0eabaGaamOyamaaBaaaleaacaWGPbaabeaaaOqaaiabl6UinbaaaiaawIcacaGLPaaacaaMf8Uaeyi1HSTaaGzbVpaabmaabaqbaeqabmqaaaqaaiabl6UinbqaaiaadggadaWgaaWcbaGaamyAaiabgkci3cqabaGccqGHsislcqaHXoqycaWGHbWaaSbaaSqaaiaadQgacqGHIaYTaeqaaaGcbaGaeSO7I0eaaaGaayjkaiaawMcaaiaadIhacqGH9aqpdaqadaqaauaabeqadeaaaeaacqWIUlstaeaacaWGIbWaaSbaaSqaaiaadMgaaeqaaOGaeyOeI0IaeqySdeMaamOyamaaBaaaleaacaWGQbaabeaaaOqaaiabl6UinbaaaiaawIcacaGLPaaaaaa@6B1F@ .

Satz (Gauß-Algorithmus): Jedes lösbare, nullzeilenfreie lineare Gleichungssystem ( a ij )x=b MathType@MTEF@5@5@+=feaafeart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrVepeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaWaaeWaaeaacaWGHbWaaSbaaSqaaiaadMgacaWGQbaabeaaaOGaayjkaiaawMcaaiaadIhacqGH9aqpcaWGIbaaaa@3D55@ läßt sich mit Hilfe von elementaren Zeilen- und Spaltenoperationen maximal diagonalisieren.

Den Beweis führen wir auf einer eigenen Seite per Induktion. 

 
Wir üben das Gauß'sche Lösungsverfahren. Dabei "diagonalisieren" wir, parallel zum Beweis, von rechts nach links. Zwischenzeitlich auftretende Nullzeilen werden - wenn möglich - weggelassen, oder führen bei unlösbaren Systemen zum Abbruch. Die bei einem Umformungsschritt eingesetzten Manipulationen sind unter dem entsprechenden Äquivalenzzeichen in Kurzform notiert. So bedeutet etwa "I − 2II": Subtrahiere von der ersten Zeile das Doppelte der zweiten.
 
Beispiel:

( 6 2 2 1 )x=( 4 1 ) I2II ( 2 0 2 1 )x=( 2 1 ) I:2 ( 1 0 2 1 )x=( 1 1 ) II2I ( 1 0 0 1 )x=( 1 1 ) x=( 1 1 ) . MathType@MTEF@5@5@+=feaafeart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrVepeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqbaeaabuGaaaaabaaabaGaaGzbVpaabmaabaqbaeqabiGaaaqaaiaaiAdaaeaacaaIYaaabaGaaGOmaaqaaiaaigdaaaaacaGLOaGaayzkaaGaamiEaiabg2da9maabmaabaqbaeqabiqaaaqaaiaaisdaaeaacaaIXaaaaaGaayjkaiaawMcaaaqaamaaxababaGaeyi1HSnaleaacaqGjbGaeyOeI0IaaGOmaiaabMeacaqGjbaabeaaaOqaaiaaywW7daqadaqaauaabeqaciaaaeaacaaIYaaabaGaaGimaaqaaiaaikdaaeaacaaIXaaaaaGaayjkaiaawMcaaiaadIhacqGH9aqpdaqadaqaauaabeqaceaaaeaacaaIYaaabaGaaGymaaaaaiaawIcacaGLPaaaaeaadaWfqaqaaiabgsDiBdWcbaGaaeysaiaacQdacaaIYaaabeaaaOqaaiaaywW7daqadaqaauaabeqaciaaaeaacaaIXaaabaGaaGimaaqaaiaaikdaaeaacaaIXaaaaaGaayjkaiaawMcaaiaadIhacqGH9aqpdaqadaqaauaabeqaceaaaeaacaaIXaaabaGaaGymaaaaaiaawIcacaGLPaaaaeaadaWfqaqaaiabgsDiBdWcbaGaaeysaiaabMeacqGHsislcaaIYaGaaeysaaqabaaakeaacaaMf8+aaeWaaeaafaqabeGacaaabaGaaGymaaqaaiaaicdaaeaacaaIWaaabaGaaGymaaaaaiaawIcacaGLPaaacaWG4bGaeyypa0ZaaeWaaeaafaqabeGabaaabaGaaGymaaqaaiabgkHiTiaaigdaaaaacaGLOaGaayzkaaaabaGaeyi1HSnabaGaaGzbVlaadIhacqGH9aqpdaqadaqaauaabeqaceaaaeaacaaIXaaabaGaeyOeI0IaaGymaaaaaiaawIcacaGLPaaacaqGUaaaaaaa@8054@

( 3 2 1 1 1 0 4 2 2 )x=( 1 1 0 ) III:2 ( 3 2 1 1 1 0 2 1 1 )x=( 1 1 0 ) IIII ( 1 1 0 1 1 0 2 1 1 )x=( 1 1 0 ) III, IIIII ( 0 0 0 1 1 0 1 0 1 )x=( 0 0 1 ) ( 1 1 0 1 0 1 )x=( 0 1 ) x( 0 0 1 )+<( 1 1 1 )>. MathType@MTEF@5@5@+=feaafeart1ev1aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrVepeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqbaeaabyGaaaaabaaabaGaaGzbVpaabmaabaqbaeqabmWaaaqaaiaaiodaaeaacaaIYaaabaGaaGymaaqaaiaaigdaaeaacaaIXaaabaGaaGimaaqaaiaaisdaaeaacaaIYaaabaGaaGOmaaaaaiaawIcacaGLPaaacaWG4bGaeyypa0ZaaeWaaeaafaqabeWabaaabaGaaGymaaqaaiaaigdaaeaacaaIWaaaaaGaayjkaiaawMcaaaqaamaaxababaGaeyi1HSnaleaacaqGjbGaaeysaiaabMeacaGG6aGaaGOmaaqabaaakeaacaaMf8+aaeWaaeaafaqabeWadaaabaGaaG4maaqaaiaaikdaaeaacaaIXaaabaGaaGymaaqaaiaaigdaaeaacaaIWaaabaGaaGOmaaqaaiaaigdaaeaacaaIXaaaaaGaayjkaiaawMcaaiaadIhacqGH9aqpdaqadaqaauaabeqadeaaaeaacaaIXaaabaGaaGymaaqaaiaaicdaaaaacaGLOaGaayzkaaaabaWaaCbeaeaacqGHuhY2aSqaaiaabMeacqGHsislcaqGjbGaaeysaiaabMeaaeqaaaGcbaGaaGzbVpaabmaabaqbaeqabmWaaaqaaiaaigdaaeaacaaIXaaabaGaaGimaaqaaiaaigdaaeaacaaIXaaabaGaaGimaaqaaiaaikdaaeaacaaIXaaabaGaaGymaaaaaiaawIcacaGLPaaacaWG4bGaeyypa0ZaaeWaaeaafaqabeWabaaabaGaaGymaaqaaiaaigdaaeaacaaIWaaaaaGaayjkaiaawMcaaaqaamaaxababaGaeyi1HSnaleaacaqGjbGaeyOeI0IaaeysaiaabMeacaqGSaGaaeiiaiaabMeacaqGjbGaaeysaiabgkHiTiaabMeacaqGjbaabeaaaOqaaiaaywW7daqadaqaauaabeqadmaaaeaacaaIWaaabaGaaGimaaqaaiaaicdaaeaacaaIXaaabaGaaGymaaqaaiaaicdaaeaacaaIXaaabaGaaGimaaqaaiaaigdaaaaacaGLOaGaayzkaaGaamiEaiabg2da9maabmaabaqbaeqabmqaaaqaaiaaicdaaeaacaaIWaaabaGaeyOeI0IaaGymaaaaaiaawIcacaGLPaaaaeaacqGHuhY2aeaacaaMf8+aaeWaaeaafaqabeGadaaabaGaaGymaaqaaiaaigdaaeaacaaIWaaabaGaaGymaaqaaiaaicdaaeaacaaIXaaaaaGaayjkaiaawMcaaiaadIhacqGH9aqpdaqadaqaauaabeqaceaaaeaacaaIWaaabaGaeyOeI0IaaGymaaaaaiaawIcacaGLPaaaaeaacqGHuhY2aeaacaaMf8UaamiEaiabgIGiopaabmaabaqbaeqabmqaaaqaaiaaicdaaeaacaaIWaaabaGaeyOeI0IaaGymaaaaaiaawIcacaGLPaaacqGHRaWkcqGH8aapdaqadaqaauaabeqadeaaaeaacaaIXaaabaGaeyOeI0IaaGymaaqaaiabgkHiTiaaigdaaaaacaGLOaGaayzkaaGaeyOpa4JaaeOlaaaaaaa@B2CA@

Mit dem folgenden Applet lassen sich beliebige lineare Gleichungssysteme (bis zu einer Abmessung von 10 × 10) lösen. Wie bisher wird dabei von rechts nach links diagonalisiert; allerdings unter Verzicht auf Zeilen- und Spaltenvertauschungen, so dass die Einheitsvektoren möglicherweise nicht rechtsbündig und nicht in der gewohnten Reihenfolge notiert sind. Bei der Angabe der Lösungsmenge ist dies natürlich berücksichtigt.

 

 

Nach Wahl der Systemabmessungen

× ,

legt man die Ausgabegenauigkeit durch die Zahl der Nachkommastellen fest.

Abschließend gibt man das LGS ein: