Complexity Hierarchies

Intractable problems are solvable in principle, but in reality they require so much time or space that there no physical computers that can solve them in reasonable time. We would like to define a clear hierarchy of these set of problems. Space Hierarchies Def: Space constructible We say that a function $f: \mathbb{N} \to \mathbb{N}$ such that $f(n) \geq O(\log n)$ is space constructible if there exists a function from $1^{n} \to \langle f(n) \rangle$ is $O(f(n))$ space complexity. ...

April 18, 2024 · Reading Time: 3 minutes ·  By Xuanqiang Angelo Huang

Fn Ordine superiore

Questa parte è strettamente collegata conl a parte di Astrazione sul controllo. Si parla di passare le funzioni come dati. e quindi possono essere passati come se fossero dei parametri. un linguaggio di programmazione è di ordine superiore qualora ammetta funzioni sia come parametro che come risultato di altre funzioni. La parte molto simile alla precedente è il fatto di valutare la funzione nell’ambiente iniziale, quindi bisogna utilizzare un sistema simile a quello del passaggio per nome. ...

Reading Time: 3 minutes ·  By Xuanqiang Angelo Huang

Probabilistic Turing Machines

Introduction to the probabilistic Turing Machine Most of real phenomena are better comprehended by a probabilistic view. This pushes to build a formal model that takes probability into account Def: Probabilistic TM $$ \mathbb{P}(b) = 2^{-k} $$ Where $k$ is the length of the branch. Then the probability of accepting the word is given by this: $$ \mathbb{P}(\mathcal{M} \text{ accepts } \omega) = \sum_{b \text{ is an accepting branch}} \mathbb{P}(b) $$ Note that this is very similar to the Algorithmic probability defined in Kolmogorov complexity. ...

May 8, 2024 · Reading Time: 1 minute ·  By Xuanqiang Angelo Huang

Compression Algorithms

Lempel-Ziv-Welch Algorithm Introduzione sul funzionamento Primo scan con un dizionario indexato dei singoli caratteri Poi viene cercato di raggruppare caratteri a coppie. Se una coppia è già presente nel dizionario, allora aggiungo al dizionario una cosa più lunga e metto un code diverso Esempio di sopra. La cosa carina è che il dizionario si può ricostruire in fase di decoding. ...

February 24, 2024 · Reading Time: 3 minutes ·  By Xuanqiang Angelo Huang

Bottom-up Parser LR(0)

Descrivo ora alcune domande utili per ripasso: Quali sono schematicmente quali sono le operazioni migliori per un parser top-down? Cosa è un prefisso viabile? Quali sono i conflitti possibli, e come risolverli… Non sai nemmeno definire inmodo formale cosa sia un item Bottom up Intro shift-reduce e LR Slide In breve: Shift = simbolo terminale messo nella stack Riduzione utilizzando una produzione LR = dettura da Sinistra, creazione della stringa da destra (derivazione rightmost) Algoritmo classico Quello che credo che intendevo per questo algoritmo classico è quello non deterministico, nel senso che prova a fare backtracking, finché non ha finito tutte le possibilità, oppure trova la derivazione giusta. ...

Reading Time: 5 minutes ·  By Xuanqiang Angelo Huang

Bottom-up Parser LR(1)

Si può osservare che per il parser costruito in Bottom-up Parser LR(0)), non riesce a riconoscere di linguaggi semplici come $L = \{a, ab\}$. Esempio di quanto detto Parser SLR(1) Questi parser qui utilizzano l’idea del look ahead ampiamente utilizzata in Top-down Parser, per escludere molte produzioni. La s sta per simple, perché utilizza una idea semplice :D, credo ahah boh. Riduzione con follow noi vogliamo ridurre solamente se ho follow corretto il terminale finale della stringa. ...

Reading Time: 3 minutes ·  By Xuanqiang Angelo Huang

Explainability of CNN

Introduction Capire in che modo una rete convoluzionale ci può dare insight migliori su come funzionano questi networks. Visualizzazione dei hidden layers Slide visualization Potremmo fissare una immagine anche a caso, e modificare la x in modo che sia più simile a quanto vuole computare il neurone. In questo modo genero una immagine che generi una activation forte nel neuron trainato, e si potrebbe dire che sia il genere di immagine che viene generata da essa. ...

Reading Time: 4 minutes ·  By Xuanqiang Angelo Huang

Fondamenti teorica

https://virtuale.unibo.it/pluginfile.php/1295166/mod_resource/content/0/Lez18-Gorrieri.pdf Halting problem Questo asserisce che non esiste nessun programma che sia in grado di decidere la terminazione di un altro programma Questo è un problema che ci è interessante perché vorremmo costruire un compilatore che sia in grado di osservare tutti gli errori possibili del programma. Come vedremo tra poco la risposta sarà negativa. Dimostrazione tesi Supponiamo che questo programma esista, lo chiamiamo check(P) che restituisce 0 se termina 1 se non termina, allora devo poter essere in grado di scrivere un programma di questo genere ...

Reading Time: 6 minutes ·  By Xuanqiang Angelo Huang

Garbage Collection

On dangling pointers Tombstones Slides tombstones Quando alloco, alloco anche una tombstone, e tutti i riferimenti passano per quella. (quindi ho due dereference per l’accesso) quando vado a deallocare segno la tombstone come RIP, NULL. Dopo molto tempo ho il problema del cimitero che diventa molto grande. Anche se non punta più a niente, il cimitero. Keys and locks Un pò di overhead in più dal punto di vista della memoria, che è doppio ...

Reading Time: 2 minutes ·  By Xuanqiang Angelo Huang

Interpolazione

Vogliamo in questa sezione andare ad indagare la costruzione di funzioni che passano in tutti i punti che vogliamo, appunto interpolare. La funzione è molto simile alla regressione trattata in Minimi quadrati (con il metodo della regressione, chiamato anche approssimazione ai minimi quadrati). Quindi mentre la precedente voleva andare a minimizzare l’errore, questo attuale va a creare proprio da 0 la funzione che ci passa sempre. Introduzione Andremo a creare una funzione f tale che per ogni x in input si abbia esattamente la y in output ...

Reading Time: 3 minutes ·  By Xuanqiang Angelo Huang