ForHosting KIT · Matematica

Sviluppo per cofattori

Sviluppi un determinante lungo la riga o la colonna che preferisce e veda ogni termine: nell'esempio 3×3 la prima riga contribuisce con 4, 5 e −60, che sommati danno −51. Confronti le linee per trovare la via più breve. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto

Funziona nel tuo browser: gratis, senza registrazione, i file non escono dal tuo dispositivo.

Lo sviluppo per cofattori, detto anche sviluppo di Laplace, è la classica definizione ricorsiva del determinante: si sceglie una riga o una colonna, si moltiplica ogni elemento per il suo minore con segno e si sommano i risultati. Questo strumento Le consente di scegliere esattamente la riga o la colonna lungo cui sviluppare — una differenza didattica reale, perché una linea piena di zeri rende i calcoli banali mentre una linea densa li allunga. Restituisce il determinante insieme al dettaglio completo dello sviluppo: ogni elemento della linea scelta, il suo segno alternato, il suo cofattore calcolato dal minore corrispondente e il suo contributo alla somma finale. Le matrici non quadrate vengono rifiutate con un chiaro errore di validazione, perché il determinante è definito solo per matrici quadrate.

Come funziona lo sviluppo per cofattori lungo una linea scelta

Il risultato è identico qualunque linea si scelga, ed è proprio il teorema che gli studenti devono verificare nei corsi di algebra lineare. Questa funzionalità applica letteralmente tale ricorsione. Per la riga o colonna scelta calcola ogni determinante minore sviluppando di nuovo lungo la prima riga della sottomatrice più piccola, scendendo ricorsivamente fino al caso base uno per uno in cui il determinante è il singolo elemento, con il caso due per due abbreviato nella forma chiusa ad meno bc.

L'output espone ogni quantità intermedia: ogni elemento della linea di sviluppo, il segno alternato determinato dalla parità della posizione, il valore del cofattore e il contributo elemento per cofattore. Sommando a mano la colonna dei contributi si riproduce il determinante restituito, il che rende lo strumento utile per verificare il lavoro e non solo per controllare un numero finale. Poiché la ricorsione ha costo fattoriale, le dimensioni sono limitate a dieci per dieci; le dimensioni tipiche di corsi e competizioni sono pienamente coperte.

Perché la scelta della linea di sviluppo è importante

Il determinante è invariante rispetto alla linea di sviluppo, ma il lavoro per calcolarlo a mano non lo è. Sviluppare lungo una riga o colonna che contiene zeri elimina interamente dei termini, perché un elemento nullo non contribuisce nulla per quanto grande sia il suo cofattore; i libri di testo insegnano a cercare la linea più sparsa prima di toccare qualsiasi minore, e questo strumento dimostra concretamente tale strategia consentendoLe di confrontare uno sviluppo per riga con uno per colonna sulla stessa matrice.

Gli insegnanti lo usano per costruire soluzioni passo passo: l'array terms è esattamente la sequenza di prodotti che uno studente dovrebbe scrivere, quindi le correzioni possono mostrare ogni cofattore anziché un semplice numero finale. Gli studenti lo usano per trovare i propri errori — quando un calcolo manuale non coincide con lo strumento, il dettaglio per termine localizza l'errore in un minore specifico invece di obbligare a rifare tutto.

I programmatori che verificano una piccola routine di determinanti in ambito competitivo possono inoltre usare il percorso dei cofattori come oracolo indipendente rispetto a implementazioni basate su LU. Se Le serve un semplice determinante senza scegliere una linea, l'inversione di matrice, gli autovalori o minori simbolici su polinomi, li tratti come intenti separati anziché sovraccaricare questa pagina di sviluppo per cofattori.

Soluzioni di compiti passo passo

Sviluppi det(A) lungo la riga o colonna scelta e ottenga ogni elemento, segno, cofattore e contributo, così le correzioni mostrano l'intero sviluppo di Laplace e non solo il numero finale.

Esercizi sulla strategia delle linee con zeri

Confronti gli sviluppi lungo righe e colonne diverse della stessa matrice per dimostrare perché scegliere la linea con più zeri riduce al minimo il calcolo manuale.

Localizzazione degli errori per gli studenti

Quando un calcolo manuale non coincide con il determinante restituito, confronti il dettaglio per termine con il lavoro dello studente per trovare il minore esatto in cui è avvenuto l'errore.

La scelta della riga o della colonna cambia il determinante?

No. Il teorema di Laplace garantisce lo stesso valore lungo qualsiasi riga o colonna. La scelta cambia solo quanta aritmetica richiede lo sviluppo — le linee con più zeri costano meno, ed è per questo che lo strumento Le consente di scegliere la linea.

Cosa succede se la matrice non è quadrata?

Il determinante è definito solo per matrici quadrate; righe irregolari o conteggi diversi tra righe e colonne vengono rifiutati con un messaggio che indica la riga che fallisce.

Cosa contiene l'array terms?

Un record per ogni posizione della linea di sviluppo: l'elemento della matrice, la sua riga e colonna in base 1, il segno alternato dalla parità della posizione, il cofattore (determinante del minore con segno) e il contributo elemento per cofattore. Il determinante è la somma di tutti i contributi.

Qual è la dimensione massima della matrice?

n ≤ 10. I minori vengono sviluppati ricorsivamente, con costo fattoriale; il limite mantiene il percorso gratuito sotto il millisecondo. Le dimensioni di corsi e competizioni sono pienamente coperte.

Quanto costa?

Lo strumento nel browser è gratuito e funziona in locale.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

POSThttps://api.kit.forhosting.com/math/cofactor-expansion-old

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/math/cofactor-expansion-old \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"matrix":[[2,1,3],[0,4,1],[5,2,1]]}'
{
  "matrix": [
    [
      2,
      1,
      3
    ],
    [
      0,
      4,
      1
    ],
    [
      5,
      2,
      1
    ]
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "math.cofactor_expansion_old",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Come funziona lo sviluppo per cofattori lungo una linea scelta

Il teorema dello sviluppo di Laplace afferma che il determinante di una matrice n per n può essere calcolato lungo una qualsiasi riga o colonna: si moltiplica ogni elemento a_ij di quella linea per il suo cofattore C_ij, dove il cofattore è (-1) elevato alla potenza i più j per il determinante del minore ottenuto eliminando la riga i e la colonna j, e poi si sommano tutti gli n prodotti. Tutta l'aritmetica è codice in virgola mobile deterministico, senza semi casuali, senza timestamp di orologio e senza chiamate di rete, quindi input identici producono sempre JSON identico byte per byte.

Cosa invia e cosa riceve

Gli elementi nulli compaiono comunque nell'array terms con contribution zero, quindi lo sviluppo è pienamente verificabile. Usi il modulo gratuito nel browser per controlli rapidi, poi chiami il medesimo contratto dagli script per correzioni in blocco. Invii un unico campo obbligatorio chiamato matrix: un array JSON annidato di righe di numeri finiti, oppure una stringa JSON che codifica lo stesso array annidato. Ogni riga deve avere la stessa lunghezza, e tale lunghezza deve essere uguale al numero di righe affinché la matrice sia quadrata; una griglia due per tre fallisce subito con invalid_input e un messaggio che indica la riga incriminata. Due campi opzionali guidano lo sviluppo. axis, con alias along, accetta row o col e il valore predefinito è row. index, con alias line, è la posizione in base 1 della riga o colonna lungo cui sviluppare e il valore predefinito è uno; deve essere un intero tra uno e n. Matrice mancante, forme non array, righe irregolari, celle non numeriche, NaN, Infinity, griglie vuote, dimensioni oltre dieci, un axis sconosciuto o un index fuori intervallo falliscono tutti con invalid_input e non vengono addebitati. In caso di successo la risposta riecheggia la matrice pulita con arrotondamento stabile a dodici cifre significative, la dimensione intera n, l'axis e l'index risolti, il determinante come numero, abs_determinant, sign come meno uno, zero o più uno, un flag booleano is_singular, l'array completo terms con entry, row, col, sign, cofactor e contribution per ogni posizione della linea di sviluppo, e una breve stringa formula che nomina la linea usata. Le chiamate API riuscite costano la tariffa base pubblicata di $0.002 per elemento; i fallimenti di validazione non consumano saldo prepagato.

Perché la scelta della linea di sviluppo è importante

Poiché questa funzionalità è un motore di calcolo puro, il prezzo API è la tariffa base pubblicata di $0.002 per elemento riuscito e la validazione fallita non consuma saldo.

Leggi la documentazione completa del KIT →