I computer digitali possono capire l'infinito?


39

Come essere umano, possiamo pensare all'infinito. In linea di principio, se abbiamo abbastanza risorse (tempo, ecc.), Possiamo contare infinitamente molte cose (incluso astratto, come numeri o reali).

Ad esempio, almeno, possiamo prendere in considerazione numeri interi. Possiamo pensare, principalmente, e "capire" infinitamente molti numeri che vengono visualizzati sullo schermo. Al giorno d'oggi, stiamo cercando di progettare l'intelligenza artificiale che sia capace almeno come essere umano. Tuttavia, sono bloccato con l'infinito. Cerco di trovare un modo come insegnare a un modello (in profondità o meno) a capire l'infinito. Definisco "comprensione" in un approccio funzionale. Ad esempio, se un computer è in grado di differenziare 10 numeri o cose diverse, significa che in qualche modo comprende veramente queste diverse cose. Questo è l'approccio semplice e diretto alla "comprensione".

Come ho detto prima, gli umani comprendono l'infinito perché sono in grado, almeno, di contare numeri interi infiniti, in linea di principio. Da questo punto di vista, se voglio creare un modello, il modello è in realtà una funzione in senso astratto, questo modello deve differenziare infinitamente molti numeri. Poiché i computer sono macchine digitali che hanno una capacità limitata di modellare una funzione così infinita, come posso creare un modello che differenzia infinitamente molti numeri interi?

Ad esempio, possiamo prendere un modello di visione di apprendimento profondo che riconosce i numeri sulla carta. Questo modello deve assegnare un numero a ciascuna carta diversa per differenziare ogni numero intero. Poiché esistono numeri infiniti di numeri interi, come può il modello assegnare un numero diverso a ciascun numero intero, come un essere umano, sui computer digitali? Se non riesce a differenziare le cose infinite, come capisce l'infinito?

Se tengo conto dei numeri reali, il problema diventa molto più difficile.

Qual è il punto che mi manca? Ci sono risorse che si concentrano sull'argomento?


30
La maggior parte di noi umani non capisce abbastanza bene l'infinito. Incluso me.
ingenuo

2
@Amrinder Arora secondo la forte intelligenza artificiale, possiamo supporre che la comprensione stia solo fingendo. Pertanto, il modello che può differenziare segnali diversi in qualche modo comprende i segnali o le nozioni (come lo chiami).
Verdery,

6
Di recente ho avuto una lunga discussione con alcune persone molto intelligenti che semplicemente non capivano come potessero esserci altrettanti numeri interi, numeri interi positivi, persino numeri interi, persino numeri interi positivi e numeri primi. Quindi, sfiderei la tua affermazione che gli umani capiscono l'infinito. Inoltre, tieni presente che matematicamente non esiste "infinito". Esistono molti rami della matematica, che possono avere tutti nozioni diverse di infinito, e ogni ramo della matematica può avere no, una o più nozioni di infinito. Quindi, ci sono anche infiniti "dimensionati" diversi!
Jörg W Mittag,

8
Sono un po 'confuso che nessuno ha sottolineato che praticamente ogni computer gestisce già l'infinito, in particolare con IEEE 754
Stop Harming Monica

2
@ JörgWMittag è corretto. L'infinito è un concetto che viene definito in diversi modi a seconda del campo della matematica. IEEE754 definisce un insieme di regole abbastanza coerenti per gestire gli infiniti che sono alla base della maggior parte dei sistemi aritmetici reali sulla maggior parte dei computer. Ma ci sono altre regole. A un'intelligenza artificiale possono essere insegnate tali regole. Se riesco a inventarne di nuovi e migliori è fuori dal mio voto: en.wikipedia.org/wiki/G%C3%B6del%27s_incompleteness_theorems
Rich

Risposte:


55

Penso che questo sia un malinteso abbastanza comune sull'IA e sui computer, specialmente tra i laici. Ci sono diverse cose da decomprimere qui.

Supponiamo che ci sia qualcosa di speciale nell'infinito (o nei concetti continui) che li rende particolarmente difficili per l'IA. Perché questo sia vero, deve essere sia il caso che gli umani possano comprendere questi concetti mentre rimangono estranei alle macchine, sia che esistano altri concetti che non sono come l'infinito che sia gli umani che macchine possono capire. Ciò che mostrerò in questa risposta è che volere entrambe queste cose porta a una contraddizione.

La radice di questo malinteso è il problema di cosa significhi capire . Comprensione è un termine vago nella vita di tutti i giorni e quella natura vaga contribuisce a questo malinteso.

Se per capire, intendiamo che un computer ha l'esperienza cosciente di un concetto, allora siamo rapidamente intrappolati nella metafisica. C'è un lungo dibattito aperto e sostanzialmente aperto sul fatto che i computer possano "capire" qualcosa in questo senso, e anche a volte, se gli umani possano farlo! Potresti anche chiedere se un computer può "capire" che 2 + 2 = 4. Pertanto, se c'è qualcosa di speciale nella comprensione dell'infinito, non può essere correlato alla "comprensione" nel senso dell'esperienza soggettiva.

Quindi, supponiamo che da "capire", abbiamo in mente una definizione più specifica. Qualcosa che renderebbe un concetto come l'infinito più complicato per un computer da "comprendere" di un concetto come l'aritmetica. La nostra definizione più concreta di "comprensione" deve riguardare una capacità o abilità oggettivamente misurabili relative al concetto (altrimenti, siamo tornati nella terra dell'esperienza soggettiva). Consideriamo quale capacità o abilità potremmo scegliere che renderebbe l'infinito un concetto speciale, compreso dagli umani e non dalle macchine, a differenza, per così dire, dell'aritmetica.

Potremmo dire che un computer (o una persona) comprende un concetto se può fornire una definizione corretta di quel concetto. Tuttavia, se anche un essere umano comprende l'infinito con questa definizione, allora dovrebbe essere facile per loro scrivere la definizione. Una volta che la definizione è scritta, un programma per computer può emetterla. Ora anche il computer "capisce" l'infinito. Questa definizione non funziona per i nostri scopi.

Potremmo dire che un'entità comprende un concetto se può applicare il concetto correttamente. Ancora una volta, se anche una sola persona capisce come applicare correttamente il concetto di infinito, dobbiamo solo registrare le regole che stanno usando per ragionare sul concetto e possiamo scrivere un programma che riproduca il comportamento di questo sistema di regole. Infinity è in realtà molto ben caratterizzato come un concetto, catturato da idee come Aleph Numbers . Non è pratico codificare questi sistemi di regole in un computer, almeno fino al livello in cui qualsiasi essere umano li comprende. Pertanto, i computer possono "comprendere" l'infinito fino allo stesso livello di comprensione degli umani anche con questa definizione. Quindi questa definizione non funziona per i nostri scopi.

Potremmo dire che un'entità "capisce" un concetto se può logicamente collegare quel concetto a nuove idee arbitrarie. Questa è probabilmente la definizione più forte, ma dovremmo fare molta attenzione qui: pochissimi umani (in proporzione) hanno una profonda comprensione di un concetto come l'infinito. Ancora meno possono prontamente collegarlo a nuovi concetti arbitrari. Inoltre, algoritmi come il General Problem Solver possono, in linea di principio, derivare qualsiasi conseguenza logica da un dato corpus di fatti, dato il tempo sufficiente. Forse in base a questa definizione i computer comprendono l'infinito meglio della maggior parte degli umani e non vi è certamente motivo di supporre che i nostri algoritmi esistenti non miglioreranno ulteriormente questa capacità nel tempo. Anche questa definizione non sembra soddisfare i nostri requisiti.

Infine, potremmo dire che un'entità "capisce" un concetto se ne può generare esempi. Ad esempio, posso generare esempi di problemi nell'aritmetica e le loro soluzioni. In base a questa definizione, probabilmente non "capisco" l'infinito, perché non posso effettivamente indicare o creare qualcosa di concreto nel mondo reale che sia decisamente infinito. Non posso, ad esempio, effettivamente scrivere un elenco infinitamente lungo di numeri, solo formule che esprimono modi per creare elenchi sempre più lunghi investendo sempre più sforzi nel scriverli. Un computer dovrebbe essere almeno bravo quanto me in questo. Anche questa definizione non funziona.

Questo non è un elenco esaustivo di possibili definizioni di "capisce", ma abbiamo trattato "capisce" come lo capisco abbastanza bene. Sotto ogni definizione di comprensione, non c'è nulla di speciale sull'infinito che lo separa da altri concetti matematici.

Quindi il risultato è che, o decidi che un computer non "capisce" niente, o non c'è una ragione particolarmente buona per supporre che l'infinito sia più difficile da capire rispetto ad altri concetti logici. Se non siete d'accordo, è necessario fornire una definizione concreta di "comprensione" che fa la comprensione separata di infinito da altri concetti, e che non dipende da esperienze soggettive (a meno che non si vuole far valere i propri particolari visioni metafisiche sono universalmente corrette, ma questo è un argomento difficile da fare).

L'infinito ha una sorta di stato semi-mistico tra il pubblico laico, ma è proprio come qualsiasi altro sistema matematico di regole: se possiamo scrivere le regole con cui l'infinito opera, un computer può farle così come un umano o meglio).


5
@verdery Quello che sto cercando di arrivare nella mia risposta è che non c'è non è un conflitto tra insiemi infiniti e finiti. Un computer può contare tutti gli elementi di un insieme infinito, esattamente nello stesso senso che un umano può (in linea di principio). Se un essere umano può assegnare un numero diverso a ciascun elemento di un insieme, è perché può scrivere una funzione che descrive quella relazione. Non appena possono esprimere una relazione abbastanza formale per scriverla come una funzione, possiamo programmare un calcolo per fare lo stesso.
John Doucette,

8
@verdery Credo di aver capito cosa stai chiedendo. Penso che la radice del tuo problema sia che hai commesso un errore di attribuzione con l'affermazione "gli umani capiscono l'infinito". "Capire" non è vincolato qui. Nella mia risposta, sto cercando di dimostrare che, indipendentemente dalla definizione di "comprensione" che adotti, non c'è nulla di particolarmente speciale in infiniti concetti o concetti continui, a differenza di quelli discreti. Entrambi i computer "comprendono" gli elementi di entrambe le categorie di concetti o di nessuno dei due.
John Doucette,

4
@nbro sono d'accordo. Penso che il problema sia che, senza proporre una definizione di "comprensione", non è chiaro se si tratta di qualcosa di speciale sull'infinito che rende la "comprensione" diversa dalla comprensione di altri concetti. Il punto della mia risposta non è quello di suggerire che le definizioni specifiche che propongo siano corrette , ma di mostrare che qualsiasi definizione specifica in cui "gli umani comprendono l'infinito e i computer non" si applica ugualmente bene a "gli umani capiscono x, e i computer no". , per ogni x. Ciò significa che dovremmo rifiutare la premessa che c'è qualcosa di speciale nell'infinito.
John Doucette,

5
@nbro Non vedo quanto sia rilevante. Se non riesci ad espandere , e un computer non può espandere i , e puoi calcolare cose su i , e un computer può calcolare cose su i , come possono le tue preoccupazioni riguardo ai numeri irrazionali essere rilevanti per la domanda a portata di mano? La macchina ha esattamente lo stesso set di abilità che possiedi. iiii
John Doucette,

4
@nbro Se non riesci a spiegare le tue convinzioni se non per ipotesi, allora hai ridotto il problema a una questione di tua personale fede, e abbiamo finito qui.
jakebeal,

18

Penso che la tua premessa sia difettosa.

Sembrate presumere che per "comprendere" (*) l'infinito richieda una capacità di elaborazione infinita e impliciate che gli umani abbiano proprio questo, dal momento che li presentate come l'opposto di computer limitati e limitati.

Ma gli umani hanno anche una capacità di elaborazione limitata. Siamo esseri costruiti con un numero finito di particelle elementari, formando un numero finito di atomi, formando un numero finito di cellule nervose. Se possiamo, in un modo o nell'altro, "capire" gli infiniti, allora possono anche essere costruiti computer finiti che possono farlo.

(* Ho usato "capire" tra virgolette, perché non voglio approfondire, ad esempio, la definizione di sensibilità ecc. Inoltre, non penso che sia importante riguardo a questa domanda.)

Come essere umano, possiamo pensare all'infinito. In linea di principio, se abbiamo abbastanza risorse (tempo, ecc.), Possiamo contare infinitamente molte cose (incluso astratto, come numeri o reali).

Qui, in realtà lo dici ad alta voce. "Con abbastanza risorse." Lo stesso non si applicherebbe ai computer?

Mentre gli umani possono , ad esempio, usare gli infiniti nel calcolo dei limiti, ecc. E possono pensare all'idea di qualcosa che diventa arbitrariamente più grande, possiamo farlo solo in astratto, non nel senso che è in grado di elaborare numeri arbitrariamente grandi. Le stesse regole che usiamo per la matematica potrebbero anche essere insegnate a un computer.


1
Per "risorse limitate" intendo che abbiamo una vita limitata nel tempo. Posso chiarire la mia affermazione usando un esempio del genere: un essere umano può identificare / riconoscere / definire un numero maggiore di un numero memorizzato utilizzando la capacità di archiviazione dei computer sulla terra.
Verdery,

3
@verdery A sottilmente: Stai affermando che c'è un numero che puoi riconoscere che è estremamente grande. Ma stai assumendo che sia memorizzato al di fuori della tua mente e che potresti verificare logicamente che sia un numero valido. Stai quindi dicendo che il computer non può memorizzare questo numero. Ma nessun essere umano può ricordare un numero così largo nella galassia, ma potremmo procedere da un'estremità all'altra assicurandoci che sia valido. Anche un computer può farlo. Stai dicendo "ingiustamente" che il computer deve memorizzare il numero anche se ti è consentito l'archiviazione esterna. Cioè, il tuo esperimento mentale è ingiusto nei confronti della macchina.
rispettoso

7
@verdery questo è precisamente il mio punto. Un essere umano può verificare algoritmicamente il numero. Pertanto esiste un algoritmo per una macchina per attuare esattamente lo stesso processo. A condizione che la macchina disponga di risorse illimitate che hai allocato anche per te, potrebbe seguire le regole di denominazione del numero e generare il suo nome. Hai citato la potenza dell'astrazione come processo, quindi perché un processore per computer ad alta velocità non potrebbe fare lo stesso? Cioè, qual è il limite fondamentale della macchina?
rispettoso

3
@verdery No, se il computer è dotato delle risorse illimitate che teoricamente hai rivendicato per te stesso potrebbe semplicemente espandere la sua memoria. Parte del programma consisterebbe nell'allocare più memoria quando necessario. Questo è come dire che gli umani sono limitati perché avremmo finito la carta per scrivere quel numero. Stiamo parlando di limiti teorici e non di limiti rigidi. Se a una macchina sono consentite risorse illimitate, non esiste un numero a cui non è possibile assegnare un nome. Quindi chiedo di nuovo: qual è il limite teorico fondamentale della macchina?
rispettoso

5
@verdery ecco il mio punto: una macchina con memoria illimitata equivale a una macchina Turing con un nastro di lunghezza illimitata. Non esiste un numero elevato che non può essere memorizzato sul nastro. Finché la macchina teorica di cui parliamo è riducibile a questa macchina di Turing, non c'è nulla da dimostrare. Ossia, è necessario dimostrare formalmente che esiste un numero finito che non può essere memorizzato sul nastro non associato. Questo è impossibile perché contraddice la definizione del nastro.
rispettoso

12

TL; DR : Le sottigliezze dell'infinito sono rese evidenti nella nozione di illimitata. La sconfinatezza è definibile in modo definitivo. Le "cose ​​infinite" sono in realtà cose con nature illimitate. L'infinito è meglio compreso non come una cosa ma come un concetto. Gli umani possiedono teoricamente capacità illimitate e non capacità infinite (ad es. Contare su qualsiasi numero arbitrario invece di "contare all'infinito"). Una macchina può essere fatta per riconoscere la sconfinatezza.

Di nuovo nella tana del coniglio

Come procedere? Cominciamo con "limiti".

limitazioni

Il nostro cervello non è infinito (per non credere in qualche metafisica). Quindi, non "pensiamo all'infinito". Pertanto, ciò che pretendiamo come infinito è meglio compreso come un concetto mentale finito con il quale possiamo "confrontare" altri concetti.

Inoltre, non possiamo "contare numeri interi infiniti". C'è un sottilmente qui che è molto importante sottolineare:

Il nostro concetto di quantità / numero è illimitato . Cioè, per qualsiasi valore finito abbiamo un modo finito / concreto o produciamo un altro valore che è strettamente più grande / più piccolo. Cioè, a tempo finito , potremmo contare solo importi finiti .

Non si può essere "dato il tempo infinito" per "contare tutti i numeri" questo implicherebbe una "finitura" che contraddice direttamente la nozione di infinito. A meno che tu non creda che gli umani abbiano proprietà metafisiche che permettano loro di incarnare "coerentemente" un paradosso. Inoltre come risponderesti: qual è stato l'ultimo numero che hai contato? Senza "ultimo numero" non c'è mai una "fine" e quindi mai una "fine" per il conteggio. Cioè non puoi mai "avere abbastanza" tempo / risorse per "contare all'infinito".

Penso che intendi dire che possiamo comprendere la nozione di biiezione tra insiemi infiniti. Ma questa nozione è una costruzione logica (cioè è un modo finito di litigare ciò che intendiamo essere infinito).

Tuttavia, ciò che stiamo realmente facendo è: all'interno dei nostri limiti stiamo parlando dei nostri limiti e, quando mai ne abbiamo bisogno, possiamo espandere i nostri limiti (di un importo limitato). E possiamo anche parlare della natura di espandere le nostre limiti. Così:

illimitatezza

Un processo / cosa / idea / oggetto è ritenuto illimitato se, data una certa misura della sua quantità / volume / esistenza, possiamo produrre in modo finito una "estensione" di quell'oggetto che ha una misura che riteniamo "più grande" (o "più piccola" nel caso di infinitesimi) rispetto alla misura precedente e che questo processo di estensione può essere applicato all'oggetto nascente (cioè il processo è ricorsivo).

Caso canonico numero uno: i numeri naturali

Inoltre, la nostra nozione di infinito impedisce qualsiasi "ateness" o "su-ness" all'infinito. Cioè, non si "mai" arriva all'infinito e non si "mai" ha "l'infinito". Piuttosto, si procede senza limiti.

Quindi, come possiamo concettualizzare l'infinito?

Infinito

Sembra che "infinito" come una parola sia frainteso nel senso che esiste una cosa che esiste chiamata "infinito" in contrapposizione a un concetto chiamato "infinito". Rompiamo gli atomi con la parola:

Infinito: illimitato o infinito nello spazio, estensione o dimensione; impossibile da misurare o calcolare.

in-: un prefisso di origine latina, corrispondente all'inglese non-, avente una forza negativa o privativa, liberamente usato come formativo inglese, in particolare di aggettivi e loro derivati ​​e di sostantivi (disattenzione; indifendibile; economico; inorganico; invariabile). ( fonte )

Finito: avere limiti o limiti.

Quindi l'infinità è in realtà un'infinità che non ha limiti o limiti . Ma possiamo essere più precisi qui perché siamo tutti d'accordo sul fatto che i numeri naturali sono infiniti, ma ogni dato numero naturale è finito. Quindi cosa dà? Semplice: i numeri naturali soddisfano il nostro criterio illimitato e quindi diciamo "i numeri naturali sono infiniti".

Cioè, "l'infinito" è un concetto. Un oggetto / cosa / idea è considerato infinito se possiede una proprietà / sfaccettatura che non ha limiti. Come prima abbiamo visto che la sconfinatezza è definibile in modo definitivo.

Pertanto, se l'agente di cui parli è stato programmato abbastanza bene da individuare il modello nei numeri sulle carte e che i numeri provengono tutti dallo stesso insieme, potrebbe dedurre la natura illimitata della sequenza e quindi definire l'insieme di tutti i numeri infinito - puramente perché l'insieme non ha limite superiore . Cioè, la progressione dei numeri naturali è illimitata e quindi sicuramente infinita.

Quindi, per me, l'infinito è meglio compreso come un concetto generale per identificare quando processi / cose / idee / oggetti possiedono una natura illimitata. Cioè, l'infinito non è indipendente dalla sconfinatezza. Prova a definire l'infinito senza confrontarlo con cose finite o i limiti di quelle cose finite.

Conclusione

Sembra fattibile che una macchina possa essere programmata per rappresentare e rilevare casi di sconfinatezza o quando potrebbe essere ammissibile assumere illimitata.


2
Penso che dovresti chiarire l'affermazione: "Gli umani possiedono proprietà illimitate, non infinite proprietà".
nbro

@nbro Buona critica, vedo la chiarezza della dichiarazione originale. Ho aggiornato per catturare meglio il significato previsto.
rispettoso

9

In Haskell puoi digitare:

print [1..]

e stamperà la sequenza infinita di numeri, iniziando con:

[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,

Lo farà fino a quando la console non esaurisce la memoria.

Proviamo qualcosa di più interessante.

double x = x * 2
print (map double [1..])

Ed ecco l'inizio dell'output:

[2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294,296,298,300,302,304,306,308,310,312,314,316,318,320,322,324,326,328,330,332,334,336,338,340,342,344,346,348,350,352,354,356,358,360,362,364,366,368,370,372,374,376,378,380,382,384,386,388,390,392

Questi esempi mostrano un calcolo infinito. In effetti, è possibile mantenere infinite strutture di dati in Haskell, poiché Haskell ha il concetto di non rigidità : è possibile eseguire il calcolo su entità che non sono ancora state completamente calcolate. In altre parole, non è necessario calcolare completamente un'entità infinita per manipolare quell'entità in Haskell.

Reductio ad absurdum.


2

6
La manipolazione del simbolo @nbro di un simbolo che rappresenta l'infinito e che ha proprietà e implicazioni appropriate che sono appropriate a quel concetto è IMHO la definizione di "comprensione dell'infinito".
Peteris,

1
@Peteris La tua definizione di comprensione è simile a quella fornita da John Doucette. Vedi l'argomento della stanza cinese. Sostengo che non è possibile scrivere un programma in grado di applicare il concetto di infinito a tutti i casi.
nbro,

1
@nbro "Sostengo che non puoi scrivere un programma in grado di applicare il concetto di infinito a tutti i casi." In effetti, questa è una conclusione intuitiva del problema di arresto: puoi creare qualsiasi macchina in grado di risolvere qualsiasi problema, incluso il problema di arresto per le macchine da turismo - chiamatelo una macchina "Super-Turing". Ma, su quella macchina, potresti inventare un problema che questa macchina "Super-Turing" non è in grado di risolvere-- dire se un programma Super-Turing si fermerà o meno - e avresti bisogno di una "Macchina super-turing" per risolverlo. E così via. È come il teorema di incompletezza di Godel, nessuna lingua
noɥʇʎԀʎzɐɹƆ

può esprimere tutto ciò che l'universo ha da offrire.
noɥʇʎԀʎzɐɹƆ

8

Credo che si possa dire che gli umani comprendano l'infinito almeno da Georg Cantor perché possiamo riconoscere diversi tipi di infiniti (principalmente numerabili contro innumerevoli) attraverso il concetto di cardinalità .

In particolare, un insieme è numerabile infinito se può essere mappato ai numeri naturali , vale a dire che esiste una corrispondenza 1 a 1 tra gli elementi di insiemi numerabili infiniti. L'insieme di tutti i reali è numerabile, così come l'insieme di tutte le combinazioni di numeri naturali, perché ci saranno sempre più combinazioni di numeri naturali dove n> 2, risultando in un insieme con una cardinalità maggiore. (Le prime prove formali per l'incountability possono essere trovate in Cantor, ed è argomento di Philosophy of Math .)

La comprensione dell'infinito implica la logica in contrapposizione all'aritmetica perché non possiamo esprimere, ad esempio, tutti i decimali di un numero trascendentale , usare solo approssimazioni. La logica è una capacità fondamentale di ciò che pensiamo come computer.

  • π

"Infinito" è una definizione di infinito, con l'insieme dei numeri naturali come esempio (esiste un numero minimo, 1, ma nessun numero maggiore).

Intrattabilità contro infinito

Al di fuori del caso speciale dei loop infiniti, devo chiedermi se un'intelligenza artificiale sia più orientata all'intrattabilità computazionale rispetto all'infinito.

Si dice che un problema sia intrattabile se non c'è abbastanza tempo e spazio per rappresentarlo completamente, e questo può essere esteso a molti numeri reali.

π

L'intelligenza artificiale supponerebbe che un tale numero fosse infinito o semplicemente intrattabile? Quest'ultimo caso è concreto piuttosto che astratto - o può finire il calcolo o no.

Questo porta al problema di arresto .

  • La prova di Turing che un algoritmo generale per risolvere il problema di arresto per tutte le possibili coppie di input del programma non può esistere potrebbe essere presa come un'indicazione che un algoritmo basato sul modello di calcolo di Turing-Church non può avere una perfetta comprensione dell'infinito.

Se sorgesse un modello computazionale alternativo in grado di risolvere il problema dell'arresto, si potrebbe sostenere che un algoritmo potrebbe avere una comprensione perfetta, o almeno dimostrare una comprensione paragonabile agli umani.


1
L'insolvibilità di alcuni problemi o l'incompatibilità di alcune funzioni è la prova che non tutti i concetti sono ugualmente "comprensibili" o comprensibili, dato che l'unico modo in cui una macchina può capire (indipendentemente dalla definizione di comprensione) è attraverso il calcolo. Quindi, a mio avviso, la risposta accettata è almeno fuorviante. Riduce il problema della comprensione dell'infinito alla manipolazione dei simboli e afferma che la difficoltà di manipolare i simboli non dipende dai simboli stessi (o dal significato dei concetti astratti associati).
nbro

1
Questa risposta riconosce almeno le diverse difficoltà di alcuni problemi.
nbro

1
@nbro Immagino di essere un po 'fuori dalle erbacce con questa risposta (speriamo non in un modo che sia eccessivamente fuorviante) ma volevo affrontare aspetti della domanda che non erano stati trattati nelle risposte precedenti. Il mio pensiero è che, poiché la domanda può essere considerata ambigua, ci sono molti modi per affrontarla.
DukeZhou

1
A mio avviso, lei menziona diversi argomenti correlati che sono rilevanti per la domanda. 1. diversi tipi di infiniti (numerabili infiniti vs plural), 2. la definizione di insiemi numerabili infiniti, 3. i numeri reali sono non numerabili (e la famosa prova di questa affermazione è l'argomentazione diagonale di Cantor ), 4. le implicazioni di questo dichiarazione alla filosofia della matematica, 5. intrattabilità contro infinito, 6. definizione del laico generale di infinito "infinito", 7. problema di arresto e, implicitamente, irrisolvibilità di alcuni problemi o incomputabilità di alcune funzioni.
nbro,

1
Tuttavia, anche se correlati, questi sono molti concetti da comprendere o da connettere logicamente. Ci sono anche alcune frasi nella tua risposta che non sono molto chiare. Ad esempio, 1. "La comprensione dell'infinito implica la logica anziché l'aritmetica perché non possiamo esprimere, ad esempio, tutti i decimali di un numero trascendentale, usare solo approssimazioni". o 2. "C'è una domanda se un cerchio può essere approssimato e un forte argomento sul fatto che un cerchio perfetto può essere rappresentato.".
nbro,

7

(C'è un riassunto in fondo per coloro che sono troppo pigri o hanno poco tempo per leggere il tutto.)

Purtroppo, per rispondere a questa domanda, decostruirò principalmente le varie premesse.

Come ho detto prima, gli umani comprendono l'infinito perché sono in grado, almeno, di contare numeri interi infiniti, in linea di principio.

Non sono d'accordo con la premessa che gli umani sarebbero effettivamente in grado di contare all'infinito. Per fare questo, ha detto che l'essere umano avrebbe bisogno di una quantità infinita di tempo, una quantità infinita di memoria (come una macchina di Turing) e, soprattutto, una quantità infinita di pazienza - nella mia esperienza la maggior parte degli umani si annoia prima ancora di contare fino a 1.000.

Parte del problema con questa premessa è che l'infinito non è in realtà un numero, è un concetto che esprime una quantità illimitata di "cose". Dette 'cose' possono essere qualsiasi cosa: numeri interi, secondi, lecca-lecca, il punto importante è il fatto che quelle cose non sono finite.

Vedi questa domanda SE pertinente per maggiori dettagli: /math/260876/what-exactly-is-infinity

Per dirla in altro modo: se ti chiedessi "quale numero viene prima dell'infinito?" quale sarebbe la tua risposta? Questo ipotetico superumano dovrebbe contare fino a quel numero prima di poter contare sull'infinito. E avrebbero bisogno di sapere il numero prima di quello, e quello prima di quello, e quello prima di quello ...

Speriamo che questo dimostri perché l'umano non sia in grado di contare fino all'infinito - poiché l'infinito non esiste alla fine della linea numerica, è il concetto che spiega che la linea numerica non ha fine. Né l'uomo né la macchina possono effettivamente contarlo, anche con tempo infinito e memoria infinita.

Ad esempio, se un computer può differenziare 10 numeri o cose diversi, significa che in qualche modo capisce davvero queste diverse cose.

Essere in grado di "differenziare" tra 10 cose diverse non implica la comprensione di quelle 10 cose.

Un noto esperimento mentale che mette in discussione l'idea di cosa significhi "capire" è l' esperimento della Sala cinese di John Searle :

Immagina un madrelingua inglese che non conosce cinese rinchiuso in una stanza piena di scatole di simboli cinesi (una base di dati) insieme a un libro di istruzioni per manipolare i simboli (il programma). Immagina che le persone fuori dalla stanza inviino altri simboli cinesi che, sconosciuti alla persona nella stanza, sono domande in cinese (input). E immagina che seguendo le istruzioni del programma l'uomo nella stanza sia in grado di distribuire simboli cinesi che sono risposte corrette alle domande (l'output). Il programma consente alla persona nella stanza di superare il test di Turing per comprendere il cinese ma non capisce una parola di cinese.

Il punto dell'argomentazione è questo: se l'uomo nella stanza non capisce il cinese sulla base dell'implementazione del programma appropriato per comprendere il cinese, allora nessun altro computer digitale si basa esclusivamente su quella base perché nessun computer, in quanto computer, ha qualcosa l'uomo non ha.

La cosa da togliere a questo esperimento è che la capacità di elaborare i simboli non implica che si capiscano realmente quei simboli. Molti computer elaborano i linguaggi naturali ogni giorno sotto forma di testo (caratteri codificati come numeri interi, in genere in una codifica basata su unicode come UTF-8), ma non comprendono necessariamente tali lingue. In modo più semplice In effetti tutti i computer sono in grado di aggiungere due numeri insieme, ma non capiscono necessariamente cosa stanno facendo.

In altre parole, anche nel "modello di visione dell'apprendimento profondo" il computer probabilmente non capisce i numeri (o "simboli") che viene mostrato, è solo la capacità dell'algoritmo di simulare l'intelligenza che gli consente di essere classificato come intelligenza artificiale .

Ad esempio, possiamo prendere un modello di visione di apprendimento profondo che riconosce i numeri sulla carta. Questo modello deve assegnare un numero a ciascuna carta diversa per differenziare ogni numero intero. Poiché esistono numeri infiniti di numeri interi, come può il modello assegnare un numero diverso a ciascun numero intero, come un essere umano, sui computer digitali? Se non riesce a differenziare le cose infinite, come capisce l'infinito?

Se dovessi eseguire lo stesso test delle carte su un essere umano e aumentare continuamente il numero di carte utilizzate, alla fine un essere umano non sarebbe in grado di tenerne traccia a causa della mancanza di memoria. Un computer avrebbe lo stesso problema, ma teoricamente potrebbe superare l'umano.

Quindi ora ti chiedo, un essere umano può davvero differenziare cose infinite? Personalmente sospetto che la risposta sia no, perché tutti gli umani hanno una memoria limitata, eppure concordo sul fatto che gli umani molto probabilmente possono capire l'infinito in una certa misura (alcuni possono farlo meglio di altri).

In quanto tale, penso alla domanda "Se non è in grado di differenziare le cose infinite, come può comprendere l'infinito?" ha una premessa imperfetta: essere in grado di differenziare le cose infinite non è un prerequisito per comprendere il concetto di infinito.


Sommario:

Essenzialmente la tua domanda dipende da cosa significhi "capire" qualcosa.

I computer possono certamente rappresentare l' infinito, la specifica IEEE in virgola mobile definisce sia l'infinito positivo che negativo e tutti i moderni processori sono in grado di elaborare punti in virgola mobile (sia hardware che software).

Se gli AI sono mai in grado di comprendere effettivamente le cose, teoricamente potrebbero essere in grado di comprendere il concetto di infinito, ma siamo molto lontani dalla possibilità di dimostrarlo definitivamente in entrambi i modi e dovremmo giungere a un consenso su cosa significa "capire" prima qualcosa.


4

Credo fermamente che i computer digitali non possano comprendere concetti come l'infinito, i numeri reali o, in generale, i concetti continui , in un modo simile a quello di Flatlanders non capiscono il mondo tridimensionale. Dai un'occhiata anche al libro Hyperspace: A Scientific Odyssey Through Parallel Universes, Time Warps, and the 10th Dimension (1994), di Michio Kaku, che tratta questi argomenti in modo più dettagliato. Naturalmente, in questa risposta, il concetto di comprensione non è definito rigorosamente, ma solo intuitivamente.


7
Penso che questa non sia una buona argomentazione, anche se l'ho vista spesso fatta. Gli umani non possono rappresentare esattamente alcun numero irrazionale: possiamo o creare un nuovo simbolo per uno, come 'e' (di cui i computer possono e quindi ragionare in modo digitale), oppure possiamo elaborare un numero finito di cifre (e in effetti, i computer farlo molto meglio di noi). Non mi è chiaro in che senso comprendiamo questi concetti in un senso "continuo".
John Doucette,

6
Il mio punto è che gli umani in realtà non comprendono concetti infiniti in un modo che richiede risorse infinite. Non c'è nulla nel concetto di infinito che richiede risorse infinite per ragionare. L'applicazione del concetto potrebbe richiedere risorse infinite, ma neanche gli umani ne hanno.
John Doucette,

3
Ovviamente puoi dire che i computer non capiscono π, E non capiscono2+2. Il punto è che non mi è chiaro perché pensi che ci sia qualcosa di speciale in questoπo numeri reali come concetto, che è distinta dalla2+2.
John Doucette,

2
Va bene. Questo è quello che ho pensato all'inizio. La mia domanda è perché , dal mio punto di vista, tutti gli strumenti che gli umani usano per rappresentare tali oggetti lo sono discreti.
John Doucette,

2
Quindi penso che ci stiamo avvicinando al problema principale. Siamo entrambi d'accordo: né gli esseri umani né i computer possono calcolare cose non discrete. Quindi la domanda è, quando qualcuno dice "gli umani comprendono cose continue, ma i computer no", che cosa significano? Puoi fare l'argomento room cinese, ma funziona indipendentemente da ciò che scegli . Non è qualcosa di speciale sull'infinito, nel qual caso la domanda di OP potrebbe essere altrettanto facilmente "Perché i computer non capiscono il numero 2?". Nella tua risposta, sembra che tu pensi che gli umani abbiano delle capacità che le macchine non hanno. Che cos'è?
John Doucette,

4

Quindi la premessa presuppone che gli umani "comprendano" l'infinito. Noi?

Penso che dovresti dirmi quale criterio useresti, se prima volessi sapere se "capisco" l'infinito.

Nel PO, l'idea è che potrei "dimostrare" di "comprendere" l'infinito, perché "In linea di principio, se abbiamo abbastanza risorse (tempo, ecc.), Possiamo contare infinitamente molte cose (inclusi abstract, come numeri, o vero)."

Bene, semplicemente non è vero. Peggio ancora, se fosse vero (cosa che non lo è), sarebbe altrettanto vero per un computer. Ecco perché:

  1. Sì, in linea di principio puoi contare numeri interi e vedere che il conteggio non finisce mai.
  2. Ma anche se avessi abbastanza risorse, non potresti mai "contare infinitamente molte cose". Ci sarebbe sempre di più. Ecco cosa significa "infinito".
  3. Peggio ancora, ci sono più ordini ("cardinalità") di infinito. La maggior parte di loro, non puoi contare, anche con un tempo infinito, e forse nemmeno con infinite altre risorse. Sono in realtà innumerevoli. Non possono letteralmente essere mappati su una linea numerica o sull'insieme di numeri interi. Non puoi ordinarli in modo tale che possano essere contati, anche in linea di principio.
  4. Ancora peggio, come fai a fare un po 'dove decidi "in linea di principio" cosa posso fare, quando chiaramente non posso mai farlo, o anche la più piccola parte di esso? Quel passo sembra assiduo stile laico, non vedendo i problemi nel farlo rigorosamente. Potrebbe non essere banale.
  5. Infine, supponiamo che questo sia stato il tuo vero test, come nel PO. Quindi se potessi "in linea di principio con risorse sufficienti (tempo, ecc.) Contare infinitamente molte cose", basterebbe che tu decida che "ho capito" l'infinito (qualunque cosa significhi). Quindi potrebbe anche un computer con risorse sufficienti (RAM, tempo, algoritmo). Quindi il test stesso sarebbe soddisfatto banalmente da un computer se si dessero al computer gli stessi criteri.

Penso che forse una linea di logica più realistica sia che ciò che questa domanda mostra effettivamente, è che la maggior parte (probabilmente tutti?) In realtà non capisce l'infinito. Quindi comprendere l'infinito probabilmente non è una buona scelta di test / requisiti per l'IA.

Se ne dubiti, chiediti. Onestamente, veramente e seriamente, "capisci" cento trilioni di anni (la possibile vita di una stella nana rossa)? Tipo, puoi davvero capire com'è, vivendo cento trilioni di anni, o è solo un 1 con molti zeri? E un femtosecondo? O un intervallo di tempo di circa 10 ^ -42 secondi? Riesci davvero a "capirlo"? Un calendario rispetto al quale, uno dei tuoi battiti cardiaci, si confronta come uno dei tuoi battiti cardiaci rispetto a un miliardo di miliardi di volte la vita attuale di questo universo? Puoi davvero "capire l'infinito", te stesso? Vale la pena pensare a ......


Se assumiamo che non possiamo capire l'infinito, ciò non significa che non esiste. Ci sono esempi in fisica che non possiamo capire ma esistono. Ad esempio, la dualità della luce e il limite di velocità della luce, la relatività nella natura, ecc. In quel caso, abbiamo rappresentazioni di quelle nozioni nella nostra mente. La stessa situazione può valere per l'infinito.
Verdery,

Oh, il concetto esiste, ma come dimostrate di "comprendere il concetto"? Vedi le mie domande alla fine. Questo è quello che vorrei sapere, per verificare se * tu * te stesso (o chiunque) "comprendesse veramente il concetto". Potrebbe non essere il test che sceglieresti, ma penso che se stessi testando la "comprensione" piuttosto che la definizione del dizionario o la capacità di usare il concetto, questo sarebbe il mio test. E ogni ultimo essere umano sul pianeta (me compreso) fallirebbe.
Stilez,

Ho una domanda per te, se non hai in mente una rappresentazione come potresti scrivere il numero: 10 ^ -42?
Verdery,

1
"Avere una rappresentazione" non significa "avere alcuna comprensione" per me. Pensa alla parola di Heinlein "grok". Questa è "comprensione" nel mio libro. Qualsiasi altra cosa è praticamente solo recitare una definizione del dizionario o manipolare un simbolo. Il dolore non è il concetto di dolore, l'amore non è il concetto di amore e l'infinito non è solo il concetto e il simbolo dell'infinito. Tuttavia, non credo che gli esseri umani si lamentino dell'infinito, e se non hai intenzione di chiedere la prova della "comprensione" reale, qualsiasi computer può recitare una definizione o manipolare i simboli, senza riuscire a "ottenerli", come qualsiasi essere umano potrebbe.
Stilez,

Se leggi attentamente la mia prima domanda in questo post, il mio approccio è funzionalista. Non discuto "grok".
Verdery,

3

Aggiungendo alcune regole per l'infinito in aritmetica (come l'infinito meno un grande numero finito è infinito, ecc.), Il computer digitale può sembrare comprendere la nozione di infinito.

In alternativa, il computer può semplicemente sostituire il numero n con il suo valore stella log . Quindi, può differenziare i numeri su una scala diversa e può apprendere che qualsiasi numero con valore stella log> 10 è praticamente equivalente all'infinito.


1
Rappresentare solo un insieme infinito o finito che include l'infinito non ci fa abbastanza credere che il modello comprenda l'infinito. Sfortunatamente, la tua risposta è totalmente inutile dal mio punto di vista.
Verdery,

@verdery Verissimo. Credo che la mia risposta sia probabilmente un punto di partenza. Da qui il marker wiki della community. Mi piace abbastanza la risposta di John Ducette.
Amrinder Arora,

3

Penso che il concetto che manca nella discussione, finora, sia la rappresentazione simbolica. Noi umani rappresentiamo e comprendiamo simbolicamente molti concetti. Il concetto di Infinity ne è un ottimo esempio. Pi è un altro, insieme ad alcuni altri numeri irrazionali ben noti. Ce ne sono molti, molti altri.

Così com'è, possiamo facilmente rappresentare e presentare questi valori e concetti, sia agli altri umani che ai computer, usando simboli. Sia i computer che gli umani possono manipolare e ragionare con questi simboli. Ad esempio, i computer eseguono prove matematiche da alcuni decenni. Allo stesso modo, sono disponibili programmi commerciali e / o open source in grado di manipolare simbolicamente le equazioni per risolvere i problemi del mondo reale.

Quindi, come ha ragionato @JohnDoucette, non c'è nulla di così speciale su Infinity rispetto a molti altri concetti in matematica e aritmetica. Quando colpiamo quel muro di mattoni rappresentativo, definiamo semplicemente un simbolo che rappresenta "quello" e andiamo avanti.

Nota, il concetto di infinito ha molti usi pratici. Ogni volta che hai un rapporto e il denominatore "va a" zero, il valore dell'espressione "si avvicina" all'infinito. Questa non è una cosa rara, davvero. Quindi, mentre la tua persona media per strada non ha familiarità con queste idee, un sacco di scienziati, ingegneri, matematici e programmatori lo sono. È abbastanza comune che il software abbia gestito simbolicamente Infinity per un paio di decenni, almeno ora. Ad esempio Mathematica: http://mathworld.wolfram.com/Infinity.html


3

Una macchina di Turing è il principale modello matematico di calcolo dei moderni computer digitali. Una macchina di Turing è definita come un oggetto che manipola i simboli, secondo determinate regole (che rappresentano il programma che la macchina di Turing esegue), su un nastro infinito suddiviso in celle discrete. Pertanto, una macchina di Turing è un sistema di manipolazione di simboli che, dato un certo input, produce un certo output o non si ferma .

Se supponi che la comprensione sia equivalente alla manipolazione dei simboli , una macchina di Turing è in grado di comprendere molti concetti, anche se la difficoltà di comprendere ciascuno di questi concetti è variabile, rispetto al tempo e allo spazio. (La branca dell'informatica teorica (TCS) che studia la difficoltà di alcuni problemi computazionali è chiamata teoria della complessità computazionale . La branca della TCS che studia la computabilità di alcuni problemi è chiamata teoria della computabilità ).

Per comprendere il concetto di infinito , una macchina di Turing deve manipolare correttamente il simbolo dell'infinito in tutti i casi possibili. Una macchina di Turing non può rappresentare tutti i numeri reali perché l'insieme dei numeri reali non è numerabile. Senza perdita di generalità, supponiamo che il numero realer(ad esempio, la costante di Chaitin ) non può essere rappresentata (o calcolata) da una macchina di Turing, quindirnon può mai essere manipolato da una macchina di Turing. Di conseguenza, ci sono casi in matematica in cui una macchina di Turing non può applicare il concetto di infinito. Ad esempio, una macchina di Turing non può capirelimXXr=.

Ciò dimostra che una macchina di Turing non può manipolare il concetto di infinito in tutti i casi possibili, perché una macchina di Turing non può mai sperimentare determinati numeri reali. Tuttavia, una macchina di Turing può essere in grado di manipolare il concetto di infinito in molti casi (che coinvolgono insiemi numerabili ), quindi una macchina di Turing può avere una comprensione parziale del concetto di infinito, a condizione che la comprensione sia equivalente alla manipolazione di simboli.


1
I primi due paragrafi vanno bene. Tuttavia, sono fortemente in disaccordo con i restanti. Certo, una macchina di Turing può capire il limite che scrivi, dato che il limite non è altro che una stringa che aderisce a una grammatica induttiva (numerabile). Fondamentalmente, non è necessario essere in grado di calcolare un numero per essere in grado di gestirlo in modo assiomatico. Questo è ciò che gli umani fanno sempre. Gli umani non sono in grado di calcolarerneanche, ma possono ragionare al riguardo. Il ragionamento non richiede il calcolo.
ComFreek

@ComFreek Sono d'accordo con te sul fatto che una TM possa manipolare questo limite senza conoscere il valore esatto di r. Tuttavia, in pratica, una MT non può nemmeno supporre l'esistenza dirperché non può essere calcolato. Quindi, questo limite non verrà mai raggiunto da nessuna TM, quindi nessuna TM sarà mai in grado di risolverlo. In altre parole, una TM presuppone l'esistenza di numeri calcolabili, quindi quando una TM manipola quel limite simbolicamente,rsi presume che sia calcolabile.
nbro,

Sicuramente una TM può incontrarla, allo stesso modo in cui l'abbiamo fatta noi umani. E può anche risolvere quel limite, allo stesso modo in cui lo abbiamo fatto noi umani. Non è difficile vedere che puoi formalizzare tutto ciò che è necessario in un prover teorema per dimostrare quel limite. Tale formalizzazione è una stringa binaria in quanto tale e può quindi essere ovviamente trovata anche da una TM.
ComFreek,

@ComFreek Non hai capito niente. Qualsiasi TM può solo presumere l'esistenza di numeri calcolabili , quindi si presume che qualsiasi manipolazione simbolica implichi numeri calcolabili. Se dici che una TM può risolvere questo limite, stai solo dando un'interpretazione di questo, perché sei un osservatore esterno della TM.
nbro,

1
No, una TM può sicuramente ragionare con rappresentazioni astratte. Dai un'occhiata alla formalizzazione dei teoremi matematici in qualsiasi proverore di teoremi (Coq, Isabelle ecc.). Questi dimostratori di teoremi sono TM in quanto sono programmi. Ciò confuterà immediatamente ciò che stai cercando di dire.
ComFreek

2

I computer non capiscono "infinito" o addirittura "zero", proprio come un cacciavite non capisce le viti. È uno strumento creato per l'elaborazione di segnali binari.

In effetti, l'equivalente di un computer in wetware non è una persona ma un cervello. I cervelli non pensano, le persone lo fanno. Il cervello è solo la piattaforma con cui sono implementate le persone. È un errore un po 'comune confondere i due poiché la loro connessione tende ad essere piuttosto inseparabile.

Se desideri assegnare la comprensione, dovresti almeno passare ai programmi reali anziché ai computer. I programmi possono o meno avere rappresentazioni per zero o infinito, e possono o meno essere in grado di fare abili manipolazioni di entrambi. La maggior parte dei programmi matematici simbolici qui è in gran parte migliore di quanto qualcuno debba lavorare con la matematica come parte del proprio lavoro.


2

La risposta di John Doucette copre abbastanza bene i miei pensieri su questo, ma ho pensato che un esempio concreto potesse essere interessante. Lavoro su un'IA simbolica chiamata Cyc, che rappresenta i concetti come una rete di predicati logici. Spesso ci piace vantarci che Cyc "capisca" le cose perché può chiarire le relazioni logiche tra loro. Sa, ad esempio, che alla gente non piace pagare le tasse, perché pagare le tasse comporta la perdita di denaro e le persone sono generalmente contrarie. In realtà, penso che la maggior parte dei filosofi concorderebbe sul fatto che questa è una "comprensione" incompleta del mondo nella migliore delle ipotesi. Cyc potrebbe conoscere tutte le regole che descrivono le persone, le tasse e il dispiacere, ma non ha esperienza reale di nessuna di esse.

Nel caso dell'infinito, tuttavia, cosa c'è di più da capire? Direi che come concetto matematico, l'infinito non ha realtà oltre la sua descrizione logica. Se riesci ad applicare correttamente ogni regola che descrive l'infinito, hai fatto l'infinito grok. Se c'è qualcosa che un'IA come Cyc non può rappresentare, forse è la reazione emotiva che tali concetti tendono a evocare per noi. Poiché viviamo vite reali, possiamo mettere in relazione concetti astratti come l'infinito con quelli concreti come la mortalità. Forse è quella contestualizzazione emotiva che fa sembrare che ci sia qualcosa di più da "ottenere" sul concetto.



1

I would think that a computer couldn’t understand infinity primarily because the systems and parts of a system, that are driving the computer are finite themselves.


1

The "concept" of infinity is 1 thing to understand. I can represent it with 1 symbol (∞).

As I mentioned before, humans understand infinity because they are capable, at least, counting infinite integers, in principle.

By this definition humans do not understand infinity. Humans are not capable of counting infinite integers. They will die (run out of compute resources / power) at some time. It would probably be easier in fact to get a computer to count towards infinity than it would be to get a human to do so.


Of course, we do not understand infinity because we are able to count to infinity in practice. However, in theory, would we be able to count to infinity, given infinite resources?. Furthermore, of course, the symbol is just a symbol that has a meaning in mathematics, but this meaning could have been given to another symbol or, in other words, we could have denoted the concept of infinity by another symbol. So, your arguments are quite superfluous, in my opinion.
nbro

Given infinite resources both humans or computers could count to infinity. The symbol ∞ is a placeholder for the "concept" of infinity. Most humans know very little about this concept. They know it is bigger than any other number. They don't have any rules for multiplication or addition of the concept but they "feel" 2 *∞ is bigger than 1 * ∞, etc. Some mathematicians have different definitions of the concept or even multiple concepts of infinity depending on the context of the field.
Pace

1

Just food for thought: how about if we try to program infinity not in theoretical, but in practical terms? Thus, if we deem something that a computer cannot calculate, given its resources as infinity, it would fulfill the purpose. Programmatically, it can be implemented as follows: if the input is less than available memory it's not infinity. Subsequently, infinity can be defined as something that returns out-of-memory error on an evaluation attempt.


1

Its arguable if we humans understand infinity. We just create new concept to enplace old mathematics when we meet this problem. In division by infinity machine can understand it the same way as we:

double* xd = new double;
*xd =...;
if (*xd/y<0.00...1){
int* xi = new int;
*xi = (double) (*xd);
delete xd;

If human thinks of infinity - imagines just huge number in his/her current context. So key to writing algorithm is just finding a scale that AI is currently working with. And BTW this problem must ve been solved years ago. People designing float/double must ve been conscious what they were doing. Moving exponenta sign is linear operation in double.


1

Well -- just to touch on the question of people and infinity -- my father has been a mathematician for 60 years. Throughout this time, he's been the kind of geek who prefers to talk and think about his subject over pretty much anything else. He loves infinity and taught me about it from a young age. I was first introduced to the calculus in 5th grade (not that it made much of an impression). He loves to teach, and at the drop of a hat, he'll launch into a lecture about any kind of math. Just ask.

In fact, I would say that there are few things he is more familiar with than infinity...my mother's face, perhaps? I wouldn't count on it. If a human can understand anything, my father understands infinity.


1

Humans certainly don't understand infinity. Currently computers cannot understand things that humans cannot because computers are programmed by humans. In a dystopian future that may not be the case.

Here are some thoughts about infinity. The set of natural numbers is infinate. It has also been proved that the set of prime numbers, which is a subset of the natural numbers, is also infinate. So we have an infinate set within an infinate set. It gets worse, between any 2 real numbers there is an infinate number of real numbers. Have a look at the link to Hilbert's paradox of the Grand Hotel to see how confusing infinity can get - https://en.wikipedia.org/wiki/Hilbert%27s_paradox_of_the_Grand_Hotel


0

I think the property humans have which computers do not, is some sort of parallel process that runs alongside every other thing they are thinking and tries to assign an importance weighting evaluation to everything you are doing. If you ask a computer to run the program : A = 1; DO UNTIL(A<0) a=a+1; END;

The computer will. If you ask a human, another process interjects with "I'm bored now... this is taking ages... I'm going to start a new parallel process to examine the problem, project where the answer lies and look for a faster route to the answer ... Then we discover that we are stuck in an infinite loop that will never be "solved".. and interject with an interrupt that flags the issue, kills the boring process and goes to get a cup of tea :-) Sorry if that is unhelpful.


The question is not "Can AI understand infinity" but "in what way is infinity useful to an AI ? so how do we represent it for that purpose ?" - as a human, you have a huge number of "subsumption processess" that are bound to your survival in your environment. One of those systems manages your resource and flags up when an undertaking is demanding or large (possibly tending to infinity) so you are bound to a real concept of what infinity could mean for you. What does it need to mean to AI ? Time resource ? number of nodes assigned ? How important/acurate is the answer ?
Andy Evans
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.