Showing posts with label matematica. Show all posts
Showing posts with label matematica. Show all posts

Saturday, May 21, 2016

Le parabole

Nota: ho scritto questo post per mio cugino che deve affrontare l'interrogazione di matematica, ma a scuola gli insegnano solo le formule a memoria senza nemmeno visualizzarne il significato e i poveri alunni si sentono persi e finiscono con l'odiare la matematica, mentre invece dovrebbero odiare solo la professoressa. Evidentemente ci sono molti insegnanti che non sono degni della cattedra su cui sono stati posti.

La parabola si ottiene dal cono. Quindi prima dobbiamo capire cos'è un cono. Immaginate un cono come quello del gelato, ma infinito (un gelato quindi infinitamente grande!). Un cono è un solido di rotazione generato da una semiretta fissa nel suo vertice (detta appunto "generatrice") ma libera di ruotare a 360° attorno ad un asse fisso di rotazione passante per il suo vertice pur mantenendo sempre la stessa angolazione rispetto all'asse. Il modo più semplice per rendersene conto è provare a far ruotare il vostro dito indice puntato in alto attorno ad un asse immaginario verticale. Oppure potete pensare di ruotare un triangolo rettangolo attorno ad uno dei suoi lati preso come asse di rotazione. Anche se questo genera solo un cono finito, come (purtroppo!) quello del gelato, di altezza cioè non infinita ma pari alla lunghezza del lato del triangolo mantenuto fisso durante la rotazione. Il lato opposto a quello considerato come asse sarà la semiretta generatrice, mentre il terzo descriverà il piano di basedel cono. Questo cono viene detto retto, perché l'altezza e il piano di base sono perpendicolari. Viene anche detto circolare perché la base è un circolo. Esistono anche coni obliqui ed ellittici, ma se parliamo di cono senza dire altro di solito si intende un cono circolare retto, tipo quello del gelato.

Preso un cono circolare retto, immaginate di tagliarlo nettamente con un coltello. Ebbene se lo tagliate in modo parallelo al suo piano di base (al di sotto del vertice ovviamente!) il bordo della superficie di taglio (in giallo nella figura qui sotto) sarà ovviamente una circonferenza perfetta ed otterete un tronco di cono su cui vi potete sedere. Inclinando però sempre di più il coltello (o piano di taglio), otterrete degli ellissi, sempre più schiacciati o "eccentrici" (come quello disegnato in rosso), finché se arrivate a tagliare in modo perfettamente parallelo alla semiretta generatrice, l'ellisse sarà di eccentricità infinita e non è più una figura chiusa. Esso diventa una parabola (disegnata in blu). Andando oltre con l'inclinazione si ottiene una iperbole (in verde) (in realtà un solo ramo. Se il cono fosse doppio, generato da una retta anziché una semiretta, si otterrebbero due rami). Sono stati i greci nel 200 a.C. a studiare per primi queste sezioni coniche. La parabola ha la caratteristica forma ad U, mentre la iperbole ha un forma pure ad U, ma una U più aperta ma è doppia, nel senso che è formata in realtà da due U una sopra l'altra e una di esse rovesciata.

Nel 17esimo secolo Isacco Newton ha scoperto che le sezioni coniche rappresentano i moti nel nostro sistema solare. In particolare cerchi ed ellissi con vari raggi e inclinazioni rappresentano quelli dei corpi legati al sole. Così i pianeti, gli asteroidi e le comete che fanno parte del sistema solare si muovono secondo orbite quasi circolari (Mercurio e Marte hanno la maggiore eccentricità, Venere e Nettuno la minore). Mentre invece una cometa di passaggio può seguire una traiettoria parabolica o iperbolica.

La parabola è importante anche perché rappresenta il moto idealizzato di un proiettile o una palla di cannone o anche un sasso che invece di essere lasciato cadere in verticale viene lanciato in una direzione non verticale, come quando si tirano i sassi nel mare. La cosa non stupisce se si accetta che la stessa forza che fa muovere i pianeti attorno al sole fa anche cadere le pietre sulla terra o fa andare in circolo un satellite. Fu Galileo Galilei a scoprire sperimentalmente questo fatto tra il 1604 e il 1608. Prima di Galilei si credeva che lanciando una pietra essa si muovesse di moto rettilineo e poi improvvisamente cadesse a terra, esaurito l'"impeto" della forza di chi l'aveva lanciata. Dal momento che oggetti lanciati su brevi distanza come le pietre che si gettano a mare hanno un moto parabolico a forma di U molto larga, nessuno si era accorto che il moto era effettivamente una parabola e non due rette perpendicolari. Però ai tempi di Galilei esistevano (purtroppo ma anche per fortuna della scienza) già i cannoni ed era chiaro che le palle di cannone che venivano gettate a grande distanza causa il grande impulso impresso dall'esplosione della polvere da sparo seguivano un moto ad U, una curva arrotondata e non due rette consecutive.

Ma le palle di cannone erano così veloci e Galilei non aveva alcun mezzo per misurare il percorso del proiettile e determinare di che tipo di curva si trattava. Con la tecnologia di oggi sarebbe facile. Basta una luce stroboscopica come quella delle discoteche e una telecamera e si può guardare il filmato a rallentatore. Ma Galilei non aveva nemmeno un orologio da polso, perché gli orologi meccanici non erano stati ancora inventati! Come ha fatto allora Galileo a capire e dimostrare matematicamente che il moto di un proiettile era parabolico? Ha dovuto far ricorso ad un esperimento molto ingegnoso.

Ha preso un piano inclinato e l'ha messo sul bordo di un tavolo. Poi ha preso una di bronzo inchiostrata e l'ha fatta rotolare lungo il piano. Cadendo in terra, dove aveva posto dei fogli di carta, la pallina ha lasciato un segno nel punto di caduta. Per far sì che la pallina fosse lanciata di traverso e non cadesse verticalmente oltre il bordo del tavolo, Galilei ci ha messo una specie di lamiera deflettore. Variando la velocità della pallina e l'altezza del tavolo, Galilei fu in grado di determinare sperimentalmente che il moto era una parabola.

Infatti detta x la distanza orizzontale percorsa dalla pallina, che può essere misurata grazie alla macchia d'inchiostro lasciata, ed y l'altezza del tavolo, risulta dall'analisi dei dati di tante misure che questi numeri sono sempre legati dalla relazione:

y=a x ^ 2
Dove a è un numero fisso. Se andiamo a disegnare in un diagramma cartesiano la curva che si ottiene congiungendo i punti (x,y) ottenuti assegnando valori abbastanza vicini di x a seconda della nostra scala e precisione di disegno e calcolando x con la suddetta formula, vediamo che ha la forma di una parabola. Questa parabola ha il vertice in (0,0). Se aggiungiamo un numero c costante alla formula:
y=a x ^ 2 + c
si ottiene uno spostamento verticale. Allora il vertice sarà (0,c), infatti per ponendo x=0 nella formula sopra si ottiene stavolta y=c e la posizione orizzontale del vertice non può cambiare se spostiamo la parabola solo verticalmente. Se invece la spostiamo solo orizzontalmente, allora quale sarà la formula matematica? E' facile, al posto della x nell'equazione:
y=a x ^ 2
bisogna mettere (x-s) dove s è l'entità dello spostamento. Se s è un numero positivo, ad es. 1, lo spostamento è di s unità a destra, mentre se è negatio è di s unità a sinistra, ma può essere anche un numero decimale per spostamenti arbitrariamente precisi. Si ottiene quindi:
y=a (x-s)^2
Ma (x-s)^2=(x-s)*(x-s)=x^2 - s x - s x + s^2=x^2 - 2s x + s^2 Ricordando che c'è anche a che moltiplica tutti i termini, la formula diventa:
y=a x ^ 2 - 2as x + a s^2
Il vertice della parabola sarà stato ovviamente spostato anch'esso di s. Le sue coordinate sono (s,0) (infatti ponendo x=s in una delle due formule precedenti viene 0, provare per credere). Vediamo adesso cosa succede se si combinano i due spostamenti. Basta che aggiungiamo c alla formula di prima:
y=a x ^ 2 - 2as x + a s^2 + c
Il vertice di questa parabola sarà (s,c).

Se uno si trova di fronte ad una formula del tipo:

y=i x^2 + j x + k
e vuole sapere qual'è il vertice della parabola, può allora furbescamente porre:
i = a
j = - 2 a s
k = a s^2 + c
essendo i,j,k numeri noti, si tratta di determinare s e c in funzione di loro e il vertice sarà appunto (s,c). Siccome i = a, la seconda equazione diventa:
j = - 2 i s
da cui si determina
s = - j / 2 i
Sostituendo i per a e questa espressione di s nella terza si ha:
k = i (- j / (2 i))^2 + c
da cui si determina c in funzione di i, j, k noti:
k = i j^2 / 4 i^2 + c
si semplifica la i a numeratore e denominatore
k = j^2 / 4 i + c

c = k - j^2 / 4 i
Quindi in conclusione, data una parabola di equazione:
y=i x^2 + j x + k
abbiamo dimostrato che il vertice ha coordinate:
(- j / 2 i, k - j^2 / 4 i)
Se uno non si ricorda la formula a memoria (io non la ricordo), può rifarsi da se la dimostrazione e ritrovarla. L'importante non è sapere le formule, ma saperle dimostrare. Si possono fare tutti gli esempi numerici e gli esercizi che uno vuole, ma se uno sa fare la dimostrazione della formula, non ha certo bisogno di esercizi, che sono meri calcoli noiosi. Comunque eccone uno:
x = y^2 - 3 y + 2
Non fatevi confondere dal fatto che x e y qui sono invertiti. Vale sempre la stessa formula, ma ovviamente le coordinate del vertice saranno pure invertite. Qui:
i = 1
j = -3
k = 2
Invece di
(- j / 2 i, k - j^2 / 4 i)
le coordinate del vertice saranno
(k - j^2 / 4 i, - j / 2 i)
facendo i conti risulta:
(2 - (-3)^2 / 4 1, - (-3) / 2 1)

(2 - 9/4, 3/2)

(8/4 - 9/4, 3/2)

(-1/4, 3/2)
Ma i numeri non sono la matematica. La matematica è fatta di dimostrazioni e di relazioni tra i suoi oggetti. I numeri sono solo conti, li sa fare anche un computer e meglio di noi. Sapere far di conto non significa sapere la matematica e nemmeno essere bravo in matematica.

Thursday, February 25, 2016

Clausole di Horn e Prolog

Cosa sono le clausole di Horn? La definizione formale di una clausola di horn
è: una clausola di Horn è una disgiunzione di letterali con al più un letterale
positivo, che nella sintassi Lisp (sotto forma di liste innestate) si scrive così:

(or (not x1) (not x2) ... (not xn) y)

Cerchiamo di chiarire le parole grosse usate in questa definizione che possono
confondere. La disgiunzione è semplicemente un OR logico (AND è detto invece
congiunzione). Un letterale è una formula atomica come x1, x2, ..., xn, y
oppure la sua negazione come (not x1) o (not y). Il letterale positivo è y,
positivo significa semplicemente che il letterale non è negato.

Notiamo che l'implicazione X -> Y, avente la seguente tabella di verità:

X Y | X -> Y
----+-------
F F |   V
F V |   V
V F |   F
V V |   V

è equivalente alla seguente disgiunzione, che è una semplice clausola di Horn,
come dimostrato dalla sua tabella della verità:

X Y | (not X) | (or (not X) Y)
----+---------+---------------
F F |    V    |       V
F V |    V    |       V
V F |    F    |       F
V V |    F    |       V

La cosa si vede subito se si pensa che l'implicazione è falsa solo quando
l'operando di sinistra (X, o proposizione "antecendente") è vero e il risultato
(operando di destra o proposizione "conseguente") è falsa, ed è appunto questo
l'unico caso in cui (or (not X) Y) è falso.

Se ora applichiamo il teorema di De Morgan per calcolare la negata di una
disgiunzione di termini tutti negativi:

(or (not x1) (not x2) ... (not xn))

viene fuori (or diventa and e i not spariscono):

(and x1 x2 ... xn)

Combinando queste due osservazioni possiamo ora riprendere una clausola di Horn:

(or (not x1) (not x2) ... (not xn) y)

e vederla come un'implicazione equivalente. Infatti è equivalente a :

(or (or (not x1) (not x2) ... (not xn)) y)

che è della forma

(or (not z) y)

dove

z = (not (or (not x1) (not x2) ... (not xn)))

Ma abbiamo visto che

(or (not z) y)

è equivalente a:

z -> y

Quindi anche la clausola di horn è equivalente a:

(not (or (not x1) (not x2) ... (not xn))) -> y

che applicando ancora il teorema di De Morgan si può semplificare in:

(and x1 x2 ... xn) -> y

quest'ultima allora è un modo logicamente del tutto equivalente di definire o
scrivere una clausola di Horn.

Cosa hanno a che fare queste clausole di Horn con la programmazione in pratica?
Considerate il linguaggio Prolog, un linguaggio di programmazione logica e
quindi di stile dichiarativo. Una regola in Prolog ha il formato:

testa :- coda.

Quel :- sta per <-. Nella notazione della logica si dovrebbe scrivere:

testa <- coda

oppure

coda -> testa

Data allora una clausola di Horn nella sintassi con l'implicazione:

(and x1 x2 ... xn) -> y

questa si scrive in Prolog in questo modo:

y <- (and x1 x2 ... xn)

y :- (and x1 x2 ... xn)

y :- x1, x2, ..., xn.

Dal momento che tutte le clausole devono essere terminate con un . e la virgola
rappresenta come sapete l'operazione logica di AND. Anche una clausola di tipo
fatto, semplicemente:

y.

è equivalente ad una banale clausola di Horn:

true -> y

o nella sintassi con disgiunzione:

(or y)

Quindi un programma Prolog non è altro che una lista di clausole di Horn, per
quanto grande possa essere questa lista, non c'è nient'altro. In altri termini,
programmando in Prolog, si programma con le clausole di Horn!

Nota: siccome una clausola di Horn deve contenere al più un letterale positivo,
potrebbe non averne alcuno, quindi se non c'è y, anche questa è una clausola di
Horn in accordo con la definizione:

(or (not x1) (not x2) ... (not xn))

come si scrive questa come implicazione? Dal momento che è equivalente a questa
(avendo posto Y=false):

(or (not x1) (not x2) ... (not xn) false)

l'implicazione equivalente sarà:

(and x1 x2 ... xn) -> false

che equivale nella notazione del Prolog a una regola "senza testa" o con testa false:

false :- x1, x2, ..., xn.

:- x1, x2, ..., xn.

Questa rappresenta un goal, in particolare il goal che risolve il problema.


Saturday, April 5, 2014

Indovinello nel campo delle capre

Domanda


Nel mio campo bazzicano un certo numero di capre e di polli. Contando le zampe, se ne vedono 22, mentre le teste sono 8. Quante capre e quanti polli ci sono?

Risposta


Ci sono vari modi per risolvere questo problema, tutti equivalenti. E' istruttivo vederli tutti e confrontarli tra loro.

Soluzione del contadino


Un contadino che non ha mai studiato concetti avanzati di matematica e conosce solo la tabellina pitagorica imparata alle scuole elementari, potrebbe ragionare a tentativi e, credetemi, non è un modo sbagliato di ragionare. Infatti, anche se non molto efficiente, funziona: se ci sono 8 teste, non possono essere tutte capre e zero polli, perché 8*4=32 zampe > 22. Abbiamo fatto 8 per 4 perché ogni capra ha ovviamente 4 zampe. Siccome anche 7*4=28 > 22, non ci possono essere nemmeno 7 capre. Similmente 6*4=24 > 22.

Proviamo poi con 5 capre: 5*4=20, stavolta è minore di 22! Potrebbe essere la soluzione. Vediamo se i conti delle zampe tornano: se  ci sono 5 capre, ci sono 20 zampe come appena visto, ma restano solo 2 zampe, che vuol dire solo 1 pollo, per un totale di 5+2=7 teste < 8. Il problema afferma che il numero delle teste è 8, ma così ce ne sarebbero solo 7. Quindi non ci possono essere 5 capre.

Similmente 4 capre * 4 zampe/capra = 16 zampe (di capra)< 22, ma 4 polli * 2 zampe/pollo = 8 zampe (di pollo) e 16 zampe (di capra) + 8 zampe (di pollo) = 24 zampe > 22.

Proviamo allora con 3. Dunque, 3 capre*4 zampe/capra=12 zampe. Poi 8 teste - 3 teste (di capra) = 5 teste (di pollo). 5 teste di pollo implica (ovviamente) 5 polli, per un totale di 5 * 2 = 10 zampe (di pollo). 12 zampe (di capra) + 10 zampe (di pollo) = 22 zampe. Allora questa è la soluzione, ci sono 3 capre e 5 polli!

Un altro contadino, potrebbe fare un ragionamento simile partendo dall'ipotesi di 0 capre, 1 capra, 2 capre, fino a 3 capre, oppure da quella di 0 polli, 1 pollo... fino a 5 polli. Un altro ancora potrebbe partire da 8 polli, per poi ridurne il numero fino a 5, per far tornare il conto totale delle zampe. Tutte le strade portano ovviamente alla stessa soluzione.

Il numero dei tentativi da fare in questo caso non è alto, ma in generale capita che potrebbe essere proibitivo. E' per questo motivo che in matematica si sono sviluppate tecniche e metodi più rapidi per trovare la soluzione delle equazioni, basati sulla manipolazione simbolica delle stesse, come vedremo nel prossimo paragrafo.

Soluzione del matematico


Un matematico avvezzo a risolvere i problemi in modo analitico, indica on C il numero delle capre, con P quello dei polli e scrive un sistema di due equazioni, la prima che afferma che il numero di zampe è 22 e la seconda equivale a dire che il numero di teste è 8.

4*C + 2*P = 22
C + P = 8

Bisogna quindi trovare i valori di C e P (se esistono) tali che entrambe le equazioni siano soddisfatte e questi saranno rispettivamente il numero delle capre e dei polli.

Dell'esistenza di una soluzione siamo sicuri, a meno che chi ha contato le zampe non ha sbagliato il conto. In generale però si possono avere sistemi d'equazione che non ammettono una soluzione intera positiva, come ad es. questo:

C + 2P = 3
C + P = 1

la cui soluzione è C = -1 e P = 2, oppure questo:

C - P = 0
C + P = 1

la cui soluzione è C = 1/2 e P = 1/2. Ovviamente non può esistere una mezza capra o un numero di capre negativo, ma se C e P hanno altri significati (in altri problemi) la soluzione potrebbe essere accettabile.

Esistono anche sistemi d'equazione che non ammettono soluzione, come ad es:

C + P = 1
C + P = 2

Ovviamente non possono esistere due numeri C e P tali che la loro somma sia contemporaneamente uguale sia a 1 sia a 2!

Tornando al nostro sistema originale, a questo punto ci sono vari modi per trovare la soluzione:

risoluzione per sostituzione

C + P = 8 è equivalente a C = 8 - P. Sostituendo nella prima equazione, quella del numero delle teste, si ottiene una sola equazione nella sola variabile P:

4*(8-P) + 2*P = 22
32 - 4*P + 2*P = 22
32 - 2*P = 22
32 - 22 = 2*P
10 = 2*P

Un valore di P che risolve questa equazione è ovviamente 5, in quanto 10 = 2*5. Allora se P=5, la seconda equazione del sistema C + P = 8 diventa:

C + 5 = 8

e questo ci fa trovare il valore di C, C = 3. Quindi C = 3 e P = 5 risolvono il sistema e il problema. In altri termini ci sono 3 capre, per un totale di 12 zampe di capra e 3 teste di capra e 5 polli, per un totale di 10 zampe di pollo e 5 teste di pollo. Il numero totale di teste è 8 e quello di zampe è 12 + 10 = 22, come affermato nel testo del problema, quindi abbiamo verificato che la soluzione è corretta.

risoluzione per sottrazione d'equazioni

Dato il sistema:

4*C + 2*P = 22
C + P = 8

un sistema equivalente si ottiene moltiplicando entrambi i membri della seconda equazione per 2:

4*C + 2*P = 22
2*C + 2*P = 8*2

A questo punto sottraendo membro a membro si ottiene un'equazione nella sola incognita C:

4*C - 2*C + 2*P - 2*P = 22 - 16
2*C= 6
C = 6 / 2 = 3

da C + P = 8 si ottiene poi P = 8 - C = 8 - 3 = 5.

risoluzione per cambio di variabili

Un altro matematico potrebbe risolvere il sistema con un trucchettoso cambio di variabili, ponendo:

C = CP + CS
P = CP - CS

Introducendo le due variabili CP e CS, legate da queste relazioni di somma e sottrazione con le variabili originarie C e P, si ottiene un nuovo sistema, stavolta nelle variabili CP e CS, che si spera esser più facile da risolvere:

4*C + 2*P = 22
C + P = 8

4*(CP + CS) + 2*(CP - CS) = 22
(CP + CS) + (CP - CS) = 8

6*CP + 3*CS = 22
2*CP = 8

Come si vede dall'ultima equazione, le sostituzioni permettono di calcolare immediatamente CP = 4. La prima equazione consente poi di calcolare CS:

6*4 + 2*CS = 22

CS = -2 / 2 = -1

Noti CP e CS, le posizioni iniziali:

C = CP + CS
P = CP - CS

consentono di risalire a C ed S:

C = 4 - 1 = 3
P = 4 - (-1) = 5

CP e CS non hanno alcun significato particolare. In generale questo metodo usa sostituzioni trucchettose, che hanno il solo scopo di semplificare il sistema, producendo un sistema con un'equazione contenente una sola incognita (CP nel caso precedente), quindi pronto per essere agevolmente risolto.

Tuttavia in alcuni casi le nuove variabili potrebbero avere un'interpretazione, anche se fantasiosa. Ad es., se i dati del problema fossero stati 28 zampe e 8 teste:

4*C + 2*P = 28
C + P = 8

allore le stesse sostituzioni:

C = CP + CS
P = CP - CS

avrebbero condotto ad un sistema nelle variabili CP e CS che ha come soluzione dei numeri interi positivi:

6*CP + 2*CS = 28
2*CP = 8

CP in tal caso è 4 e CS = (28 - 24) / 2 = 4 / 2 = 2. Da questi si trova:

C = 4 + 2 = 6
P = 4 - 2 = 2

L'interpretazione fantasiosa di CP (che giustifica il nome scelto per questa variabile) è quella di un animale chiamato capra-pollo, avente 6 zampe e 2 teste (infatti nel sistema nelle variabili CP e CS, CP compare con i coefficienti 6 nella prima equazione e 2 nella seconda), come se una capra e un pollo fossero attaccati insieme in un'unico animale. Mentre CS sarebbe una capra "spollata", priva di testa e con solo due zampe, una specie di differenza tra la capra e il pollo. Una capra ha 4 zampe e 1 testa, togliendo una testa non ne resta nessuna e togliendo 2 zampe, ne restano solo 2.

In altri termini il cambio di variabili è stato equivalente a risolvere lo stesso problema per questi due animali fantasiosi (per cui si ottiene un sistema di più facile soluzione), per poi tornare alla soluzione originaria, facendo uso delle posizioni fatte. A questo proposito c'è da notare che questo metodo risulta di difficile applicazione in generale. Non sempre è facile indovinare le sostituzioni giuste che semplificano il sistema e a seconda del sistema originario, potrebbero non essere semplicemente una somma e una sottrazione.

Saturday, June 1, 2013

The binomial coefficient - an explanation for kids

The binomial coefficient (n choose k) is very simple to understand, if explained by means of an example.

For instance if I have 52 cards and want to count all possible ways to choose two cards from the deck, I reason like this: the first card I can obviously
choose in 52 ways. For each choice of the first card I have 52-1=51
ways to choose the second one, so in total there are 52*51=2652 ways, if I
care about order. If I do not, I have to divide by two, because 2 are
all the possible ways to permute each set of two cards. Therefore I
have 52*51/2=1326. This is the value of "52 choose 2".

Now, what is "52 choose 3"? Same reasoning: 52*51*50 gives me all
combinations, also those differing for order only. If I want to consider
all combinations having the same three cards but in different order as
the same combination, I have to divide that figure by the number of these
permutations.
Now, in how many ways can two elements permute? 2 ways (AB, BA). And 3
elements? It's 3*2 ways: ABC, ACB, BAC, BCA, CAB, CBA. You see I put A
as the first element, then permuted the remaining two (B and C). Then I put B as the first and permuted the other two (A and B)... So 52 choose 3 is
52*51*50/(3*2).

What is n choose k? It's n*(n-1)*..*(n-k+1)/(k*(k-1)*...*2)
It looks like a complicated formula, but you can see it works for n=52 and
k=2,3 or any other value of n and k. Well, not really any. Obviously, for this to make sense n-k+1 must be non-negative and non-zero, that is n-k+1>0 or n>k-1. Since k and n are integer, n>k-1 means n>=k (e.g. if k=5, n>5-1 or n>4 means n>=5, given that n is also integer). The formula does not make sense if n
Mathematicians call k*(k-1)*...*2*1 (I have added a harmless *1) the
"factorial of k". It's just a specific word for the product of an
integer by all the integers that come before it, up to 1. Factorial comes from factor, indeed it is a big or long sequence of factors. If you denote the factorial by a bang, you can write the above formula in a more compact
way: n*(n-1)*..*(n-k+1)/k! If not still satisfied, you can put n! at the
numerator, but then to compensate you have to divide by (n-k)!, so you
have n!/((n-k)!k!) or n!/(k!(n-k)!) and this is the most compact form.

Tuesday, April 20, 2010

A study of uniformly accelerated motion

A motion is said to be uniformly accelerated/decelerated if during equal time-intervals, we have equal increments/decrements of speed that is the acceleration is a positive/negative constant. For example that can be the case for a free falling object, but beware that this would be only an ideal approximation of its motion. It is only valid when we can neglect the air friction compared to the weight of the object.

Therefore it would be an inadequate model for a feather falling on earth which has a very small weight or mass but offers a large resistance to the air. Instead it's a good approximation for a stone falling on earth or a feather on the moon whose atmosfere is extremely rarefied. And it's an exact surprising law only in vacuum when there are no other forces involved other than gravitation.

The constant value of gravitational acceleration was found for the first time by the great ancient Italian physicist Galileo Galilei. He had the smart idea of using inclined planes in order to delay the motions by reducing the gravitational force (and hence the proportional acceleration). By making the rolling balls and ramps very smooth, decreased obtained acceleration is also constant and no other appreciable friction is introduced. Galileo didn't have a wristwatch for time measurements, instead he used a very simple water clock which is not very precise. That is the reason why he needed to slow down the falling motion.

Here's a mathematical derivation of the constant acceleration motion equations applied to something that is left to fall. For more general formulas see also here.

Ingredients: Newton's second law, mathematical general definitions of acceleration and speed

Results: how position and speed change over time in such a motion

Procedure:

f = m a

f = m dv / dt

f dt = m dv

For simplicity when we integrate this, we can set the starting time to 0, but this is unnecessary.
To be fussy the upper integration limit should be named differently from the integration variable t, but as long as we don't confuse things we can avoid introducing another name for the time variable in the result.

t           v(t)
∫  f dt = m   ∫ dv
0           v(0)

Let's suppose that f is constant respect to the time t, as gravitational force is. Really is not, but this approximation is as much good as the distances covered are small compared to the earth radius. That's about 6371 km and we're not launching a space shuttle here ;-)

Taking f outside of the integral sign we get:

f t = m [ v(t) - v(0) ]
v(t) = v(0) + a t

This tells us how speed changes. It increases linearly over time. Acceleration a here plays the role of a proportionality constant. If the moving object starts from rest, of course v(0)=0.

If we now mix in the definition of speed (velocity modulus):

v(t) = ds / dt

set the origin of our coordinate system so that s(0)=0:

t           s(t)
∫ v(t) dt =   ∫ ds
0          s(0)=0

and insert the previous found expression for v(t), we finally have:

s(t) = v(0) t + a t^2 / 2

E.g. if you let fall a high density object like a hammer from rest, the distance it will travel over time grows quadratically as:

s(t) = g t^2 / 2

Here a = g, the gravitational acceleration. In all honesty is not constant, not even throughout earth surface, because it depends on latitude too. A reasonably approximate mean value also found by Galileo is 9.8 m/s^2. After one second a hammer or a piece of wood will cover about 4.8 metres. Mass counts for very little if the object density is not too low so that floating effects and air friction can be ignored. More on this here.

Tuesday, March 30, 2010

Al-Khorezmi: Un Matematico Dimenticato

(traduzione, più o meno letterale dall'articolo originale in Spagnolo del Prof. Ricardo Baeza-Yates)

Al-Khorezmi: Un Matematico Dimenticato


Quando in una sottrazione non resta nulla, allora scrivi un piccolo cerchio affinché non rimanga un posto vuoto (Al-Khorezmi spiegando lo zero, Secolo IX).

Introduzione


Molti si domanderanno chi è Al-Khorezmi. Probabilmente indovinerete solo la sua origine araba, eppure Al-Khorezmi dovrebbe essere conosciuto tanto quanto Pitagora o Euclide.
E' grazie a lui che la matematica moderna usa l'attuale sistema numerico, di derivazione indiana. Oltre a ciò, i termini numerale (cifra, numero) e algoritmo derivano dal suo nome che in arabo significa "quello di Khorezm", suo luogo d' origine. Un algoritmo, secondo il dizionario della Reale Accademia Spagnola, è una sequenza o insieme ordinato di passi o operazioni che permette di trovare la soluzione di un problema (in un'altra accezione è il metodo e la notazione usato nelle diverse forme di calcolo). Nonostante gli algoritmi risalgano al tempo dei babilonesi e i greci inventarono algoritmi tuttora celebri (per esempio, quello di Euclide per calcolare il massimo comun divisore di due numeri), fu Al-Khorezmi il primo che progettò algoritmi pensando anche alla loro efficienza, in particolare, per il calcolo delle radici delle equazioni. La teoria degli algoritmi è uno dei pilastri dell'informatica, una scienza neppure sognata mille anni fa.

Ci sono molte varianti del nome Al-Khorezmi scritto nell'alfabeto latino, per esempio al-Khwarizmi, Al-Khawarizmi, Al-Khawaritzmi o al-Khowarizmi. Abbiamo scelto di usare la più semplice, il chè non significa che sia necessariamente la migliore.

Francobollo russo emesso nel 1983 per commemorare il 1200esimo anniversario della nascita di Al-Khorezmi (cortese concessione di Jeff Miller)

Vita


Muhammad ibn Musa abu Djafar Al-Khorezmi nacque intorno al 780 DC (altri dicono l'800 DC) a Khorezm, nel sud del Mare d'Aral (oggi Khiva, Uzbekistan), che era stato conquistato 70 anni prima dagli arabi. Il suo nome dice già molto, dato che significa "Mohamed, figlio di Mosè, padre di Jafar, originario di Khorezm". La sua fama dovette essere molto grande se tutto il mondo lo conobbe per il suo luogo d'origine. Verso l'820, Al-Khorezmi fu chiamato a Badgad dal califfo abbaside Al-Mamun, secondo figlio di Harun ar-Rashid, a tutti noto grazie a "Le Mille e una Notte". Al-Mamun continuò a promuovere la crescita della scienza araba e dell'Accademia delle Scienze creata da suo padre, chiamata la Casa della Sapienza, il che portò importanti conseguenze nello sviluppo della scienza in Europa, principalmente attraverso la Spagna. Poco si sa della sua vita, solo che compì viaggi in Afganistan, nel sud della Russia e a Bisanzio (oggi Istanbul, in Turchia). Morì a Bagdad verso l'850 DC (oppure, si calcola, l'840 DC).

Opere


La maggiorparte delle sue dieci opere sono conosciute in modo indiretto o attraverso le traduzioni latine fatte successivamente (specialmente a Toledo) e di qualcuna si sa solo il titolo. Al-Khorezmi ci ha trasmesso conoscenze acquisite dai greci e dagli indiani, principalmente di matematica, ma anche di astronomia (tra cui il calendario ebraico), astrologia, geografia e storia. Il suo lavoro più noto e usato furono le sue Tavole Astronomiche, basate sull'astronomia indiana. Vi si trovano algoritmi per calcolare le date e le prime tavole conosciute delle funzioni trigonometriche seno e cotangente. La cosa che più stupisce è che non usò i numeri negativi (che ancora non si conoscevano), né il sistema decimale né le frazioni, anche se aveva già il concetto dello zero.

La sua Aritmetica, tradotta in latino come "Algoritmi de numero Indorum" (Algoritmi sui numeri degli indiani) introduce il sistema numerico indiano (conosciuto dagli arabi solo una cinquantina d'anni prima) e gli algoritmi per eseguire calcoli con esso. Segue parlando dell'Algebra, un'introduzione compatta al calcolo, usando regole precise per completare e ridurre le equazioni. Oltre a trovare il metodo generale per la soluzione delle equazioni quadratiche, tratta anche della geometria, dei calcoli commerciali e delle ripartizioni di eredità. Probabilmente è questo il più antico libro arabo conosciuto e parte del suo titolo "Kitab al-jabr wa'l-muqabala" dà origine alla stessa parola algebra. Gli storici non si sono messi d'accordo sulla migliore traduzione da dare al titolo ma il significato è "Il libro della riduzione e del bilanciamento" ovvero "L'arte di risolvere le equazioni".

Eredità culturale


L'opera di Al-Khorezmi consentì di preservare e diffondere le conoscenze dei greci (con la notevole eccezione del lavoro di Diofanto) e degli indiani, che sono poi divenute pilastri della nostra civiltà. La caratterizza il rigore dei greci e la semplicità degli indiani (quando, ad esempio, usa i disegni e la parola "guarda" invece di fare una lunga dimostrazione). I suoi libri sono intuitivi e pratici e il suo principale contributo fu di semplificare la matematica a un livello comprensibile ai non esperti.
Espone con profondità i vantaggi nell'usare il sistema decimale indiano, una scelta coraggiosa per l'epoca, considerando la forza delle tradizioni nella cultura araba. La chiara esposizione su come far calcoli in modo sistematico tramite algoritmi concepiti per essere usati con qualsiasi tipo di dispositivo meccanico simile ad un abaco, oltre che con carta e penna, è prova dell'intuito e del potere di astrazione di Al-Khorezmi. Si preoccupava persino di ridurre il numero di operazioni necessarie in ciascun calcolo. Per questo motivo, nonostante non sia stato lui l'inventore del primo algoritmo, è giusto che questo concetto sia associato al suo nome. Al-Khorezmi fu senza dubbio il primo pensatore algoritmico.

Questo articolo è una versione estesa dell'edizione del Maggio 1997 della mia colonna sulla rivista "Informatica", e fu pubblicata nel primo volume e numero del periodico online "Ciencia Al Día" nel 1998. Sono grato alle numerose persone che mi hanno inviato commenti e osservazioni.

Sunday, January 31, 2010

Indovinello sulla probabilità

In un gioco televisivo ogni giorno viene messo in palio un premio, che tre telespettatori possono tentare di vincere scegliendo un oggetto particolare tra 12 a caso.

Qual è la probabilità che oggi (o in un giorno qualsiasi) venga assegnato il premio?

La soluzione.

Indovinello sulla probabilità - Soluzione

Se P(A) è la probabilità di un evento A, la probabilità dell'evento complementare è 1-P(A). A volte risulta più facile calcolare 1-P(A) e poi risalire a P(A) che non il viceversa, come in questo caso. La probabilità richiesta è:

1 - probabilità che non venga assegnato il premio.

La probabilità che nessuno dei tre indovini il premio è:

11   10    9   3
-- * -- * -- = -
12   11   10   4

Uno meno questo fa 1 - 3/4 = 25%.

Sunday, December 13, 2009

Il paradosso della fascia

Una sfera perfetta grande quanto il sole è cinta all'equatore da una sottile fascia rigida (es. d'acciaio). Si supponga di allungare la banda di 1 metro, in modo che si elevi dalla sfera in modo uniforme, ovvero il suo centro rimanga coincidente con quello della sfera.

Questo anello sarà tanto largo da poterci infilare sotto:


Vedere la soluzione.

Il paradosso della fascia - Soluzione

Leggete prima l'enunciato se non lo avete già fatto. Quella che segue è la soluzione.

La banda solida si può approssimare ad un cerchio perfetto, trascurando il suo spessore in quanto di molto inferiore ad 1 metro.

Com'è noto la misura della circonferenza di un cerchio dipende linearmente dal suo diametro o raggio, tramite una costante caratteristica che è il pigreco, un numero aperiodico illimitato (il suo valore approssimato a 5 cifre decimali è 3.14159):

c = π d = 2 π r

Indicate col pedice 1 le misure della fascia prima dell'allungamento e con 2 quelle dopo e infine con "e" l'elevazione della banda rispetto alla sfera che cinge all'equatore, si ha il seguente sistema di equazioni:

c1 = 2 π r1
c2 = 2 π r2
c2 = c1 + 1
e = r2 - r1

Dal momento che l'incognita è "e", lo riscriviamo in queste forme equivalenti, allo scopo di arrivare a una soluzione:

2π r1 + 1 = 2π r2
e = r2 - r1

e = r2 - r1 = 1 / (2π) ≈ 0.16

La cosa sorprendente è che l'elevazione risultante dipende solo dall'allungamento "a" e non dal raggio della sfera r1:

      a
e = -----
     2 π

A parità di "a" si ottiene proporzionalmente il valore di "e" indipendentemente dalle dimensioni della sfera o dell'anello, che sia tanto grande come il sole o tanto piccola come una mela. Questa situazione è falsamente paradossale.

L'elevazione in effetti non è altro che un incremento del raggio della banda e tale incremento è proporzionale alla lunghezza aggiunta alla circonferenza e del tutto indipendente dalle dimensioni iniziali del raggio o della circonferenza.

Il falso paradosso si ha se si pensa erroneamente che sussista una dipendenza di proporzionalità dell'elevazione direttamente dal raggio o dalla circonferenza, iniziale o finale.

In altri termini si confonde il concetto di variazione di una grandezza con la grandezza stessa (la lunghezza del raggio).

Nel nostro caso per 1 m di allungamento abbiamo poco meno di 16 cm di elevazione, una palla da baseball è larga meno di 8 cm e ci entra benissimo.

Ancora una osservazione: riscrivendo la formula come a = 2π e, notate che l'elevazione e rappresenta proprio il raggio d'una circonferenza che misura quanto la lunghezza aggiunta!

In effetti dal momento che anche agli antipodi di un qualsiasi punto fissato sulla circonferenza si ha la stessa elevazione questa relazione non sorprende. Detto in altri termini: se si espande una circonferenza di una certa lunghezza a, il suo diametro aumenta proporzionalmente ad a e la costante di proporzionalità è π-1.