Sari la conținutul principal

Dezvoltarea după cofactori (dezvoltarea lui Laplace): un ghid util

Un ghid pas cu pas pentru dezvoltarea după cofactori (dezvoltarea lui Laplace), care acoperă definițiile de bază, exemple lucrate, proprietăți-cheie și legătura cu inversa matricii prin matricea adjunctă.
Actualizat 4 mai 2026  · 12 min. citire

Calcularea determinantului unei matrice 3×3 - sau a uneia mai mari - nu este la fel de simplă ca în cazul 2×2.

Nu puteți pur și simplu înmulți în cruce două diagonale. Pe măsură ce matricea devine mai mare, calculele devin mai complicate. Fără o metodă structurată, este ușor să vă pierdeți. Exact acest tip de problemă a fost gândit să-l rezolve dezvoltarea după cofactori - numită și dezvoltarea lui Laplace.

Dezvoltarea după cofactori este o metodă de calcul al determinantului oricărei matrici pătratice prin dezvoltare de-a lungul unui rând sau al unei coloane alese. Metoda descompune problema, în mod recursiv, în determinanți mai mici pe care știți deja să-i calculați.

În acest articol, voi prezenta definiția dezvoltării după cofactori, formula din spatele ei, exemple pas cu pas pentru matrici 2×2 și 3×3, proprietăți-cheie și aplicații practice.

Ce este dezvoltarea după cofactori?

Dezvoltarea după cofactori este o metodă recursivă de calcul al determinantului oricărei matrici pătratice.

În acest sens, „recursivă” înseamnă că, în loc să calculați determinantul unei matrici mari dintr-o dată, îl descompuneți în determinanți mai mici. Acei determinanți mai mici se descompun la rândul lor în unii și mai mici. Continuați până rămâneți cu matrici 2×2, care sunt triviale de rezolvat.

Funcționează pentru orice matrice pătratică - 2×2, 3×3, 4×4 și mai departe. Totuși, este cea mai utilă pentru matrici 3×3 și mai mari, unde nu puteți doar înmulți în cruce două diagonale.

Ideea de bază e simplă. Alegeți un singur rând sau o coloană din matrice și dezvoltați de-a lungul lui/ei. Fiecare element din acel rând sau acea coloană contribuie cu o subproblemă mai mică. Rezolvați fiecare subproblemă, combinați rezultatele și obțineți determinantul. Asta e tot.

Minorul și cofactorul: definițiile esențiale

Înainte de a putea dezvolta un determinant, trebuie să înțelegeți două elemente de bază: minorii și cofactorii.

Minorul

Minorul M_ij este determinantul matricii mai mici pe care o obțineți după ce ștergeți rândul i și coloana j din matricea inițială.

Să spunem că aveți o matrice 3×3 A și doriți minorul M_12. Ștergeți rândul 1 și coloana 2. Ce rămâne este o matrice 2×2. Calculați determinantul ei - acesta este minorul dumneavoastră.

Cofactorul

Cofactorul C_ij duce minorul un pas mai departe. Aplică un factor de semn în funcție de poziția (i, j):

The cofactor

Cofactorul

Termenul (-1)^(i+j) păstrează semnul minorului sau îl schimbă, în funcție de locul din matrice.

Când i + j este par, (-1)^(i+j) = +1, deci cofactorul este egal cu minorul. Când i + j este impar, (-1)^(i+j) = -1, astfel cofactorul inversează semnul minorului.

Modelul în tablă de șah

Această alternare a semnelor creează un model tip tablă de șah pe întreaga matrice:

The checkerboard pattern

Modelul în tablă de șah

Colțul din stânga sus începe întotdeauna cu +. De acolo, semnele alternează în toate direcțiile. Acest model vă arată dintr-o privire dacă un cofactor va adăuga sau va scădea din determinant.

Formula dezvoltării după cofactori

Iată formula pe care o așteptați.

Pentru dezvoltarea de-a lungul rândului i:

Expansion along row i

Dezvoltare de-a lungul rândului i

Pentru dezvoltarea de-a lungul coloanei j:

Expansion along column j

Dezvoltare de-a lungul coloanei j

Pe scurt, aceasta înseamnă că înmulțiți fiecare element din rândul sau coloana aleasă cu cofactorul său, apoi adunați totul.

Termenii a_ij sunt doar elementele individuale ale matricii. Termenii C_ij sunt cofactorii pe care îi calculați pentru fiecare poziție. Înmulțiți-le, însumați rezultatele și obțineți determinantul.

Nu contează ce rând sau coloană alegeți. Dezvoltarea pe rândul 1 dă același rezultat ca pe rândul 3 sau pe coloana 2. Determinantul este o proprietate fixă a matricii - traseul de dezvoltare este doar alegerea dumneavoastră.

Totuși, alegerea influențează cantitatea de muncă. Un rând sau o coloană cu mai multe zerouri înseamnă mai puțini cofactori de calculat. Dacă un rând are două zerouri și trei elemente nenule, trebuie să calculați cofactorii doar pentru acele trei elemente - zerourile nu contribuie la sumă. Întotdeauna scanați matricea după zerouri înainte de a alege rândul sau coloana de dezvoltare.

Pas cu pas: cum funcționează dezvoltarea după cofactori

Dezvoltarea după cofactori urmează de fiecare dată același proces în 3 pași.

Pasul 1: Alegeți un rând sau o coloană. Parcurgeți matricea și alegeți rândul sau coloana cu cele mai multe zerouri. Mai puține elemente nenule înseamnă mai puțini cofactori de calculat.

Pasul 2: Pentru fiecare element nenul din acel rând sau acea coloană:

  • Calculați minorul M_ij - ștergeți rândul i și coloana j, apoi calculați determinantul a ceea ce rămâne.

  • Aplicați factorul de semn (-1)^(i+j) folosind modelul în tablă de șah pentru a obține cofactorul C_ij.

  • Înmulțiți elementul a_ij cu cofactorul său C_ij.

Pasul 3: Sumați toate produsele.

The determinant

Determinantul

Acesta este determinantul dumneavoastră.

Dacă oricare dintre submatricile dumneavoastră este mai mare de 2×2, repetați același proces pe ele până ajungeți la determinanți 2×2 - pe care îi puteți rezolva direct cu ad - bc.

Exemplul 1: dezvoltarea după cofactori pentru o matrice 2×2

Să legăm totul cu cel mai simplu caz posibil.

Luați această matrice 2×2:

Sample 2x2 matrix

Matrice 2x2 exemplu

Dezvoltați de-a lungul rândului 1. Cele două elemente sunt a_11 = 3 și a_12 = 1.

  • Pentru a_11 = 3: ștergeți rândul 1 și coloana 1. Ce rămâne este doar (4). Factorul de semn este (-1)^(1+1) = +1. Deci C_11 = +4.

  • Pentru a_12 = 1: ștergeți rândul 1 și coloana 2. Ce rămâne este doar (2). Factorul de semn este (-1)^(1+2) = -1. Deci C_12 = -2.

Acum sumați produsele:

Determinant calculation

Calculul determinantului

Veți observa că se potrivește cu formula standard pentru 2×2 ad - bc = (3)(4) - (1)(2) = 10. Dezvoltarea după cofactori și scurtătura cu înmulțirea în cruce sunt două moduri de a obține același răspuns.

Exemplul 2: dezvoltarea după cofactori pentru o matrice 3×3

Acum să parcurgem un exemplu complet 3×3.

Luați această matrice:

Sample 3x3 matrix

Matrice 3x3 exemplu

Rândul 1 are un zero în poziția (1,2), așa că să dezvoltăm pe rândul 1. Acel zero înseamnă că putem sărim complet peste un cofactor.

Pasul 1: Configurați dezvoltarea

Expansion setup (1)

Configurarea dezvoltării (1)

Deoarece a_12 = 0, termenul din mijloc dispare:

Expansion setup (2)

Configurarea dezvoltării (2)

Trebuie să calculăm doar doi cofactori. Acesta este beneficiul alegerii rândului potrivit.

Pasul 2: Calculați C_11

Acum ștergeți rândul 1 și coloana 1. Iată ce rămâne:

First computation

Primul calcul

Semnul în poziția (1,1) este (-1)^(1+1) = +1, deci C_11 = +2.

Pasul 3: Calculați C_13

Următorul pas este să ștergeți rândul 1 și coloana 3. Acesta este ceea ce rămâne:

Second computation

Al doilea calcul

Semnul în poziția (1,3) este (-1)^(1+3) = +1, deci C_13 = +11.

Pasul 4: Sumați produsele

Determinant calculation

Calculul determinantului

Acesta este determinantul. Alegând de la început rândul cu un zero, ați transformat o problemă cu trei cofactori într-una cu doi. Munciți întotdeauna inteligent.

Cum alegeți cel mai bun rând sau cea mai bună coloană

Rândul sau coloana pe care o alegeți nu schimbă rezultatul, dar schimbă cantitatea de muncă depusă.

Căutați mereu mai întâi zerourile. Fiecare zero din rândul sau coloana aleasă este un cofactor pe care nu trebuie să-l calculați. În exemplul 3×3 de mai sus, un zero a redus munca de la trei cofactori la doi. În matrici mai mari, un rând cu mai multe zerouri vă poate scuti de calculul mai multor sub-determinanți.

Iată câteva puncte de reținut

  • Un zero într-un rând sau o coloană înseamnă un cofactor mai puțin de calculat
  • Două zerouri înseamnă doi cofactori mai puțin
  • Toate sunt zerouri în afară de unul înseamnă că calculați un singur cofactor

Acest lucru contează mai mult pe măsură ce matricea crește. O dezvoltare naivă după cofactori pe o matrice n×n are complexitate factorială - ceea ce înseamnă că o 4×4 necesită calcularea determinantului a patru matrici 3×3, fiecare dezvoltându-se în trei matrici 2×2. Sunt 24 de calcule individuale înainte chiar de a începe să adunați. Pentru o 5×5, sunt 120.

Pentru matrici mari, dezvoltarea după cofactori nu este instrumentul potrivit. Reducerea pe rânduri și descompunerea LU gestionează matricile mari mult mai rapid. Dezvoltarea după cofactori este cel mai bine păstrată pentru cazuri 2×2 și 3×3 sau pentru lucrări teoretice unde trebuie să exprimați simbolic determinantul.

Pentru orice calculați de mână, petreceți câteva secunde căutând rândul sau coloana cu cele mai multe zerouri înainte de a începe. Este cel mai simplu mod de a reduce erorile aritmetice.

Dezvoltarea după cofactori și structura recursivă

Dezvoltarea după cofactori are încorporată o structură recursivă.

Pentru a găsi determinantul unei matrici n×n, dezvoltați de-a lungul unui rând sau al unei coloane și calculați determinanți ai matricilor (n-1)×(n-1) . Fiecare dintre aceștia se dezvoltă în matrici (n-2)×(n-2). Continuați reducerea până ajungeți la matrici 2×2, pe care le rezolvați direct.

Această proprietate recursivă este cea care definește algebric determinantul. Vă spune ce este un determinant pentru orice dimensiune a matricii, nu doar cum să-l calculați.

Totuși, recursivitatea are un cost.

Fiecare nivel de dezvoltare multiplică numărul de subprobleme, iar pentru matrici mari calculul crește rapid. De aceea bibliotecile numerice nu folosesc dezvoltarea după cofactori în spate. Reducerea pe rânduri și metodele de factorizare se scalează mult mai bine.

Pentru matrici mici și lucrări teoretice, structura recursivă este exact ce vă trebuie. Pentru orice mai mare, este mai bine să căutați o altă abordare.

Legătura cu matricea adjunctă

Cofactorii sunt elementul de bază al inversării matricilor. Nu sunt folosiți doar pentru a vă ajuta să calculați determinanți.

Dacă calculați cofactorul C_ij pentru fiecare element dintr-o matrice A, obțineți o matrice a cofactorilor C. Luați transpusa - schimbați rândurile cu coloanele - și obțineți matricea adjunctă:

The adjugate matrix

Matricea adjunctă

De aici, inversa matricii urmează direct:

Matrix inverse

Inversa matricii

Pe înțelesul tuturor, aceasta înseamnă că trebuie să calculați toți cofactorii, să-i aranjați într-o matrice, să o transpuneți, apoi să împărțiți la determinant. Aceasta este inversa.

Sunt două lucruri de reținut aici:

  1. Acest lucru funcționează doar când det(A) ≠ 0 - un determinant zero înseamnă că matricea nu are inversă
  2. Această formulă este exactă, ceea ce o face utilă pentru lucrări teoretice și algebră simbolică. Pentru calcule numerice cu matrici mari, alte metode sunt mai rapide.

Dacă vă întrebați despre legătura cu dezvoltarea după cofactori, rețineți doar că fiecare element din matricea adjunctă provine dintr-un cofactor pe care l-ați calcula în timpul dezvoltării. Același proces care vă dă determinantul vă oferă și tot ce aveți nevoie pentru a inversa matricea.

Proprietăți ale dezvoltării după cofactori

Dezvoltarea după cofactori vine cu câteva proprietăți utile de știut. Vă vor scuti de îndoieli și vă vor ajuta să identificați scurtături.

Iată patru proprietăți de reținut:

  • Dezvoltarea de-a lungul oricărui rând sau al oricărei coloane dă același rezultat. Puteți dezvolta pe rândul 2 sau pe coloana 3 - determinantul nu se schimbă. Alegeți-l pe cel cu cele mai multe zerouri
  • Determinantul este liniar în fiecare rând. Dacă scalați un rând cu o constantă k, determinantul se scalează și el cu k. Acest lucru rezultă direct din modul în care cofactorii se înmulțesc în fiecare element
  • Permutarea a două rânduri schimbă semnul determinantului. Schimbați rândurile o dată și determinantul se neagă. Schimbați-le de două ori și revine la valoarea inițială. De aceea trebuie să țineți cu atenție evidența operațiilor pe rânduri
  • Dacă două rânduri sunt liniar dependente, determinantul este zero. Dependența liniară înseamnă că un rând este un multiplu scalar al altuia - sau, mai general, că rândurile nu generează întreg spațiul. Matricea este singulară și nu există inversă

Aceste proprietăți vă permit să simplificați matricile înainte de dezvoltare - să reduceți rânduri, să identificați dependențe și să evitați calcule inutile.

Greșeli frecvente

Dezvoltarea după cofactori are câteva puncte sensibile care apar mereu. Iată la ce să fiți atenți.

  • Omiterea semnului (-1)^(i+j). Aceasta este cea mai comună greșeală. Calculați corect minorul, înmulțiți cu elementul și obțineți un răspuns greșit pentru că ați sărit peste factorul de semn. Verificați întotdeauna modelul în tablă de șah înainte de a nota un cofactor
  • Ștergerea rândului sau coloanei greșite pentru minor. Când calculați M_ij, ștergeți rândul i și coloana j - rândul și coloana elementului pe care îl dezvoltați. O scăpare frecventă este să ștergeți pe cel greșit, mai ales într-o 3×3 unde matricea rămasă poate arăta similar între diferite ștergeri
  • Oprirea prea devreme în recursie. Când submatricea dumneavoastră este încă 3×3 sau mai mare, trebuie să dezvoltați din nou. Unii tratează un minor 3×3 ca și cum ar fi 2×2 și aplică direct ad - bc
  • Erori aritmetice în pașii recursivi. Cu cât recursia este mai adâncă, cu atât urmăriți mai multe înmulțiri și schimbări de semn. O singură eroare aritmetică într-un sub-determinant timpuriu se propagă în fiecare pas următor. Parcurgeți cu atenție fiecare determinant 2×2 înainte de a combina rezultatele

Dacă răspunsul final pare greșit, modelul de semne și ștergerea pentru minor sunt primele două lucruri de reverificat.

Când să folosiți dezvoltarea după cofactori

Dezvoltarea după cofactori este instrumentul potrivit în câteva situații specifice.

Pentru matrici mici, este abordarea cea mai directă. O 2×2 este trivială, iar o 3×3 este realizabilă de mână în câteva minute. Odată ce ajungeți la 4×4 și mai sus, numărul pașilor recursivi crește suficient de repede încât alte metode sunt mai rapide și mai puțin predispuse la erori.

Este, de asemenea, metoda preferată pentru lucrări teoretice și simbolice. Dacă lucrați la o demonstrație, deduceți o formulă sau calculați un determinant cu elemente variabile în loc de numere, dezvoltarea după cofactori vă oferă o expresie simbolică exactă cu care să lucrați. Reducerea pe rânduri este excelentă pentru numere, dar devine anevoioasă cu simboluri.

Iată un rezumat rapid al situațiilor în care să o folosiți:

  • Lucrați cu o matrice 2×2 sau 3×3
  • Aveți nevoie de un rezultat simbolic exact, nu de o aproximație numerică
  • Lucrați la o demonstrație care necesită dezvoltarea explicită a determinantului
  • Construiți intuiție despre ce înseamnă de fapt determinantul

Pentru matrici numerice mari, săriți peste ea. Reducerea pe rânduri și descompunerea LU gestionează aceste cazuri mult mai rapid și cu un risc mult mai mic de erori aritmetice compuse. Majoritatea bibliotecilor numerice folosesc aceste metode „sub capotă” exact din acest motiv.

Dezvoltarea după cofactori este cel mai bine privită ca un instrument pentru calcule de mână și teorie, nu ca un algoritm universal.

Concluzie

Dezvoltarea după cofactori vă oferă o modalitate sistematică și recursivă de a calcula determinantul oricărei matrici pătratice.

Cele două elemente de bază - minorii și modelul de semne (-1)^(i+j) - conduc întregul proces. Dacă le stăpâniți, restul devine ușor. Alegeți un rând sau o coloană cu zerouri pentru a reduce munca, reduceți la determinanți 2×2 și însumați rezultatele.

Dincolo de determinanți, metoda se leagă de matricea adjunctă și de formula inversei matricii. Cofactorii pe care îi calculați în timpul dezvoltării sunt aceiași care construiesc adj(A) - făcând din dezvoltarea după cofactori o bază pentru înțelegerea modului în care funcționează algebric inversarea matricilor.

Pentru matrici mici și lucrări teoretice, este cea mai transparentă metodă disponibilă. Pentru matrici numerice mari, ar trebui să folosiți reducerea pe rânduri sau o bibliotecă numerică.

Dacă doriți să vedeți dezvoltarea după cofactori în acțiune, înscrieți-vă la cursul nostru Algebră liniară pentru știința datelor în R.

Întrebări frecvente despre dezvoltarea după cofactori

What is cofactor expansion?

Dezvoltarea după cofactori - numită și dezvoltarea lui Laplace - este o metodă de calcul al determinantului oricărei matrici pătratice. Funcționează prin dezvoltarea de-a lungul unui rând sau al unei coloane alese, înmulțind fiecare element cu cofactorul său și însumând rezultatele. Procesul reduce matricile mai mari în unele mai mici, recursiv, până rămâneți cu determinanți 2×2 pe care îi puteți rezolva direct.

When should I use cofactor expansion?

Dezvoltarea după cofactori funcționează cel mai bine pentru matrici mici - 2×2 și 3×3 - și pentru probleme teoretice sau simbolice în care aveți nevoie de o expresie exactă. Pentru matrici numerice mari, reducerea pe rânduri și descompunerea LU sunt mai rapide și mai puțin predispuse la erori. Majoritatea bibliotecilor numerice folosesc aceste metode în spate.

What's the difference between a minor and a cofactor?

Un minor M_ij este determinantul matricii pe care o obțineți după ștergerea rândului i și a coloanei j. Un cofactor C_ij ia acel minor și aplică un factor de semn (-1)^(i+j), care fie păstrează, fie schimbă semnul în funcție de poziție. Cofactorul este ceea ce folosiți efectiv în formula de dezvoltare.

Why does the choice of row or column not affect the result?

Dezvoltarea de-a lungul oricărui rând sau al oricărei coloane produce întotdeauna același determinant - aceasta este o proprietate fundamentală a metodei. Alegerea afectează doar câtă aritmetică faceți, nu rezultatul. Alegerea unui rând sau a unei coloane cu mai multe zerouri reduce numărul de cofactori de calculat.

How does cofactor expansion connect to matrix inversion?

Cofactorii calculați în timpul dezvoltării sunt aceleași valori folosite pentru a construi matricea adjunctă adj(A), care este transpusa matricii cofactorilor. Inversa unei matrici este apoi A^{-1} = (1 / det(A)) * adj(A). Asta înseamnă că dezvoltarea după cofactori stă la baza formulei algebrice pentru inversarea matricilor.

Subiecte

Învățați cu DataCamp

course

Linear Algebra for Data Science in R

4 oră
20.7K
This course is an introduction to linear algebra, one of the most important mathematical topics underpinning data science.
Vezi detaliiRight Arrow
Începeți cursul
Vezi mai multRight Arrow