Come si ottiene una "intuizione fisica" per i risultati in TCS?


27

Mi dispiace se questa domanda è un po 'vaga, ma sono curioso di sapere come i ricercatori di successo abbiano una "sensazione" per i risultati nel TCS.

Ad esempio, l'algebra lineare può essere compresa geometricamente o in termini di interpretazioni fisiche (gli autovettori possono essere pensati come "punti stabili" in un sistema), ecc. È anche intuitivo che esista un protocollo IP per TQBF (come IP il protocollo può essere visualizzato come una sorta di "gioco" tra due entità con un potere computazionale molto diverso). Tuttavia, trovo che molti dei risultati, anche estremamente elementari in TCS, non abbiano intuizioni così semplici (MA AM). Peggio ancora, a volte, le intuizioni non raffinate vanno terribilmente diffidenti (2-SAT è in P mentre 3-SAT non si ritiene che sia in P (in realtà, è NP-completo)). Esistono "principi generali" per lo sviluppo di un'intuizione nella TCS?


5
Ti preghiamo di effettuare il controllo ortografico la prossima volta che pubblichi.
Tsuyoshi Ito,

scusa :( farà
gabgoh

8
Un messaggio della polizia di completezza NP: dimostrare che 3SAT è in NP non implica la difficoltà di 3SAT. Dimostrando che 3SAT è NP completo .
Tsuyoshi Ito,

3
Avviso dagli affari interni: anche questo non implica difficoltà (senza ulteriori ipotesi). [;)]
Raffaello

2
@Raphael: ho usato la parola "difficoltà" nel mio commento precedente in un senso intuitivo, non rigoroso.
Tsuyoshi Ito,

Risposte:


48

Come molti campi scientifici, possono essere necessari anni per costruire l'intuizione, ma può volerci solo una nuova idea per abbattere quell'intuizione (e si spera che al suo posto venga ricostruito qualcosa di carino).

Ci sono alcuni esercizi di base che puoi usare per provare a creare intuizione per alcuni articoli che stai leggendo e che non riesci a penetrare. Eccone uno che ancora faccio di tanto in tanto. Inizia con una prova che non capisci ma che ti piacerebbe davvero, che è molto lunga. Mentre leggi ogni paragrafo della prova, prova a scrivere una frase con parole tue su ciò che pensi che il paragrafo stia dicendo, a margine. Speriamo che la dimostrazione sia scritta abbastanza bene che ci siano "parti" ben definite ("esegui X, quindi definisci una nuova funzione f, quindi applica X a f, ..."). In caso contrario, dalle frasi, separa la prova nelle tue parti.

Ora per ogni parte, prova a scrivere una frase (con parole tue) su ciò che ogni parte sta facendo. A questo punto, potrebbe essere che trovi che le tue frasi precedenti non sono del tutto esatte o non si adattano bene insieme (l'intuizione era "off"), quindi puoi perfezionarle in modo che si adattino logicamente insieme. Ora hai alcune frasi che riassumono l'intera prova. Quindi (ora quest'ultima parte è del mio consigliere, Manuel Blum), prova a pensare a una parola o frase per l'intera faccenda. Questa frase sarebbe l'idea chiave che, nella tua mente, è ciò che dà il via all'intero argomento. (Ad esempio, la maggior parte delle prove di esistenza tramite il metodo probabilistico può essere riassunta da: "PICK RANDOM". Nel caso di MUNUNM, Direi qualcosa del tipo "PARLA DI PIÙ ARTHUR". Ma forse qualcos'altro nella prova sembra essere l'idea "chiave" per te, il che è perfettamente bene. È il tuo intuito!)

Immagino che il mio suggerimento possa essere utile per la maggior parte della matematica, ma l'ho trovato molto utile per TCS, dove molte prove si riducono a 1-2 idee davvero nuove, e il resto è una sintesi di quell'idea con ciò che era già noto.


3
Risposta meravigliosa
Anthony Labarre,

12
Vorrei aggiungere un suggerimento alla grande risposta di Ryan. Se a un certo punto rimani bloccato a leggere la prova di qualcun altro, METTILA GIÙ e prova a provare tu stesso il risultato. La tua convinzione che il risultato sia probabilmente vero (altrimenti perché dovresti leggere il documento?) Rende molto più facile trovare la tua prova. Se fallisci, lo sforzo costruirà il tuo intuito. Se ci riesci, la tua prova potrebbe essere MOLTO diversa dalla prova nel documento che stai leggendo, nel qual caso hai l'intuizione che l'autore no! Posso accreditare almeno tre o i miei documenti direttamente a questo trucco.
Jeffε

17

Stai attento all'intuizione. Viene fornito con una grande esperienza, spesso può essere sbagliato e giusto allo stesso tempo e non è unico. Il punto è che ognuno porta la propria intuizione ai problemi in base alle proprie zone di comfort, alle esigenze del problema e al proprio background. Come Tsuyoshi sottolinea, l'intuizione è davvero un duro lavoro che è stato sublimato in alcune immagini mentali concise.

Quindi il mio suggerimento sarebbe: basta lavorare sui problemi che ti piacciono e provare a sviluppare le tue idee anche se c'è altro lavoro là fuori. Costruirai l'intuizione in questo modo. E se un risultato sembra sconcertante, significa che non lo hai ancora capito del tutto, o forse c'è un risultato più semplice in agguato da qualche parte sotto, in attesa di essere scoperto.


16

Dato che conti i giochi come un esempio di "intuizione fisica" mentre non riesco a vedere nulla di legato alla fisica nei giochi, presumo che la tua enfasi non sia su "fisica" ma su "intuizione".

Sostengo che parte dello scopo dello studio (educazione o ricerca) nell'informatica teorica sia quello di sviluppare l'intuizione per le nozioni astratte relative al calcolo. L'intuizione viene acquisita studiando e acquisendo familiarità con il concetto. Non mi aspetto che ci sia una bella scorciatoia.

Ad esempio, gli studenti universitari saranno sorpresi dall'indecidibilità di fermare il problema (probabilmente perché la mera esistenza di una lingua indecidibile è già sorprendente). Ma apprendere il fatto, la sua prova, alcuni risultati correlati e l'ampia applicabilità della tecnica di prova rende questo risultato sorprendente meno sorprendente e in effetti molto naturale. Credo che lo stesso sia vero per risultati più complicati.

Per quanto riguarda il risultato specifico, non sono d'accordo sul fatto che MA⊆AM non abbia una semplice intuizione. (Attenzione: sto attualmente studiando questo e i risultati correlati da solo, e potrei dire qualcosa di errato.) In un sistema MA, Merlin deve dare una risposta unica che si adatta alla maggior parte delle sequenze casuali utilizzate da Arthur. Modifichiamo il sistema in modo che Arthur invii diverse (polinomialmente molte) sequenze casuali a Merlin e Merlin debba dare un'unica risposta che si adatti a tutte, che mi sembra una cosa naturale da provare. Dimostrare la solidità di questo sistema AM è una semplice applicazione del limite di Chernoff. Non penso che nulla di questo risultato sia concettualmente difficile da capire.

Marginalmente correlato: la tua domanda mi ha ricordato un bellissimo post sul blog " Astrazione, intuizione e" errore di monade tutorial "di Brent Yorgey, in cui ha spiegato la difficoltà di comunicare l'intuizione con una non spiegazione fittizia" Le monadi sono burritos ". Se la spiegazione sopra di come funziona la dimostrazione di MA⊆AM non ha alcun senso, potrei dimostrare lo stesso errore. :(


Ci sono studenti che trovano sorprendente l'indecidibilità? Non insegnano loro prima su Gödel?
Peter Taylor,

3
Certamente non ho avuto Gödel nella mia formazione universitaria in CS. In effetti, non ho ottenuto Gödel come studente universitario. (Questo era presso un dipartimento EECS,
intendiamoci

3
Dato quello che so delle monadi, potrebbero anche essere dei burritos;)
Suresh Venkat

3
Oh man mi mancano i burritos floridiani, mandano loro la consegna all'estero? :)
Mohammad Al-Turkistany,

2
@Suresh: sospetto che l'analogia più utile per te potrebbe essere "Le chiusure di Moore sono ai poset come le monadi sono alle categorie". Puoi andare terribilmente lontano nella teoria delle categorie trattando le categorie come reticoli con più modi in cui un elemento è al di sotto di un altro.
Neel Krishnaswami,

12

Se passi cinque anni della tua vita studiando un concetto puramente teorico X (ad esempio, un certo modello esoterico di calcolo), allora alla fine X diventa una parte naturale della tua vita quotidiana.

Imparerai a sapere come si comporta X, come ci si sente, come risponde alle tue manipolazioni e in che tipo di quartiere vive. Imparerai chi l'ha scoperto, quando e perché, e cosa altri hanno fatto con X, con successo o senza successo. Conoscerai X proprio come conosci qualsiasi oggetto fisico che incontri ogni giorno.

In effetti, potresti conoscerlo molto meglio di quelle cose fisiche strane, mal definite, imprevedibili ed irregolari ... Ma è una lunga strada e non penso che ci siano così tante scorciatoie magiche.


12

Le risposte qui già coprono la maggior parte dei bei suggerimenti sull'intuizione. Ne darei ancora uno, che è utile quando si sviluppano intuizioni durante la scrittura su carta. Questo è suggerito dal mio insegnante, Hsueh-I Lu, che l'ho trovato molto utile.

Ogni volta che un risultato viene scritto e la correttezza sembra essere verificata, riscrivi l'intero articolo . Questa volta dobbiamo imporre a noi stessi di non usare parole o definizioni simili alle versioni precedenti. Questo ci fa pensare in un modo completamente nuovo e diverso e si svilupperanno nuove intuizioni. Inoltre, perturbare tutti i parametri utilizzati nel documento, vedere se qualsiasi set di parametri differisce da quello che abbiamo usato in origine funziona ancora. Spesso alcuni errori sono esposti quando si riscrive l'articolo. Trova nuove idee per superarle.

Alla fine, dopo i cicli di riscrittura, avremo una buona intuizione circolare sul nostro risultato e non saremo troppo ottimisti / pessimisti rispetto al potere delle nuove idee presentate nel documento, dal momento che abbiamo provato per un paio di volte, ed è chiaro che cosa funziona e cosa no.

Lo stesso metodo funziona se stai leggendo un nuovo documento e desidera ottenere alcune intuizioni diverse da quella fornita dalla lettura.


1

Nel mio caso, la maggior parte dei concetti di TCS mi sembra di avere qualche intuizione su quelli su cui ho sostenuto attraverso risultati pratici. Se mi trovo ad evolversi e ad usare lo stesso modello o algoritmo con successo per anni, tende sempre più a farmi distrarre fino a quando non riesco a capire perché l'algoritmo ha avuto successo. Ciò è particolarmente vero se è il momento di riscrivere: voglio sapere qual è l'essenza TCS della cosa, per non perdere la polvere magica durante il refactoring. Capire tutto ciò di solito richiede (per me) un profondo tuffo nel 1936 o giù di lì, e mettere in relazione ciò che ho fatto con quei concetti di base. Una volta un amico mi ha consigliato di "pensare come una macchina da turismo" quando ero su una di quelle immersioni, e quel consiglio mi è rimasto fedele.

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.