Divisione per zero: differenze tra le versioni

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
Contenuto cancellato Contenuto aggiunto
Frank50 s (discussione | contributi)
Frank50 s (discussione | contributi)
Nessun oggetto della modifica
Riga 107: Riga 107:
== Aritmetica dei calcolatori ==
== Aritmetica dei calcolatori ==
[[File:TI86 Calculator DivByZero.jpg|thumb|Tentativo di effettuare una divisione per zero su una [[calcolatrice grafica]].]]
[[File:TI86 Calculator DivByZero.jpg|thumb|Tentativo di effettuare una divisione per zero su una [[calcolatrice grafica]].]]
Nello standard [[IEEE 754]] per la virgola mobile, supportato da praticamente tutti i moderni [[processore|processori]], viene specificato che ogni operazione aritmetica in [[virgola mobile]], compresa la divisione per zero, ha un risultato ben definito. Nell'aritmetica IEEE 754, {{Tutto attaccato|''a'' / 0}} è infinito positivo quando ''a'' è positivo, infinito negativo quando ''a'' è negativo, e [[NaN]] (''not a number'') quando {{Tutto attaccato|1 = ''a'' = 0}}. Queste definizioni derivano dalle proprietà dei limiti di rapporti, come discusso sopra.
Nello standard [[IEEE 754]] per la virgola mobile, supportato da praticamente tutti i moderni [[processore|processori]], viene specificato che ogni operazione aritmetica in [[virgola mobile]], compresa la divisione per zero, ha un risultato ben definito. Nell'aritmetica IEEE 754, {{Tutto attaccato|''a'' / 0}} è infinito positivo quando ''a'' è positivo, infinito negativo quando ''a'' è negativo, e [[NaN]] (''not a number'') quando {{Tutto attaccato|1 = ''a'' = 0}}.<ref>{{cite journal|last=Cody|first=W.J.|title=Analysis of Proposals for the Floating-Point Standard|journal=Computer|date=March 1981|volume=14|issue=3|pages=65|doi=10.1109/C-M.1981.220379|url=http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=1667286|accessdate=11 September 2012|quote=With appropriate care to be certain that the algebraic signs are not determined by rounding error, the affine mode preserves order relations while fixing up overflow. Thus, for example, the reciprocal of a negative number which underflows is still negative.}}</ref> Queste definizioni derivano dalle proprietà dei limiti di rapporti, come discusso sopra.


La divisione intera per zero è generalmente gestita differentemente poiché non vi è una rappresentazione intera per il risultato. La maggior parte dei processori genera una [[eccezione (informatica)|eccezione]] quando viene tentata la divisione intera per zero. Il risultato è tipicamente la terminazione del programma anche se in alcuni casi (specialmente quelli che impiegano l'aritmetica a [[virgola fissa]] nel caso in cui non sia disponibile hardware dedicato per la virgola mobile) viene impiegato un comportamento simile allo standard IEEE, utilizzando grandi numeri positivi e negativi per approssimare gli infiniti.
La divisione intera per zero è generalmente gestita differentemente poiché non vi è una rappresentazione intera per il risultato. La maggior parte dei processori genera una [[eccezione (informatica)|eccezione]] quando viene tentata la divisione intera per zero. Il risultato è tipicamente la terminazione del programma anche se in alcuni casi (specialmente quelli che impiegano l'aritmetica a [[virgola fissa]] nel caso in cui non sia disponibile hardware dedicato per la virgola mobile) viene impiegato un comportamento simile allo standard IEEE, utilizzando grandi numeri positivi e negativi per approssimare gli infiniti.

Versione delle 15:11, 25 lug 2015

La funzione presenta un asintoto per x = 0.

In matematica, una divisione per zero è una divisione della forma . Il risultato non esiste (cioè l'espressione non ha significato) in aritmetica e in algebra.

È piuttosto diffusa l'errata opinione per cui il valore di sarebbe (infinito). Questa affermazione fa riferimento, in modo non del tutto corretto, a una interpretazione della divisione in termini della teoria dei limiti dell'analisi matematica.

Esistono comunque particolari strutture matematiche all'interno delle quali la divisione per zero potrebbe essere definita in modo consistente (per esempio, la sfera di Riemann).

In informatica, e in particolare nell'implementazione elettronica dell'aritmetica nelle ALU dei processori, una divisione per zero causa un'eccezione (o trap) hardware e di conseguenza (in genere) la terminazione del programma che ha tentato l'operazione. Nei linguaggi interpretati come Java, un tentativo di eseguire una divisione per zero viene generalmente intercettato dall'interprete, che segnala l'anomalia (per esempio attraverso una eccezione) senza tentare di eseguire l'operazione.

Origini del problema

Il brahmasphutasiddhanta di Brahmagupta è il più antico testo conosciuto che tratta lo zero come un numero vero e proprio e che cerca di definire le operazioni che lo riguardano. L'autore tuttavia dà alla divisione per zero un significato che noi considereremmo scorretto; secondo Brahmagupta, infatti:

"Un numero positivo o negativo diviso per zero è una frazione avente lo zero al denominatore. Zero diviso per un numero negativo o positivo è equivalente sia allo zero che ad una frazione avente lo zero al numeratore e una quantità finita al denominatore. Zero diviso per zero è zero."

Nell'830, Mahavira tentò senza successo di correggere l'errore di Brahmagupta nel suo libro Ganita Sara Samgraha:

"Un numero non viene modificato quando diviso per zero."

Bhaskara II tentò di risolvere il problema definendo . Questa definizione non è priva di senso, ma può portare a paradossi se non viene trattata con attenzione. È difficile che Bhaskara II abbia compreso tutti i problemi connessi, quindi la sua soluzione non viene considerata corretta.[1]

Interpretazione algebrica

È generalmente stabilito fra i matematici che un modo naturale per interpretare la divisione per zero è di prima definire la divisione in termini di altre operazioni aritmetiche. Stando alle normali regole per l'aritmetica su interi, numeri razionali, numeri reali e numeri complessi, il valore di una divisione per zero è indefinito, così come in un qualunque campo. Il motivo è che la divisione è definita in modo da essere l'operazione inversa della moltiplicazione. Questo significa che il valore di è la soluzione x dell'equazione

qualora un tale valore esista e sia unico. In caso contrario l'espressione è indefinita.

Per b = 0, l'equazione b x = a può essere riscritta come 0 x = a o semplicemente 0 = a. Quindi, in questo caso, l'equazione b x = a ha nessuna soluzione se a è diverso da 0, e ne ha infinite se a è uguale a 0. In entrambi i casi, è indefinito. Al contrario, per i sistemi numerici menzionati sopra, l'espressione è sempre definita se b non è uguale a zero.

Dimostrazioni fallaci basate sulla divisione per zero

È possibile nascondere una divisione per zero in una dimostrazione algebrica, portando ad un sofisma algebrico simile a 2 = 1 come segue:

  • Per ogni numero reale :
  • Scomponendo entrambi i membri in modo diverso:

(Il termine di sinistra è ottenuto come caso particolare della ben nota regola (a + b)(a - b) = a2 - b2 ; quello di destra semplicemente raccogliendo x a fattor comune)

  • Dividendo entrambi i membri per x - x :
  • Poiché questo è valido per ogni valore reale di possiamo sostituire x = 1.

La fallacia è nell'assumere che la divisione per x - x = 0 sia definita.

In pratica, la divisione per un termine in una qualunque dimostrazione algebrica richiede o una esplicita assunzione che il termine non sia mai zero o una separata giustificazione che mostri che tale termine non possa mai essere zero.

Algebra astratta

Simili proposizioni sono vere in strutture algebriche più generali, come in un anello o in un campo. In un campo, ogni elemento non zero è invertibile sotto la moltiplicazione, così, come sopra, la divisione pone problemi solo durante la divisione per zero. In altri anelli, però, anche la divisione per elementi non zero può porre problemi. Consideriamo, per esempio, l'anello degli interi modulo 6. Quale significato dobbiamo dare all'espressione .

Questa dovrebbe essere la soluzione dell'equazione

Ma l'equazione ha due distinte soluzioni, x ≡ 1 (mod 6) e x ≡ 4 (mod 6) per cui l'espressione è indefinita. Il problema sorge poiché 2 non è invertibile rispetto alla moltiplicazione.

Limiti e divisione per zero

Ad un primo acchito, potrebbe sembrare possibile definire considerando il limite di con b che tende a 0.

Con b che tende a 0 da destra (positivo), per ogni maggiore di zero (positivo), è noto che:

invece per ogni a minore di zero (negativo),

Studiando invece il limite con b che tende a 0 da sinistra (negativo),

per a positivo

e per a negativo

Tuttavia usando l'equazione

si giunge al risultato errato +∞ = −∞ (che è scaturito dal non considerare la diversità del limite destro e sinistro in 0). Si potrebbe anche condurre uno studio considerando un "infinito senza segno", ma la definizione che ne risulterebbe non sarebbe generalmente utile e non sarebbe compatibile con la struttura dei numeri reali di campo ordinato.

L'equazione

ancora non possiede soluzione per ogni a finito. Inoltre, non vi è nessuna definizione ovvia di che possa essere derivata considerando il limite di una divisione. Il limite

non esiste. Limiti nella forma

nei quali sia ƒ(x) e g(x) tendono a 0 quando x tende a 0, possono convergere a qualunque valore o non convergere affatto. Vedere la regola di De L'Hôpital per discussioni ed esempi sui limiti di rapporti.

In analisi matematica

Nella teoria delle distribuzioni si può estendere la funzione ad una distribuzione sullo spazio intero dei numeri reali (utilizzando il valore principale di Cauchy). Non ha comunque senso chiedere il 'valore' di questa distribuzione con x = 0; una risposta sofisticata si appoggia al supporto singolare della distribuzione.

Altri sistemi numerici

Anche se la divisione per zero è indefinita coi numeri reali e gli interi è possibile definirla consistentemente in altre strutture matematiche, per esempio sulla sfera di Riemann (vedere anche i poli in analisi complessa). Nei numeri iperreali e nei numeri surreali la divisione per infinitesimi è possibile. Se un sistema numerico forma un anello commutativo, come gli interi, i numeri reali e i numeri complessi, per esempio, può essere esteso ad una ruota nella quale la divisione per zero è sempre possibile, anche se la divisione ha un significato leggermente diverso.

Aritmetica dei calcolatori

Tentativo di effettuare una divisione per zero su una calcolatrice grafica.

Nello standard IEEE 754 per la virgola mobile, supportato da praticamente tutti i moderni processori, viene specificato che ogni operazione aritmetica in virgola mobile, compresa la divisione per zero, ha un risultato ben definito. Nell'aritmetica IEEE 754, a / 0 è infinito positivo quando a è positivo, infinito negativo quando a è negativo, e NaN (not a number) quando a = 0.[2] Queste definizioni derivano dalle proprietà dei limiti di rapporti, come discusso sopra.

La divisione intera per zero è generalmente gestita differentemente poiché non vi è una rappresentazione intera per il risultato. La maggior parte dei processori genera una eccezione quando viene tentata la divisione intera per zero. Il risultato è tipicamente la terminazione del programma anche se in alcuni casi (specialmente quelli che impiegano l'aritmetica a virgola fissa nel caso in cui non sia disponibile hardware dedicato per la virgola mobile) viene impiegato un comportamento simile allo standard IEEE, utilizzando grandi numeri positivi e negativi per approssimare gli infiniti.

Note

  1. ^ (EN) J.J. O'Connor, E. F. Robertson, A history of Zero, su MacTutor History of Mathematics archive, School of Mathematical and Computational Sciences University of St Andrews, Novembre 2000. URL consultato il 25 Luglio 2015.
  2. ^ W.J. Cody, Analysis of Proposals for the Floating-Point Standard, in Computer, vol. 14, n. 3, March 1981, p. 65, DOI:10.1109/C-M.1981.220379. URL consultato l'11 September 2012.

Voci correlate

  Portale Matematica: accedi alle voci di Wikipedia che trattano di Matematica

Template:Categorie qualità