Skip to content

Instantly share code, notes, and snippets.

View salvatorecapolupo's full-sized avatar
🎯
Focusing

Salvatore Capolupo salvatorecapolupo

🎯
Focusing
View GitHub Profile
@salvatorecapolupo
salvatorecapolupo / pensare-ia.md
Last active March 9, 2026 17:03
Emergent Stochastic Reasoning: A Functional Formalization of Transformer-Based Inference

Emergent Stochastic Reasoning: A Functional Formalization of Transformer-Based Inference

Abstract Il presente lavoro simula l'architettura funzionale del "pensiero" negli Large Language Models (LLM), definendolo non come un processo cognitivo biologico, ma come una manipolazione tensoriale in uno spazio vettoriale ad alta dimensionalità. Si analizza come la generazione di output sia il risultato della minimizzazione dell'entropia incrociata e del meccanismo di Scaled Dot-Product Attention. L'articolo conclude che il "pensiero" sintetico è una funzione di mappatura probabilistica tra sequenze di token, distinguendosi nettamente dalla coscienza fenomenica.

1. Notazione e Definizioni Preliminari

Per descrivere il processo, definiamo lo spazio dei simboli come un vocabolario $\mathcal{V}$. Ogni unità linguistica (token) $t \in \mathcal{V}$ viene proiettata in uno spazio continuo $\mathbb{R}^d$ tramite una matrice di embedding $W_e$.

  • Sequenza di Input: $\mathbf{X} = (t_1, t_2, ..., t_n)$
import java.util.stream.IntStream;

public class FizzBuzz {
    public static void main(String[] args) {
        IntStream.rangeClosed(1, 100)
            .mapToObj(i -> (i % 15 == 0) ? "FizzBuzz" : (i % 3 == 0) ? "Fizz" : (i % 5 == 0) ? "Buzz" : i)
            .forEach(System.out::println);
    }
}
@salvatorecapolupo
salvatorecapolupo / esercizi-tpsit.md
Last active March 7, 2026 07:40
Like a pro: from C++ to Javascript

10 esercizi strutturati in ordine di difficoltà crescente, focalizzati sulla manipolazione di variabili, array e matrici (array 2D).

In due linguaggi diversi.

In sintesi, C++ e JavaScript differiscono profondamente per tipologia, esecuzione e gestione della memoria: il C++ è un linguaggio compilato, a tipizzazione statica (il tipo di variabile deve essere dichiarato a priori), che offre un controllo manuale e a basso livello della memoria (tramite puntatori) ed è progettato per applicazioni di sistema ad altissime prestazioni; JavaScript, al contrario, è un linguaggio interpretato (o compilato JIT, Just In Time) a tipizzazione dinamica (una variabile può cambiare tipo durante l'esecuzione),

// 1. the clock
setcpm(120)
s("casio").n("<1 3>")
// 2. order is not relevant
s("wind").n("<0 1>")
// same as
//n("<0 1>").s("wind")
//3. basic synthwave
@salvatorecapolupo
salvatorecapolupo / thread_2.md
Created March 3, 2026 06:38
Thread in Java - Fonte: edutecnica.it

PARTE 1: Le Basi (Teoria)

1. Estendere la classe Thread

Il modo più classico (anche se rigido) per creare un processo parallelo.

class MioThread extends Thread {
    public void run() {
        System.out.println("1. Ciao dal thread: " + getName());

1. Architettura di Rete e Livello Fisico (L1)

  • Mezzi Trasmissivi:

  • TIA/EIA-568: Lo standard per il cablaggio strutturato in edifici commerciali (Cat 5e, 6, 6a, 7, 8).

  • ISO/IEC 11801: Lo standard internazionale equivalente per il cablaggio generico.

  • Ethernet Avanzato:

  • IEEE 802.3bz: 2.5G e 5G Ethernet su cavi Cat5e/6.

  • IEEE 802.3af/at/bt: Power over Ethernet (PoE/PoE+/PoE++).

Pre requisiti

Ecco la lista delle linee di comando più comuni per Python e la gestione delle librerie (pip), utile per i tuoi progetti di Sistemi e Reti:

  • python --version
  • python script.py
  • python -m venv venv
  • source venv/bin/activate
  • venv\Scripts\activate
  • pip install nome_libreria

Come funziona davvero un LLM (Large Language Model)

Capitolo 1: La Macchina Ferma

  • 1.1 Cosa (non ) è un LLM

Benvenuti in questa dispensa. Prima di sporcarci le mani con il codice, dobbiamo chiarire un equivoco potenziale. Ovvero: Un LLM non è un motore di ricerca! E nemmeno tuo cugino bravo col computer.

Traccia link

1. Analisi dello Stato di Fatto (Prima Parte)

Obiettivo: Comprensione dell'infrastruttura esistente.

  • Esercizio 1.1 - Schema Logico Attuale: Sulla base dei dati forniti (15 postazioni in segreteria e 10 laboratori didattici), disegna lo schema logico della rete attuale. Rappresenta chiaramente la separazione fisica tra la "rete amministrativa" (ADSL 7 Mb/s) e la "rete didattica" (ADSL 24 Mb/s).

  • Esercizio 1.2 - Analisi dei Vincoli: Elenca i limiti dell'attuale configurazione hardware (es. apparati a 100 Mb/s) rispetto alle nuove esigenze di didattica multimediale e streaming richieste dalla scuola.

Traccia esame di stato sistemi e reti: link

1. Analisi del Caso e Dimensionamento Rete (Prima Parte)

Obiettivo: Pianificazione dell'indirizzamento IP e analisi dei requisiti.

  • Esercizio 1.1 - Schema di Rete: Progetta e disegna uno schema grafico che rappresenti l'infrastruttura regionale in fibra. Lo schema deve includere il Data Center centrale, le strutture pubbliche pre-esistenti e l'integrazione delle nuove strutture private convenzionate.

  • Esercizio 1.2 - Piano di Indirizzamento: Data la sottorete assegnata , calcola e definisci un piano di sottoreti (subnetting) che possa ospitare circa 2000 strutture sanitarie, garantendo ad ognuna almeno 8 indirizzi IP. Prevedi un margine per incrementi futuri.