1. La prima versione
La prima versione di TheoryFlow è un programma che una persona usa sul proprio computer per inserire teorie, vederle scomposte in proprietà, sapere che cosa è dimostrato e che cosa no, e ritrovare le teorie collegate.
Che cos'è TheoryFlow
TheoryFlow è una piattaforma che mappa e valida la conoscenza. Prende una frase in linguaggio naturale, la scompone nelle proprietà che la formano, registra come quelle proprietà si aggregano e calcola un valore di verità.
Non è un chatbot, non è un motore di ricerca per parole e non genera testo. «TheoryFlow» indica solo la piattaforma: l'ontologia su cui poggia si chiama ontologia delle proprietà.
Il principio
TheoryFlow non assume nulla tranne l'ontologia di fondo: l'aggregazione, la dichiarazione e il rispetto dei principi ontologici. Tutto il resto entra come teoria.
- Anche la grammatica è una teoria: che «gialle» sia il plurale di «gialla» va detto al sistema, e si può contestare.
- Una teoria può essere scritta a mano o prodotta da un programma: la provenienza si registra ma non dà alcun privilegio.
- Ciò che non è dichiarato resta implicito.
Che cosa fa
| Funzione | Che cosa vede l'utente |
|---|---|
| Inserire una teoria | Scrive una frase. Un correttore ortografico locale segnala i refusi; il testo cambia solo se l'utente conferma |
| Mappatura | La frase divisa in proposizioni, e ogni proposizione nella sua forma esplosa: una riga per ogni coppia «concetto ▷ proprietà» |
| Valore | Per ogni coppia e per la teoria intera: V, F, C oppure N con il motivo, e da che cosa dipende |
| Derivazione | I valori che il sistema ricava da solo, con la catena che li giustifica |
| Contraddizioni | Le teorie che non possono stare insieme, mostrate una accanto all'altra |
| Alternative | Le teorie rivali trovate dal sistema; l'utente conferma l'elenco. Quando ne resta una sola non falsa, quella è dimostrata |
| Esplorazione | «E se questa congettura fosse vera? E se fosse falsa?»: il sistema mostra che cosa ne seguirebbe, senza salvarlo |
| Richiesta | Scrive una domanda. Riceve l'elenco delle teorie che condividono quelle proprietà, con i loro valori, e il circuito in cui si incrociano |
Che cosa resta fuori
| Parte | Stato |
|---|---|
| Livello dei dataset: misure, analisi statistica, validazione empirica | Previsto dopo la prima versione; il progetto è nella pagina Il livello dei dataset. Requisiti già fissati: inserimento dei dati semplice e anche in massa; elaborazione fatta dal sistema; un esperimento conta solo se discrimina tra teorie rivali |
| Controllo automatico dei semata e delle fallacie | Semata: primo procedimento, tappe 12 e 12b (decisioni 63, 64 e 65, frasi S1–S41). Fallacie: primo procedimento, tappa 13 (decisione 66, frasi F1–F16) |
| Identità e registro | Tappa 14: il wallet della persona e il registro firmato (decisioni 67, 68 e 69, prove W1–W16) |
| Rete | Tappa 15: I2P con i crate di IOP, pubblicazione teoria per teoria, diffusione completa e presenza (decisioni 70–74, prove RT1–RT16) |
| TheoryChain, TheoryCoin, calcolo distribuito | Previsto. Il calcolo distribuito richiederà un controllo che il lavoro richiesto serva alla conoscenza |
| Provenienza fisica dei dati (PHS) | Ricerca |
| Lingue diverse dall'italiano | Previsto |
Quando è finita
- Un comando avvia ONTO, il backend e l'app, senza chiavi né servizi esterni.
- Una teoria inserita si ritrova, già mappata e valutata, dopo il riavvio.
- Tutte le frasi di prova danno la forma esplosa e il valore attesi, e la prova gira da sola a ogni modifica.
- Una richiesta restituisce le teorie pertinenti e il circuito mostra i loro incroci.
2. Il modello logico
Ogni teoria nasce come congettura. Diventa vera o falsa solo per dimostrazione, mai perché qualcuno lo dichiara.
L'aggregazione
Il segno ▷ si legge «è aggregato da». A sinistra sta il concetto, a destra le proprietà che lo formano. La proprietà più generica sta a destra.
cane ▷ (il ^ bello)
numeri ▷ matematica
barboncino ▷ cane ▷ mammifero
Nel codice si può scrivere >> al posto di ▷. I segni ⊆, ⊇ e → tra proprietà non si usano più.
I quattro valori
| Valore | Nome | Significato |
|---|---|---|
| V | Vero | Dimostrato |
| F | Falso | Impossibile o confutato |
| C | Congetturale | Può essere vero o falso, ma non è ancora dimostrato. È lo stato in cui nasce ogni teoria |
| N | Non apofantico | Né vero né falso. Porta sempre un motivo |
I motivi di N sono quattro.
| Motivo | Esempio |
|---|---|
| Malformata | «Questa frase è falsa» |
| Incompleta | «La distanza vale 2», senza unità di misura |
| Non accessibile | «Pioveva a Roma il 3 marzo dell'anno 26» |
La forma esplosa
Il valore non sta sulla frase intera. Sta su ogni aggregazione elementare, cioè su ogni coppia «concetto ▷ una proprietà». Una proposizione è la congiunzione delle sue aggregazioni elementari.
"la mela è rossa"
(mela >> la) = V
(mela >> rossa) = C
esito: C · manca (mela ▷ rossa)
Il calcolo si fa con ONTO, che contiene le tavole di verità a tre valori. Prima del calcolo vale una regola (decisione 33): se anche una sola aggregazione è C e l'accordo sugli scenari non decide già, l'esito è C e il sistema elenca le parti che mancano. ONTO riceve solo le parti che hanno un valore.
Le frasi negative
Una frase negativa non crea una proposizione nuova. Riguarda la stessa aggregazione della frase affermativa e sostiene che vale F.
"la mela non è blu", una volta dimostrata
(mela >> la) = V
(mela >> blu) = F
V ^ F = F la mela blu è esclusa: la frase negativa è confermata
«La mela è blu» e «la mela non è blu» stanno quindi sullo stesso punto del circuito, come tesi e antitesi.
Come una congettura diventa F
Il sistema non parte da nessuna teoria ontologica già caricata. Un F nasce solo dalla logica.
- Accordo sugli scenari. Una teoria che risulta falsa sia assumendo una congettura vera sia assumendola falsa è falsa comunque. Il caso più semplice è la teoria che afferma e nega la stessa cosa.
- Contraddizione con una teoria dimostrata.
- Propagazione. Se un'aggregazione più generica è F, lo sono anche le sue specificazioni: se «il mammifero depone uova» è F e «il cane è un mammifero» è dimostrata, anche «il cane depone uova» è F. Se il legame è ancora congettura il valore non passa, e il sistema mostra che cosa seguirebbe.
"se la mela è rossa allora è blu,
e se la mela non è rossa allora è blu,
e la mela non è blu"
se "la mela è rossa" fosse V → F
se "la mela è rossa" fosse F → F
esito: F, senza sapere di che colore è la mela
Una congettura non dimostra nulla. Se una teoria contraddice un'altra teoria che è ancora congettura, restano congetture tutte e due.
Come una congettura diventa V
Non basta che sia plausibile. Una teoria è vera quando gli altri modelli possibili sono stati dimostrati falsi.
- Il sistema propone come alternative le teorie che risultano in contraddizione logica tra loro.
- L'utente conferma l'elenco inserendo una teoria di alternative: «la luce è un'onda, oppure un corpuscolo, oppure entrambe».
- Quando tutte le alternative tranne una sono F, la rimanente diventa V, con la catena della dimostrazione.
- Se qualcuno aggiunge un'alternativa nuova, quel V torna C. Ogni esito resta rivedibile.
Vale anche la propagazione nel verso opposto: se un'aggregazione specifica è V, la più generica non può essere F.
La validazione con misure arriverà con il livello dei dataset. Fino ad allora il sistema afferma solo ciò che si dimostra per via logica e ontologica.
L'esplorazione
Per ogni congettura l'utente può chiedere che cosa accadrebbe se fosse vera e che cosa se fosse falsa. Il sistema calcola i due scenari e li mostra. Nulla di ciò che esce da un'esplorazione viene salvato come valore.
teoria: P1 ^ P2 P1 = V P2 = C
esito: C · manca P2
se P2 fosse V → V
se P2 fosse F → F
I connettivi
Come le parole che legano le proposizioni diventano operatori (decisione 30). Ogni parte affermata nasce C, come ogni teoria.
| Parole | Esempio | Che cosa entra nel sistema |
|---|---|---|
| e, sia… sia, non solo… ma anche, oltre a | «Sia Marco sia Luca sono venuti» | p ^ q |
| ma, però, benché, sebbene | «Piove, ma esco» | piove ^ esco; in più una teoria implicita, C: piove => non esco |
| quindi, perché (causa) | «Piove, quindi la strada è bagnata» | piove; strada bagnata; piove => strada bagnata: tre parti, ciascuna con il suo valore |
| se | «Se piove, la strada è bagnata» | solo il legame: piove => strada bagnata |
| quando, dopo che, prima che | «Quando sono uscito, pioveva» | tempo in cui io sono uscito ▷ piove. Che cosa sia il tempo lo dicono le teorie sul tempo nel circuito |
| o, oppure, o… o | «Serve il passaporto o la carta d'identità» | p v q. Che due cose si escludano è un vincolo logico a parte |
| affinché, in modo che, perché (scopo) | «Studio affinché io superi l'esame» | io ^ studio; in più una teoria implicita, C: studio => supero l'esame |
| né… né | «Né Marco né Luca sono venuti» | Marco venuto e Luca venuto, ciascuna sostenuta come F (decisione 8) |
Le contraddizioni
Il sistema vede una contraddizione solo nella forma logica. «Incompatibile» non è una parola che capisce da sola: «la mela è rossa e blu» non contraddice nulla finché non esiste una teoria che vincola «rosso» e «blu» con un operatore logico.
Un vincolo si scrive come frase. Il sistema traduce i connettivi negli operatori di ONTO e mostra la formula; l'utente la conferma o la corregge prima di salvare.
scrivi: "una cosa non è rossa e blu insieme"
ottieni: rosso ^ blu sostenuta come F conferma · correggi
poi "la mela è rossa e blu"
→ contraddizione logica con la teoria sopra
entrambe restano congetture
Quando due teorie sono in contraddizione e nessuna delle due è dimostrata, il sistema non sceglie. Le mostra una accanto all'altra e le propone come alternative.
Ogni valore dice da dove viene
Insieme a ogni valore il sistema salva: come è stato ottenuto (nascita, derivazione, esclusione), da quali teorie dipende, quando. Un valore senza questa storia non esiste.
3. Parole e proprietà
Una parola scritta è una proprietà, un solo punto del sistema. Il suo significato non sta nella parola: lo dà il circuito, cioè le altre proprietà con cui è aggregata.
Una parola, un nodo
Ogni forma scritta è una proprietà a sé. «Gialla», «giallo» e «gialle» sono tre proprietà diverse. Che siano collegate lo dice una teoria grammaticale:
"gialle è il plurale di gialla"
"gialla è il femminile di giallo"
"erano è il passato di sono"
Queste teorie si inseriscono e si valutano come tutte le altre. L'analizzatore grammaticale del backend le produce da solo quando incontra una forma nuova, e le marca con la loro provenienza.
Più significati
«Piano» può essere uno strumento musicale, un livello, un progetto, un modo di fare. Finché nessuno lo dichiara, tutti gli usi stanno sullo stesso nodo: il contesto li distingue di fatto, perché ogni teoria seleziona proprietà diverse.
Per separarli serve una teoria di distinzione: «il piano come strumento non è il piano come livello». Da quel momento esistono due proprietà distinte, ciascuna con il proprio circuito.
Lo stesso vale per i termini che cambiano significato da una teoria scientifica all'altra, come «lunghezza» nella meccanica classica e nella relatività.
Sinonimi
Due parole diverse diventano la stessa proprietà solo quando una teoria di identità lo dichiara: «contemporaneamente significa nello stesso momento». Non c'è un elenco di sinonimi separato dal sistema.
Parole che non affermano nulla sul mondo
Articoli, dimostrativi e possessivi dicono come chi parla indica il concetto. Quali categorie siano di questo tipo non è scritto nel codice: lo dice la teoria grammaticale di partenza.
Il sistema parte con una teoria grammaticale già caricata, mostrata come «teoria di partenza». Non è V: il sistema la usa per mappare e calcolare finché nessuno la dimostra falsa. Per le categorie che essa indica come dichiarative, l'aggregazione vale V nel momento in cui viene dichiarata. Se la teoria di partenza viene confutata, tutto ciò che ne dipendeva si ricalcola.
È l'unica teoria di partenza. Non ce ne sono di logiche né di ontologiche.
Dalla frase alle aggregazioni
| Passo | Che cosa avviene |
|---|---|
| 1. Proposizioni | La frase viene divisa in proposizioni atomiche. Gli operatori che le legano (e, o, se… allora) si conservano |
| 2. Concetto | In ogni proposizione si individua il concetto di cui si parla, anche quando è sottinteso o ereditato dalla proposizione precedente |
| 3. Aggregazioni | Ogni altra parola diventa una proprietà aggregata al concetto o a un'altra proprietà: l'avverbio all'aggettivo o al verbo che modifica, il complemento alla preposizione che lo introduce |
| 4. Negazione | «Non» non è una proprietà: indica che l'aggregazione che segue è sostenuta come F |
| 5. Verbo essere | Al presente esprime l'aggregazione stessa e non genera una proprietà. Negli altri tempi la forma («era», «sarà») è una proprietà, collegata a «è» da una teoria grammaticale |
Le regole di dettaglio sono definite dalle frasi di prova: una regola esiste quando c'è una frase che la richiede e il risultato atteso accanto.
4. Architettura
Quattro programmi su un computer: l'app, il backend che capisce il linguaggio, ONTO che conserva e calcola, il nodo di rete che li porta agli altri. Nessun server centrale: ogni installazione è un nodo alla pari (decisione 70).
Dentro un'installazione, app, backend e ONTO parlano in chiaro sullo stesso computer; il nodo di rete (tf-rete) è l'unico che esce, e solo su I2P, con una chiave di nodo sua, senza legame con il wallet (decisione 70). Non c'è un server: ogni installazione è identica alle altre e parla con loro da sé.
Chi fa che cosa
| Programma | Fa | Non fa |
|---|---|---|
| App | Inserimento, elenco delle teorie, forma esplosa, valori, alternative, esplorazione, richieste, circuito | Nessuna analisi e nessun calcolo: chiede tutto al backend |
| Backend | Correzione ortografica locale; analisi grammaticale; divisione in proposizioni; forma esplosa; teorie grammaticali; regole su C, alternative ed esplorazione; scrive e legge in ONTO | Nessun archivio proprio; nessuna tavola di verità; nessun servizio esterno |
| ONTO | Conserva teorie, proprietà e aggregazioni; calcola con le tavole a tre valori; cerca per proprietà | Non conosce il linguaggio naturale |
| Nodo di rete (tf-rete) | Porta da un nodo all'altro, su I2P con i crate di IOP, le voci firmate delle catene pubbliche e le presenze dei nodi; si presenta con una chiave di nodo sua (decisioni 70–72) | Non legge né calcola le teorie: verifica firme e catene e le inoltra; non parla mai in chiaro |
Che cosa viene salvato
| Che cosa | Contenuto |
|---|---|
| Teoria | Testo, impronta SHA-256, provenienza (scritta a mano o generata, e da che cosa), data |
| Proposizione | La teoria a cui appartiene, la posizione, l'operatore che la lega alla successiva |
| Proprietà | La parola in minuscolo (decisione 36). Una sola volta in tutto il sistema |
| Aggregazione elementare | Concetto, proprietà, proposizione, se è sostenuta come vera o come falsa |
| Valutazione | Aggregazione, valore, motivo se N, modo (nascita, derivazione, esclusione), teorie da cui dipende, data |
| Teoria di alternative | Le teorie rivali che elenca, chi l'ha confermata |
Le valutazioni non si sovrascrivono: ogni cambio è una riga nuova, così la storia di un valore resta leggibile.
Lo stato C in ONTO (decisione 34). ONTO ha tre valori nativi, V, F e N, e per le sue ricerche una proprietà assente vale N. Per questo una parte C non riceve in ONTO alcun valore di verità: lo stato e il motivo sono campi di testo, le dipendenze sono relazioni, ogni valutazione è un elemento con data e modo. Il backend applica la regola delle congetture e chiede a ONTO di calcolare solo sulle parti che hanno un valore.
Come è fatto oggi (tappe dalla 2 alla 6). Le teorie stanno in quattro tabelle di ONTO, create dal backend all'avvio: teorie, proposizioni, proprieta e aggregazioni, legate da riferimenti che ONTO controlla. Ogni teoria porta la sua lingua (oggi solo l'italiano, decisione 39), le sue parti affermate, scritte come formule sulle proposizioni (P0 ^ P1), e la provenienza: scritta a mano, implicita (da «ma», «affinché»), citata (da «Marco dice che…», con a chi è attribuita) o grammaticale (da una forma flessa). Una teoria entra con la chiamata POST /teorie in un'unica transazione, insieme alle teorie che porta con sé: o entra tutto o non entra niente. POST /teorie/anteprima mostra la mappatura senza salvare, con le parole che non è riuscita a usare e le parole nuove, mai viste dal modello: queste vanno confermate o corrette prima di salvare (decisione 41). L'analisi delle frasi usa il modello italiano di TheoryFlow (decisione 40). Dalla tappa 4 i valori stanno nelle tabelle valutazioni e dipendenze: dopo ogni inserimento, cancellazione o conferma di alternative il backend ricalcola tutte le teorie e aggiunge una riga solo dove il valore è cambiato, con motivo, modo, parti mancanti e data. Le teorie di alternative confermate stanno in alternative e membri_alternative. Il valore V, F, C o N è un testo: ONTO calcola con le sue tavole le espressioni che il backend gli manda, uno scenario per riga. Due prove automatiche controllano l'archivio: test/archivio_onto.py avvia un ONTO di prova, inserisce alcune teorie, lo riavvia e controlla che si ritrovino già mappate, identiche; test/analisi_frasi.py segnala se il modello di spaCy legge le frasi di prova in modo diverso da com'è registrato. Dalla tappa 5 l'app usa solo le chiamate della tabella qui sotto e non fa calcoli propri; non ha account (decisione 13). Dalla tappa 14 scrivere richiede il wallet della persona, sbloccato nel backend (decisione 67), e ogni scrittura entra nella tabella registro come voce firmata, nella stessa transazione delle righe (decisione 68). Il circuito arriva già composto da GET /circuito (decisione 43); l'app sceglie solo dove mettere i punti sullo schermo. Dalla tappa 6 una frase scritta nell'app passa prima da POST /richieste/riconosci: le regole della lingua o, se nessuna decide, un classificatore dicono se è una richiesta o un'immissione, e l'utente può cambiare la scelta (decisione 44). Il correttore ortografico usa il vocabolario del modello e, se il sistema lo ha, il dizionario Hunspell della lingua, che TheoryFlow non distribuisce (decisione 45). Backend, app e ONTO stanno come sottomoduli nel repository d'insieme theoryflow: lì ./avvia.sh accende tutto e prepara ciò che manca (ONTO compilato, ambiente Python), chiudendo l'app li ferma, e ./prove.sh esegue tutte le prove del backend e dell'app; con gli hook di git in strumenti/hook le prove girano da sole prima di ogni commit. Prima di salvare, una frase si confronta con le teorie esistenti: ciò che c'è già non si salva una seconda volta, e ogni inserimento entra nello storico (decisione 51). Il circuito è a semivettori (decisione 52) e l'app segue il percorso della teoria (decisione 53).
L'interfaccia tra app e backend
Il prototipo faceva fare all'app cinque chiamate in sequenza per ogni teoria. Dalla tappa 5 l'app usa poche chiamate, ciascuna completa.
| Chiamata | Che cosa fa |
|---|---|
POST /teorie/anteprima | Riceve il testo. Restituisce correzioni proposte (decisione 45), parole nuove, forma esplosa e formula logica, da confermare. Non salva nulla |
POST /teorie | Riceve il testo confermato. Salva, valuta e restituisce la teoria completa |
GET /teorie | Elenco delle teorie con il loro valore |
GET /teorie/{impronta} | Una teoria: proposizioni, forma esplosa, valori e loro storia |
DELETE /teorie/{impronta} | Cancella una teoria e ricalcola ciò che ne dipendeva |
POST /richieste/riconosci | Dice se un testo è una richiesta o un'immissione, e chi lo ha deciso (decisione 44). Non salva nulla |
POST /richieste | Riceve una domanda. Restituisce le teorie che condividono le proprietà cercate, con il loro valore, e il loro circuito (decisione 46) |
GET /alternative/{impronta} | Le teorie rivali proposte dal sistema |
GET /alternative | Le teorie di alternative confermate, con i membri e il loro valore |
POST /alternative | Conferma un elenco di alternative, o aggiunge teorie a una teoria di alternative già confermata |
POST /esplora | Calcola gli scenari «se fosse V» e «se fosse F» per una congettura. Non salva nulla |
GET /contraddizioni | Le coppie di teorie che non possono stare insieme |
GET /circuito | Il circuito a semivettori di alcune teorie o di tutte: punti, tratti con il valore dell'aggregazione, incroci e punti condivisi (decisione 52) |
GET /teorie/storico | Lo storico degli inserimenti, con l'esito di ognuno (decisione 51) |
GET /teorie/{impronta}/previsione | La previsione proposta per una teoria, da completare e confermare (decisione 47) |
POST /previsioni | Registra una previsione: una quota, una differenza di quote o di medie tra due gruppi, una differenza appaiata (decisione 56); se è incompleta resta N · non apofantica. Non si modifica |
POST /piani | Registra il piano di prova di una previsione completa, prima dei dati, con le colonne che il tipo della previsione richiede; la procedura dipende dal tipo e non si sceglie (decisioni 48 e 56). Non si modifica |
POST /piani/{impronta}/dataset | Carica un dataset CSV con la scheda di provenienza; entra solo se scheda e file passano i controlli, altrimenti l'elenco dei problemi (decisione 50). Non si modifica |
POST /dataset/{impronta}/calcolo | Rifà il calcolo del dataset, dopo aver verificato che i dati siano quelli registrati, e aggiunge il fatto statistico ai precedenti; la teoria riceve il motivo (decisione 54). Al caricamento il calcolo parte da solo; se lo stesso file è analizzato da più piani, li rifà tutti al livello diviso per il loro numero, e segnala i metodi non applicabili e la fragilità (decisione 57) |
GET /dataset/domande | Le tre domande sì o no del caricamento sulle spiegazioni rivali (decisione 61) |
POST /dataset/{impronta}/verifica | Manda a un nodo, anche lo stesso, il pacchetto dell'ultimo calcolo, confronta le cifre e registra la verifica: con le stesse cifre il fatto resta V, con cifre diverse diventa N (decisioni 62 e 69) |
GET /dataset/{impronta}/pacchetto | Previsione, piano, righe con la loro impronta e numero delle analisi sullo stesso file: ciò che serve a un altro nodo |
POST /verifica | Il lavoro di chi verifica: rifà il calcolo dal pacchetto, senza salvare nulla |
GET /nodo | Il nome del nodo (TF_NODO) e la sua implementazione del calcolo |
GET /identita | Se c'è il wallet, se è sbloccato, indirizzo e nome (decisione 67) |
POST /identita/crea, /importa | Crea il wallet, e solo qui restituisce le 24 parole; oppure lo ricava dalle 24 parole, con una parola d'ordine nuova |
POST /identita/sblocca, /blocca, /esci | Sblocca o blocca la chiave nel backend; toglie il wallet dall'installazione, con la parola d'ordine |
GET /registro | Le voci del registro firmato, dalla più recente (decisione 68) |
GET /registro/controllo | Rifà la catena e confronta l'archivio con il registro: i problemi, con la voce che riguardano |
GET /teorie/{impronta}/pubblicazione | Che cosa andrebbe in rete pubblicando la teoria, con gli avvisi sulle teorie non pubblicate (decisione 71) |
POST /teorie/{impronta}/pubblica, /ritratta | Una voce firmata della catena pubblica del wallet; la ritrattazione (decisione 74) |
GET /rete | Il nodo di rete, i nodi noti con quando sono stati visti, gli autori che hanno pubblicato (decisione 72) |
POST /rete/contatti, /giro, /sincronizza | Il primo contatto; un giro subito; le voci mandate al nodo e quelle arrivate importate (decisione 73) |
Licenze
Il codice del backend e dell'app è pubblicato sotto licenza AGPL-3.0. I testi della documentazione e degli articoli sotto licenza CC BY-SA 4.0.
5. Registro delle decisioni
Ottantasei decisioni, l'ultima il 12 ottobre 2026. Una decisione si cambia aggiungendo una voce nuova che dice quale sostituisce, non modificando la vecchia.
Decisioni prese
| N. | Tema | Decisione |
|---|---|---|
| 1 | Verso dell'aggregazione | Concetto ▷ proprietà: a sinistra il concetto, a destra le proprietà che lo formano; la più generica a destra. |
| 2 | Unità del valore | Il valore sta sull'aggregazione elementare, cioè sulla coppia «concetto ▷ una proprietà». La proposizione è la congiunzione delle sue aggregazioni («forma esplosa»). |
| 3 | Quattro valori | V, F, C (congetturale), N (non apofantico). N porta sempre un motivo: malformata, incompleta, non accessibile, dipende da congettura. |
| 4 | Nascita e congetture | Ogni teoria nasce C. Una teoria che contiene almeno una parte C vale N · dipende da congettura. |
| 5 | Esplorazione | Si può assumere una congettura vera o falsa per vedere che cosa ne segue. Il risultato non viene salvato. |
| 6 | Solo dimostrazione | V e F si ottengono solo per dimostrazione logica e ontologica. Nessuno assegna un valore a mano. Una teoria è vera quando le alternative sono dimostrate false. |
| 7 | Alternative | Il sistema le propone, l'utente le conferma con una teoria di alternative. Una nuova alternativa riporta il V a C. |
| 8 | Frasi negative | Stessa aggregazione della frase affermativa, sostenuta come F. |
| 9 | Motore logico | Il calcolo si fa con ONTO. Il programma «logica-ontologica» resta solo come confronto storico. |
| 10 | Identità delle proprietà | Una parola scritta è un nodo. Il significato lo dà il circuito. Forme flesse, polisemie e sinonimi si collegano o si distinguono solo con teorie. |
| 11 | Nessun assioma | Vale solo l'ontologia di fondo: aggregazione, dichiarazione, principi ontologici. Anche la grammatica è una teoria. La provenienza di una teoria non conta. |
| 12 | Risposta a una richiesta | Elenco delle teorie con il loro valore, più il circuito con gli incroci. Mai testo generato. |
| 13 | Perimetro della prima versione | Nucleo locale completo per una persona. Fuori: account, rete, TheoryChain, TheoryCoin, livello dei dataset, PHS. |
| 14 | Controlli automatici | Propagazione lungo la genericità e contraddizione tra teorie. Semata e fallacie restano fuori dalla prima versione. |
| 15 | Evidenza | Solo altre teorie già nel sistema. Le misure arriveranno con il livello dei dataset. |
| 16 | Componenti | ONTO come servizio locale; backend Python solo per il linguaggio; app Flutter su desktop Linux. |
| 17 | Correzione | Correttore ortografico locale. Nessun servizio esterno; il testo cambia solo con la conferma dell'utente. |
| 18 | Casa della documentazione | Questa sezione del sito. Canale, note e articoli rimandano qui per tutto ciò che definisce o decide. |
| 19 | Licenze | AGPL-3.0 per il codice, CC BY-SA 4.0 per i testi. |
| 20 | Nome | «TheoryFlow» è solo la piattaforma. |
| 21 | Teoria grammaticale di partenza | La grammatica caricata con il sistema vale finché non è confutata. Non è V. È l'unica teoria di partenza. |
| 22 | Congetture in conflitto | Una congettura non dimostra nulla. Due congetture in contraddizione restano congetture; il sistema evidenzia la contraddizione. |
| 23 | Vincoli logici | Non esiste una relazione di incompatibilità già pronta. Una contraddizione si vede solo se una teoria vincola le proprietà con un operatore logico. Il vincolo si scrive come frase e il sistema mostra la formula da confermare. |
| 24 | Origine di F | Un F nasce dall'accordo sugli scenari: la teoria è falsa sia assumendo una congettura vera sia assumendola falsa. La contraddizione interna ne è il caso più semplice. Nessuna teoria ontologica di partenza. |
| 25 | Propagazione dei valori | Si propaga solo da teorie dimostrate. Se il legame di genericità è ancora congettura, il valore non passa; il sistema mostra che cosa seguirebbe se fosse dimostrato. |
| 26 | Articoli con punti in revisione | Il testo resta intatto. In testa compare una nota con l'elenco dei punti e il rimando a questa documentazione, approvata dall'autore prima della pubblicazione. |
| 27 | Articoli corretti nel testo | Sostituisce in parte la 26. Gli articoli del 2023 superati ricevono una nota in testa (7, 10, 13, 14, 15, 21) e gli articoli 22–31 la tabella dei rimandi. Gli errori degli articoli 20, 25, 26, 27 e i teoremi degli articoli 29–31 sono corretti direttamente nel testo. |
| 28 | Dataset e verità | Per via statistica diventa V o F solo il fatto statistico: il risultato di un dataset analizzato con un piano registrato prima, che ogni nodo può ricalcolare. La teoria sul mondo resta C e riceve il fatto come motivo, «sostenuta da D» o «contraddetta da D», e non si propaga come dimostrata. Chiude il punto aperto A6. |
| 29 | Severità | Un solo livello per tutto il sistema: 0,001, cioè intervalli al 99,9%. «Sostenuta» richiede almeno due dataset indipendenti: nessuna unità in comune, raccolti da persone o nodi diversi, ciascuno con il proprio piano. Con un solo dataset il motivo è «sostenuta da D1, in attesa di replica». |
| 30 | Connettivi | «E», «sia… sia» danno ^. «Ma», «benché» danno ^ più una teoria implicita C con l'aspettativa contraria. «Quindi» e «perché» causale affermano le due parti e il legame; «se» solo il legame. «Quando», «dopo che», «prima che» indicano il tempo in cui avviene il fatto, il cui senso lo danno le teorie sul tempo. «O» dà sempre v; l'esclusione è un vincolo a parte. «Affinché» afferma il fatto più una teoria implicita C con il legame. «Né… né» segue la decisione 8. Chiude il punto aperto A2. |
| 31 | Complementi e frasi con «che» | Il complemento oggetto si aggrega al verbo: «Marco mangia la mela» dà Marco ▷ mangia · mangia ▷ mela. Una frase introdotta da «che» dopo un verbo (dice, crede, sa, spera) entra come teoria citata: attribuita al soggetto, mai affermata da chi scrive, qualunque sia il verbo. La frase principale è vera se il soggetto dice o crede davvero quella cosa; il sistema può confrontare la teoria citata con le altre. |
| 32 | Frasi relative | Una relativa senza virgole indica di quale cosa si parla: crea un concetto più specifico («cane che abbaia») e il resto della frase si aggrega a quel concetto, non a quello generale. Una relativa tra virgole aggiunge un'informazione allo stesso concetto. |
| 33 | Congetture e N | Sostituisce in parte la 3 e la 4. Una teoria con almeno una parte C resta C, con l'elenco delle parti che mancano; vale N solo se si dimostra che non si può sapere (malformata, incompleta, non accessibile). «Dipende da congettura» non è più un motivo di N. L'accordo sugli scenari (decisione 24) può comunque dare V o F. |
| 34 | Congetture in ONTO | Lo stato C vive in TheoryFlow: in ONTO non si scrive alcun valore di verità finché un'indagine non dà V, F o N. Lo stato e il motivo sono campi di testo, le dipendenze relazioni, ogni valutazione un elemento con data e modo. ONTO calcola solo sulle parti con un valore. Chiude il punto aperto A4. |
| 35 | Dataset in ONTO | Ogni dataset è una tabella di ONTO con colonne tipizzate, che dopo l'inserimento non si modifica. Scheda di provenienza, piano di prova e fatto statistico sono elementi di ONTO, collegati tra loro e alla tabella con relazioni, come nella decisione 34. Chi rifà il calcolo legge la stessa tabella. Chiude il punto aperto A7. |
| 36 | Maiuscole | Una proprietà si salva in minuscolo: «Mele» e «mele», «Roma» e «roma», «Rosa» (il nome) e «rosa» (il fiore) sono lo stesso nodo. Il testo della teoria resta com'è scritto. Distinguere un nome proprio da un nome comune, o due significati della stessa parola, è compito di una teoria, come nella decisione 10, che questa precisa. |
| 37 | Analisi della frase | Il backend divide e mappa le frasi con il POS tagging e l'analisi delle dipendenze di spaCy, modello italiano grande (it_core_news_lg): per ogni parola la categoria e la parola da cui dipende. Dove il modello sbaglia, la correzione si aggiunge alla teoria grammaticale di partenza insieme alla frase di prova che la richiede. |
| 38 | Verbi impersonali | Un verbo senza soggetto di cui si parla («piove», «nevica», «bisogna») si aggrega a un concetto nuovo, proprio della teoria: «Piove» dà momento di T ▷ piove, dove T sono le prime cifre dell'impronta della teoria. Come nella decisione 32, il concetto nuovo evita incroci con altre teorie che non parlano dello stesso momento; che cosa sia quel momento lo dicono le teorie sul tempo (decisione 30). |
| 39 | Altre lingue | Ogni teoria registra la sua lingua. La prima versione abilita solo l'italiano, ma il backend separa le regole universali (soggetto come concetto, aggettivo al nome, complemento al verbo, relative) dalla teoria grammaticale di ciascuna lingua, che contiene le parole e le forme proprie della lingua. Il modello di spaCy vale solo per il POS tagging e le dipendenze. Una lingua si abilita solo con: un modello con licenza che permetta l'uso commerciale, la sua teoria grammaticale, le sue frasi di prova e una revisione delle decisioni sull'aggregazione per la sua struttura (per esempio i casi al posto delle preposizioni, le parole composte, le lingue agglutinanti rispetto alla decisione 10). Parole di lingue diverse sono nodi diversi, collegati solo da teorie, come i sinonimi. |
| 40 | Modello di TheoryFlow | Sostituisce nella 37 la scelta del modello. Le versioni community e business usano lo stesso modello, quindi solo un modello addestrato su dati che permettono l'uso commerciale: i modelli italiani già pronti (spaCy, Stanza, UDPipe) sono addestrati su corpus non commerciali e restano fuori. Il backend usa il modello italiano di TheoryFlow, addestrato su sei corpus di Universal Dependencies (MarkIT, PUD, ParlaMint, TWITTIRO, Valico, Old) e sui vettori fastText, con uno script che lo ricostruisce identico. Su testi nuovi vale quanto il modello grande di spaCy (89,8% delle categorie e 74,3% dei legami giusti sul test di MarkIT, contro 88,7% e 71,8%). Gli errori noti si correggono con riparazioni dichiarate, ognuna con la sua frase di prova. |
| 41 | Parole nuove | Una parola che il modello non ha mai visto (senza vettore) ha una lettura incerta. Prima di salvare, chi inserisce la teoria ne conferma o ne corregge la categoria e la forma base; fino ad allora la teoria non entra, e le teorie grammaticali su quella parola non si generano. Il significato di una parola nuova, come di ogni parola, lo danno le teorie che la usano (decisione 10). |
| 42 | Forme flesse nel calcolo | Precisa la 10. Nel calcolo dei valori e delle contraddizioni, le forme di una proprietà collegate da teorie grammaticali di plurale o femminile («calda è il femminile di caldo») valgono come la stessa proprietà: il vincolo «una cosa non è calda e fredda insieme» vale anche per «il caffè è caldo e freddo». Vale per le proprietà, non per i concetti («la mela» e «le mele» restano distinti), e non per i tempi del verbo. Se la teoria grammaticale è confutata, il collegamento cade. I risultati mostrano la parola come è scritta. |
| 43 | Punti e incroci del circuito | Sostituita dalla 52. Precisa le voci «circuito» e «incrocio» del glossario. Un punto del circuito è una parola; un tratto è un'aggregazione, dal concetto alla proprietà; un incrocio è un punto per cui passano almeno due teorie. Come nel calcolo (decisione 42), una proprietà sta sul punto della sua forma base («gialle» e «gialla» su «giallo»), un concetto no; il punto si mostra con le parole come sono scritte. Le aggregazioni dichiarative (gli articoli) si disegnano solo a richiesta e non fanno incrocio: valgono V dalla nascita e le condividono quasi tutte le teorie. Un'aggregazione sostenuta F è un tratto tratteggiato, sullo stesso percorso di quella sostenuta V: tesi e antitesi stanno sullo stesso punto del circuito. Il circuito lo compone il backend; l'app sceglie solo dove mettere i punti sullo schermo. |
| 44 | Riconoscimento della richiesta | Una frase è una richiesta se lo dicono le regole della teoria grammaticale della lingua: finisce con il punto di domanda, comincia con una parola interrogativa («che», «chi», «come», «dove», «quando», «quale», «quanto», «perché») o con una forma di richiesta («dimmi», «mostrami», «cerca», «vorrei sapere»). Se nessuna regola decide, decide un classificatore statistico addestrato sulle frasi dei sei corpus del modello (decisione 40) e su esempi di richieste. La risposta dice chi ha deciso: la regola, o il classificatore con la sua fiducia. L'app lo mostra e l'utente può cambiare la scelta prima di procedere. |
| 45 | Correttore ortografico | Precisa la 17. Una parola è sospetta se non è nel vocabolario del modello (le 200 000 parole più frequenti dei vettori fastText, decisione 40) oppure, quando sul sistema è installato un dizionario Hunspell della lingua, se il dizionario non la riconosce. Per una parola sospetta il correttore propone le parole del vocabolario a una o due lettere di distanza, prima le più frequenti, e tra queste quelle che il dizionario riconosce. TheoryFlow non distribuisce il dizionario Hunspell, che è sotto licenza GPL-3: lo usa se lo trova. Il testo cambia solo se l'utente sceglie una proposta; altrimenti la parola resta e, se è nuova, va confermata (decisione 41). |
| 46 | Ricerca per proprietà | Precisa la 12. Della richiesta contano le parole piene (nomi, aggettivi, verbi, numeri), senza le parole che formano la domanda («che cosa», «dimmi», «teorie»). Ogni parola si cerca tra i punti del circuito, le proprietà anche nella forma base (decisioni 42 e 43). Sono pertinenti le teorie che passano per almeno uno di quei punti, prima quelle che ne toccano di più. La risposta è l'elenco di quelle teorie con il loro valore e il loro circuito, con i punti cercati in evidenza; se non ce n'è nessuna, l'elenco vuoto con le parole cercate (R2). |
| 47 | Previsione | La previsione è una scheda collegata a una teoria: unità, popolazione, parametro, verso con la soglia e zona di rilevanza. Il sistema la propone da ciò che legge nella mappatura (il concetto come unità, la proprietà come parametro, «più della metà» come verso e soglia); l'utente la completa e la conferma. Se manca l'unità, la popolazione, il parametro o la zona di rilevanza, la previsione è N · non apofantica e non le si può collegare un piano. Una previsione confermata non si modifica: una popolazione o una zona diversa fanno un'altra previsione. |
| 48 | Prima procedura: la proporzione | Il primo percorso completo, dalla teoria al motivo, usa una proporzione: la quota delle unità che hanno una proprietà, da una colonna sì/no. L'intervallo al 99,9% è quello esatto (Clopper-Pearson), calcolato con aritmetica decimale a 60 cifre, che non dipende dal processore: ogni nodo ottiene le stesse cifre. Il sistema calcola anche gli intervalli di Wilson e normale (multiverso ristretto); se uno porta a un esito diverso da quello esatto, il fatto è «inconcludente · dipende dal metodo». Per una previsione «maggiore di»: intervallo tutto sopra la zona, effetto rilevante presente; intervallo tutto sotto il limite alto della zona, contraddetta; altrimenti inconcludente. Per «minore di» allo stesso modo, dall'altra parte. |
| 49 | Quantità | Precisa la 32. Una quantità che sceglie una parte di un insieme («più della metà dei pazienti», «più del 2% dei chip», «meno della metà dei pazienti») crea un concetto nuovo K, la parte: K ▷ pazienti · K ▷ più della metà. La frase afferma qualcosa di K, non dell'insieme: «il farmaco guarisce più della metà dei pazienti» dà guarisce ▷ K, e dire che Mario è un paziente non porta a dire che il farmaco guarisce Mario. Le espressioni di quantità e la loro traduzione in verso e soglia (più della metà: maggiore di 0,5) stanno nella teoria grammaticale della lingua; da esse il sistema propone la previsione (decisione 47). |
| 50 | Dataset e scheda di provenienza | Precisa la 35. Un dataset si carica per un piano registrato, come file CSV in UTF-8 con una riga di intestazione: una riga per unità, una colonna per variabile, la cella vuota per il dato mancante. Insieme al file si dicono la colonna che identifica le unità e chi ha raccolto i dati, e si compila la scheda di provenienza: è completa quando ognuna delle sue dodici voci ha una risposta, e «non applicabile» vale solo con il motivo. Senza scheda completa il dataset non è una prova e non entra. All'ingresso il sistema controlla: intestazioni uniche, lo stesso numero di campi in ogni riga, una riga per unità, la colonna dell'esito presente e con i soli valori che il piano dice «sì» e «no» (il piano dichiara entrambi) o vuoti. Se un controllo fallisce non si salva nulla e la risposta elenca ogni problema. Il dataset accolto diventa una tabella di ONTO con colonne tipizzate: gli interi come interi; i decimali come testo, perché il tipo numerico di ONTO è in virgola mobile e non restituirebbe le cifre del file; il tipo di ogni colonna e il suo nome nel file stanno nella descrizione del dataset, e in ONTO le colonne hanno nomi neutri. Il dataset porta l'impronta SHA-256 del file, il numero di righe raccolte e di righe usate; chi rifà il calcolo verifica che la tabella corrisponda all'impronta. |
| 51 | Teorie già presenti e storico degli inserimenti | Due teorie si confrontano sulle forme esplose delle parti affermate, non sui testi: maiuscole, punteggiatura, articoli e ordine non contano. Prima di salvare, il sistema divide la frase nelle sue parti affermate (le congiunte di primo livello) e cerca ognuna tra quelle delle teorie esistenti. Se tutte ci sono già, non si salva nulla e l'anteprima porta alle teorie che le contengono. Se alcune ci sono e altre no, si salva solo la parte nuova: il sistema ne ricompone il testo con le sole parole dell'utente (soggetto e verbo della parte nota più le parole nuove, «La mela è» + «piccola») e l'utente può riscriverlo prima di salvare. Ogni inserimento, anche quando non salva nulla, entra nello storico degli inserimenti con la data, il testo scritto e l'esito: teoria nuova, parte nuova, già presente. |
| 52 | Circuito a semivettori | Sostituisce la 43, che disegnava un grafo. Ogni proprietà è un semivettore: una semiretta che parte da un'origine con il suo nome e passa per i concetti di cui è proprietà. L'origine di una proprietà è il punto dove arrivano i semivettori delle sue proprietà: «malattie» arriva a «cura», e da lì il semivettore di «cura» prosegue verso «omeopatia». Una proprietà è un solo semivettore in tutto il circuito: «rossa» della mela e «rossa» dell'auto sono la stessa semiretta; se non può passare in linea retta per tutti i suoi concetti, si piega. Un incrocio è il punto in cui due o più semivettori si incontrano. Il punto d'incontro non diventa un concetto nuovo («mela-rossa»): finché non nasce un neologismo resta «rossa», proprietà della mela. La logica non si disegna: è una selezione sui semivettori, che dice quali valgono in ogni scenario. Il colore di un semivettore è il valore della sua aggregazione; tratteggiato se sostenuta F. Come nella 42, le proprietà stanno sulla loro forma base. Gli articoli si disegnano solo a richiesta. |
| 53 | Il percorso della teoria | L'app mostra la gerarchia del lavoro. In alto una sola riga per scrivere una teoria o una domanda; sotto, le teorie. Ogni teoria ha un percorso a quattro tappe sempre visibile: che cosa dice (forma esplosa e circuito), valore (motivo, storia, esplorazione), rapporti (teorie che contiene o che la contengono, contraddizioni, alternative), prove (previsione, piano, dataset, fatto statistico). Le tappe compiute sono piene; la prossima è evidenziata con l'azione da fare. Le schede globali sono tre: Teorie, Circuito, Conflitti (contraddizioni e alternative insieme). Alla prima apertura una guida spiega i valori V, F, C, N e il percorso. |
| 54 | Fatto statistico e motivo sulla teoria | Precisa la 48 e la 29. Il calcolo parte da solo quando un dataset entra, e si può rifare: chi lo rifà verifica prima che le righe in ONTO corrispondano all'impronta dei dati registrata al caricamento (le righe in forma canonica, oltre all'impronta del file). Il fatto statistico contiene: unità con «sì» e unità usate, i tre intervalli al 99,9% (esatto, Wilson, normale) con l'esito di ciascuno rispetto alla zona di rilevanza, e, come informazione, la coda esatta e l'approssimazione normale alla soglia. Il fatto è un calcolo deterministico: dimostrato, vale V (decisione 28). I dataset di una teoria si chiamano D1, D2… nell'ordine di caricamento. La teoria resta C e riceve il motivo: «sostenuta da D1, in attesa di replica»; «sostenuta da D1 e D2» quando almeno due dataset che la sostengono sono indipendenti (raccolti da persone diverse, nessuna unità in comune, ciascuno con il proprio piano); «contraddetta da D1»; nessun motivo se l'esito è inconcludente. Se un dataset la sostiene e un altro la contraddice, il motivo è «contesa: sostenuta da D1, contraddetta da D2». |
| 55 | Calcolo misto | Precisa la 48. Tutto ciò che ha una formula chiusa o un calcolo esatto (t, F e χ² con le loro code e i loro quantili, Fisher, test dei segni, Yates, Welch, Greenhouse-Geisser, metodi robusti) si calcola in aritmetica decimale, con le stesse cifre su ogni nodo. Solo ciò che è iterativo, cioè i modelli multilivello, usa una libreria con licenza BSD a versione fissata; lì il confronto tra nodi usa una tolleranza dichiarata. Aggiornata dalla 59: provata su High School and Beyond, la libreria dava errori standard diversi a seconda dei valori di partenza, dichiarando ogni volta di aver finito; anche il modello multilivello si calcola quindi in decimale, e nessun calcolo è esterno. |
| 56 | Due gruppi, dati appaiati, tabelle 2×2 | Oltre alla quota (decisione 48) una previsione può riguardare: la differenza tra le medie di due gruppi, la media delle differenze appaiate (dopo meno prima), la differenza tra le quote di due gruppi. Il piano dice le colonne: del gruppo con i suoi due valori e della misura; del prima e del dopo; del gruppo e dell'esito sì/no. Le procedure e il loro multiverso: due gruppi, Student e Welch; dati appaiati, t appaiato e test dei segni (che non suppone la normalità); 2×2, intervallo di Wald e intervallo di Newcombe per la differenza delle quote, con Pearson, Yates e Fisher esatto come informazione. Il risultato si legge sempre sull'intervallo al 99,9% rispetto alla zona di rilevanza, come per la quota. |
| 57 | Controlli del calcolo | Applicabilità, con le soglie dei libri: in una 2×2 le frequenze attese devono essere almeno 5, altrimenti Pearson, Yates e Wald non si applicano; tra due gruppi, se il rapporto tra le varianze supera 4, Student non si applica. Un metodo che non si applica esce dal multiverso, con il motivo; le ipotesi non si decidono mai con il p di un test preliminare. Fragilità: il calcolo si rifà togliendo un'unità alla volta; se l'esito cambia, il motivo sulla teoria dice «fragile». Precisione attesa: registrando il piano, il sistema calcola la semiampiezza dell'intervallo al 99,9% con le unità previste (nel caso peggiore per le quote, con la deviazione standard prevista per le medie) e avvisa se non potrà mai stare dentro la zona di rilevanza. Confronti multipli: se lo stesso file è analizzato da k piani, ogni calcolo usa il livello 0,001/k. |
| 58 | Più gruppi, prove ripetute, classi | Con più di due gruppi una previsione resta il confronto tra due gruppi, dichiarato prima dei dati (contrasto pianificato); il piano dichiara anche tutti i gruppi del file. Più confronti sullo stesso file sono più previsioni, ognuna con il suo piano, e dividono il livello (decisione 57). Metodi per le medie: il contrasto con la varianza comune a tutti i gruppi dichiarati (con due gruppi è Student, e non si applica se il rapporto tra le varianze supera 4), Welch, Yuen sulle medie troncate al 20%; l'F dell'ANOVA e quello di Welch sono informazione. Prove ripetute: il confronto tra due condizioni misurate sulle stesse unità; il piano dichiara tutte le condizioni. Metodi: t appaiato, test dei segni e il contrasto con l'errore comune dell'ANOVA a misure ripetute, che non si applica se l'ε di Greenhouse-Geisser è sotto 0,75; l'F con le correzioni di Greenhouse-Geisser e di Huynh-Feldt è informazione. Classi: in una quota il «sì» può essere un insieme di valori (i sei mesi dopo il compleanno); il piano dichiara tutte le classi con le proporzioni attese, e il χ² di adattamento su quelle classi è informazione. Classi scelte dopo aver visto i dati sono un altro piano sullo stesso file, e dividono il livello. |
| 59 | Unità raggruppate | Il piano può dichiarare la colonna del raggruppamento (gli studenti dentro le scuole, i pazienti dentro le cliniche). Allora nel multiverso entrano il modello multilivello, con un'intercetta casuale per raggruppamento stimata con REML, e il confronto delle medie dei raggruppamenti, che fa anche da controllo indipendente: con Welch se ogni raggruppamento sta in un solo gruppo, con il t appaiato sulle differenze se ogni raggruppamento ha entrambi i gruppi. Student, Welch e Yuen sulle unità escono dal multiverso con il motivo «unità raggruppate, non indipendenti» e restano come informazione. I gradi di libertà del modello sono quelli «tra ed entro»: il numero dei raggruppamenti meno 2 se il gruppo è lo stesso in tutto il raggruppamento, altrimenti le unità meno i raggruppamenti meno 1. Il modello si calcola in aritmetica decimale come tutto il resto (la decisione 55 cambia): la stima REML si riduce a cercare il massimo su un solo numero, il rapporto tra la varianza tra raggruppamenti e quella entro, prima su una griglia ampia e poi affinando; ogni nodo ottiene le stesse cifre, senza tolleranza e senza dipendere da dove parte la ricerca. Una varianza tra raggruppamenti stimata a zero è un risultato, non un errore, e si segnala. Pendenze casuali e modelli più complessi restano fuori finché una prova non li richiede. Con un raggruppamento la fragilità (decisione 57) toglie un raggruppamento alla volta, perché l'unità indipendente è quella. Per ora il raggruppamento vale per le differenze di medie; per le quote servirebbe un modello logistico. Nelle prove ripetute le unità sono già i raggruppamenti: il modello multilivello con l'intercetta casuale per unità presuppone la stessa simmetria del contrasto con l'errore comune, quindi il suo test del rapporto di verosimiglianza, stimato con la massima verosimiglianza, è informazione. |
| 60 | Alternative sullo stesso dataset | Precisa la regola del livello dei dataset. Un dataset sostiene una teoria solo se ogni sua alternativa confermata (decisione 7) è contraddetta sugli stessi dati: un fatto su un dataset con la stessa impronta del file, dalla previsione e dal piano dell'alternativa, con esito contrario a essa. Altrimenti il motivo è «compatibile con D1, come l'alternativa «A»», con «non ancora provata su D1» se l'alternativa non ha un fatto su quei dati. Il calcolo dell'alternativa sullo stesso file conta nei confronti multipli (decisione 57). Il prossimo passo è mettere alla prova l'alternativa su D1. |
| 61 | Spiegazioni rivali aggiunte dal sistema | Il sistema aggiunge le spiegazioni rivali che il disegno non esclude: placebo e cambiamenti nel tempo quando il confronto è solo prima e dopo; confondenti quando il dato è osservazionale (l'assegnazione nella scheda è «non applicabile»); regressione verso la media quando le unità sono entrate per un valore estremo; selezione all'ingresso quando il dataset registra solo chi ha superato una soglia; livello del dato quando ogni riga è un aggregato. Le ultime tre vengono da tre domande sì o no che il caricamento chiede insieme alla scheda (decisione 50). Gli stessi dati non le possono escludere: il motivo resta, ma nomina le ipotesi da cui dipende, «sostenuta da D1, se si escludono: confondenti». Con più dataset restano solo le rivali che nessuno di essi esclude. Il prossimo passo è un dataset con un disegno che le escluda. |
| 62 | Secondo nodo | Precisa la 28. Appena calcolato il fatto statistico è C · in attesa di verifica; diventa V quando un altro nodo, ricevuto il pacchetto (previsione, piano, righe del dataset con la loro impronta, numero delle analisi sullo stesso file), rifà il calcolo con il proprio codice e ottiene le stesse cifre, in ogni intervallo, esito, informazione, livello e fragilità. Il calcolo è tutto decimale, quindi non c'è tolleranza: le cifre sono uguali o no. Se differiscono il fatto è N · calcolo non riproducibile, e il suo motivo sulla teoria non vale. Un fatto C dà già il motivo, segnato «da verificare». Un nodo non verifica i propri calcoli; ogni verifica resta registrata, con il nodo e la data. Un nuovo calcolo dello stesso dataset è un nuovo fatto, da verificare di nuovo. |
| 63 | Semata | Il primo procedimento per i semata (articoli 20 e 21). Si controlla la forma esplosa di ogni proposizione affermata, cercando le aggregazioni che attribuiscono all'essere o al nulla una proprietà contraria a un sema, o a qualsiasi soggetto il passaggio da o verso il nulla. Ingenerabilità: l'essere nasce, è creato, comincia; qualsiasi cosa nasce, è creata, viene dal nulla. Eternità: l'essere finisce, muore, cessa; qualsiasi cosa finisce, scompare, svanisce nel nulla. Immutabilità: l'essere cambia, muta, diventa. Immobilità: l'essere si muove, si sposta. Indivisibilità: l'essere è diviso, separato, ha parti. Unicità: l'essere non è unico, esistono più esseri. Pienezza: il nulla esiste, c'è, sta nell'essere. Universo, mondo e realtà sono esistenze, non l'essere: il loro mutare e muoversi non viola nulla. Le parole di ogni sema, nelle forme che servono, stanno nel file della lingua; della proprietà si confronta l'ultima parola («ha creato» → «creato»); una parola si aggiunge solo con la frase di prova che la richiede. Una proposizione che viola un sema vale F a priori, con il motivo «viola l'ingenerabilità» e le parole che la violano; si combina con le altre proposizioni e si propaga come ogni F logico. La forma negata non riceve nulla: la verità a priori non si argomenta (articolo 20). |
| 64 | Il nulla come nome e come «nessuna cosa» | «Nulla» e «niente» con l'articolo sono un nome: «il nulla esiste» attribuisce l'esistenza al nulla e viola la pienezza. Senza articolo, come soggetto, vogliono dire «nessuna cosa»: «nulla nasce dal nulla» nega il nascere dal nulla e non viola alcun sema; «nulla esiste» nega che qualcosa sia, e viola la pienezza. Dopo una preposizione (dal nulla, nel nulla) sono sempre il nulla. |
| 65 | Semata: separazione, creazione, distruzione | Allarga la 63 con le frasi S19–S41. Unicità: qualcosa che esiste fuori dall'essere; una sostanza, un mondo o una realtà separati; più universi o mondi che esistono. Ingenerabilità: creare in senso ontologico, cioè creare una totalità (universo, mondo, cosmo, realtà, tutto) o essere creati da un ente fuori dal mondo (Dio, dei, divinità, demiurgo); il nulla che genera; l'essere che ha un inizio. «Creare» detto d'altro è un modo di dire per «costruire»: non viola, ma il sistema avverte che in senso proprio creare è fare dal nulla. Eternità: annientare, sempre; distruggere il sostrato (materia, energia) o una totalità; l'essere che ha una fine. Distruggere una cosa particolare è distruggere la struttura che le permette di essere tale, la relazione delle sue proprietà, non la cosa: non viola, con un avviso. Pienezza: il non essere che è o esiste; il vuoto assoluto che esiste; il vuoto della fisica non viola. Indivisibilità: l'essere composto di parti. L'universo che ha un inizio o che finirà e la coscienza che scompare non violano nulla: sono esistenze. |
| 66 | Fallacie | Il primo procedimento per le fallacie (Arp, Barbone e Bruce, Bad Arguments, 2019). Una fallacia colpisce il legame di un'inferenza, mai la conclusione: «A, quindi B» afferma A, B e il legame A ⇒ B (decisione 30), e una fallacia rende F a priori il legame, con il nome della fallacia nel motivo; A e B restano con il loro valore (il libro, capitolo 20: concludere che la conclusione è falsa perché l'argomento è fallace è a sua volta una fallacia). La teoria che afferma il legame è quindi F. Prima tappa, sette fallacie che si riconoscono dalla forma esplosa. Affermazione del conseguente: «B, quindi A» quando c'è «se A, allora B», nella stessa frase o in una teoria del sistema (non nelle implicite, che il sistema ne ricava). Se c'è anche «se B, allora A», l'inferenza è valida. Negazione dell'antecedente: «non A, quindi non B» con «se A, allora B». Modus ponens e modus tollens non si segnalano. Petizione di principio: la conclusione ripete la premessa, con la stessa quantità («questo cigno» e «tutti i cigni» non sono la stessa cosa). Appello all'autorità: la premessa dice che qualcuno dice, crede o sostiene p e la conclusione è p; in TheoryFlow l'autorità non dimostra, quindi vale anche per un esperto. Appello alla moltitudine: lo stesso quando chi parla è una moltitudine (tutti, la gente, la maggioranza, molti). Post hoc: la premessa colloca un fatto «dopo» X e la conclusione fa di X la causa. Generalizzazione indebita: la premessa parla di un caso singolo (questo, quel, un) e la conclusione di tutti quelli dello stesso concetto. Nel confronto tra teorie i «momento di …» dei verbi impersonali (decisione 38) contano come lo stesso momento. Ogni regola nasce con la frase di prova che la richiede. |
| 67 | Identità | Precisa la 13. L'account di TheoryFlow è il wallet della TheoryChain, quello in cui arriveranno i TheoryCoin. È di una persona: la Community Edition non ammette gruppi, che restano alla Business Edition. Un'installazione ha un solo wallet: per usarlo su un altro computer lo si importa con la frase di recupero, e per cambiarlo si esce dal proprio e se ne crea o importa un altro. Il wallet è una coppia di chiavi Ed25519 creata sul computer della persona; la chiave pubblica, scritta in bech32m con il prefisso «tf» (tf1…), è l'indirizzo. Gli altri vedono l'indirizzo e, se la persona lo sceglie, un nome, che nessuno verifica: chiunque può chiamarsi Bob, e chi vuole resta anonimo (articoli 0 e 17). Non c'è un centro che dica chi è una persona, e l'identità non dà peso alle teorie (decisioni 11 e 66). La chiave privata sta in un file cifrato con la parola d'ordine (scrypt e ChaCha20-Poly1305). Alla creazione TheoryFlow mostra una volta sola 24 parole (BIP39, elenco italiano) da cui la stessa chiave si ricava su qualunque computer; persi il file e le parole, l'identità è persa, perché nessuno può restituirla. Il backend tiene la chiave sbloccata solo in memoria. Senza wallet sbloccato si legge, ma non si scrive. |
| 68 | Registro firmato | Tutto ciò che si scrive nell'archivio entra nel registro: teorie (con le implicite, le citate e le grammaticali), cancellazioni, alternative, previsioni, piani, dataset con la scheda, fatti statistici, verifiche e lo storico degli inserimenti. Ogni voce ha un numero, il tipo, l'indirizzo e il nome di chi scrive, il nodo, la data, l'impronta di ogni riga scritta (o tolta, per una cancellazione) e l'impronta della voce precedente; è firmata con la chiave del wallet ed entra nella stessa transazione delle righe. Le valutazioni non entrano: il sistema le ricalcola. All'avvio, e ogni volta che lo si chiede, TheoryFlow controlla la catena (numeri, impronte, firme) e confronta l'archivio con il registro: una riga cambiata, tolta o aggiunta senza voce, e una catena interrotta, sono segnalate con la voce che riguardano. L'ultima voce è scritta anche accanto al wallet, così si scopre anche una coda tolta. Il controllo segnala, non ripara né blocca. Se il wallet nasce in un archivio che ha già dei dati, la prima voce li elenca come «precedenti al wallet»: la firma attesta che c'erano, non chi li ha scritti. Con la rete il registro si replicherà tra i nodi: è la TheoryChain in locale. |
| 69 | Chi verifica | Sostituisce la 62 nella parte sul valore dei fatti. Chiunque può rifare un calcolo, anche la stessa persona dallo stesso nodo: chi verifica non conta, perché i dati si possono simulare (articolo 28) e il calcolo è deterministico. Un fatto statistico è V già al primo calcolo, e il motivo sulla teoria non dice più «da verificare». Una verifica con cifre diverse lo rende N · calcolo non riproducibile, come prima. Ogni verifica resta nel registro, con l'indirizzo e il nodo. |
| 70 | Rete | La rete di TheoryFlow viaggia su I2P (il messaggio 41 del canale escludeva IPFS per l'anonimato), con i crate di IOP come libreria: il trasporto SAM che si ferma invece di cadere in chiaro, la configurazione controllata, i limiti di frequenza, l'anti-replay, il padding e i log che nascondono gli indirizzi. Il protocollo è di TheoryFlow: messaggi propri per pubblicazioni, presenze e richieste, non la replica git di IOP. Il nodo si presenta agli altri con una chiave di nodo Ed25519 sua, generata a caso e senza legame con il wallet: chi legge soltanto appare come un nodo, non come una persona; ciò che si pubblica resta firmato dal wallet (decisione 67). |
| 71 | Pubblicazione | Precisa la 68. Tutto nasce locale («teorizza localmente», messaggio 12 del canale). Si pubblica teoria per teoria: la teoria con le implicite, le citate e le grammaticali che porta con sé e, a scelta, le sue prove (previsioni, piani, dataset con la scheda e le righe, fatti). Ogni pubblicazione è una voce della catena pubblica del wallet, separata dal registro locale: numerata, legata alla precedente, firmata; chi la riceve la verifica per intero senza vedere ciò che resta locale. Prima di pubblicare TheoryFlow avvisa se la teoria si appoggia a teorie non pubblicate: altrove il suo valore può essere diverso. Una teoria pubblicata resta nelle copie degli altri: si può ritrattare, non ritirare. |
| 72 | Diffusione e presenza | Le firme passano da nodo a nodo da sole, finché tutti vedono tutti: ogni nodo inoltra le pubblicazioni e le presenze che riceve, così come sono, e chi le riceve ne verifica le firme; chi inoltra non può alterarle. Ogni nodo diffonde a ogni giro una presenza firmata con la chiave di nodo («sono raggiungibile a ….b32.i2p»). Un nodo c'è ora se un ping o una sua presenza è arrivata negli ultimi 10 minuti; altrimenti è «visto l'ultima volta il …». C'è stato chi ha lasciato una pubblicazione, anche da spento. Il primo contatto parte da un indirizzo incollato da chi installa; se non ce n'è, dai nodi di partenza scritti in TheoryFlow, che dopo il primo contatto non servono più. |
| 73 | Pubblicazioni ricevute | Una pubblicazione ricevuta entra nello stesso archivio delle teorie locali, con il suo autore, dopo la verifica della firma e della catena pubblica dell'autore; una voce che non torna è scartata e segnalata. La provenienza non conta (decisione 11): le teorie ricevute entrano nei valori, nelle contraddizioni e nelle alternative come le altre. La stessa teoria scritta da più persone è una sola, con più autori. In rete non viaggiano valori: ogni nodo li calcola da sé; un dataset ricevuto si ricalcola, e il fatto è quello del nodo che riceve. |
| 74 | Ritrattazione | L'autore può ritrattare una sua teoria pubblicata con una voce della sua catena pubblica. Chi la riceve la mostra «ritrattata dall'autore il …», ma la teoria continua a contare nei valori e nei conflitti: una teoria vale per ciò che dice, non per chi la sostiene (decisione 11). |
| 75 | TheoryChain: ordine causale | La TheoryChain non ha blocchi né chi li decide: sono le catene pubbliche dei wallet che si citano a vicenda. Ogni nuova voce riporta, firmate con il resto, le voci degli altri autori arrivate al suo nodo dopo la voce precedente dello stesso autore. Una voce viene prima di un'altra se l'altra la cita, anche attraverso altre citazioni o la propria catena; se nessuna delle due ha visto l'altra sono contemporanee. La data che l'autore scrive resta una dichiarazione: l'ordine lo danno le citazioni. Per una teoria pubblicata da più autori e per due teorie in contraddizione l'app mostra chi è venuto prima. Niente PoW né PoS (messaggio 38 del canale): nessun calcolo in più e nessuno che decida. |
| 76 | Doppie versioni | Precisa la 71. Se un autore firma due voci diverse con lo stesso numero, restano entrambe: si diffondono come le altre, entrano negli archivi e le loro teorie contano, con la nota «due versioni della voce n di …». La catena dell'autore diventa un albero: una voce vale se segue una qualunque voce precedente dello stesso autore. Conseguenza da affrontare con il TheoryCoin (tappa 17): una spesa firmata due volte non si annulla da sola. |
| 77 | TheoryCoin: moneta e fondi | Il TheoryCoin è una sola moneta, che nasce come ricompensa per il lavoro verificato: studi con dataset, repliche, conservazione e ricalcolo. In più ogni teoria ha un fondo: chi vuole che una questione sia studiata vi versa TheoryCoin, e il fondo paga chi replica quella teoria, qualunque sia l'esito; chi versa non può ritirare né scegliere chi viene pagato. Nessuno possiede una teoria (messaggio 77): il fondo finanzia lo studio, non la tesi (messaggio 48). Scelta sulle simulazioni della pagina Economia del TheoryCoin. |
| 78 | Si paga il lavoro confermato | Uno studio o una replica si pagano, con l'emissione e con il fondo, quando una misura successiva e indipendente sulla stessa domanda dà lo stesso risultato; fino ad allora il pagamento resta in attesa. Non conta che la teoria risulti vera o falsa, ma che due misure concordino. Chi misura onestamente ma sbaglia può non essere pagato. Nelle simulazioni le teorie inventate scendono dal 20% al 4%. |
| 79 | Quanta moneta si crea | Finché inventare un dataset costa poco, si coniano 250 TheoryCoin a settimana (cifra relativa ai 20.000 iniziali del modello; le cifre vere si fissano con la nascita dei primi TheoryCoin). Quando la falsificazione diventa cara (PHS), si passa alla quantità costante: la moneta spesa per usare il sistema viene distrutta e se ne conia altrettanta come ricompensa. Il passaggio non ha una data: lo stabilisce una decisione apposita quando il PHS è attivo, ed è una nuova versione del protocollo. Scelta con il criterio e le 28.080 corse della pagina Economia del TheoryCoin: prima del passaggio 86–90% di risposte giuste e 2–3% di teorie inventate a ogni livello d'uso, dopo 90–96% con il valore stabile. |
| 80 | Testimoni per i TheoryCoin | Precisa la 76 per le sole voci che spostano TheoryCoin; le teorie restano come sono. Un movimento di TheoryCoin vale quando lo firmano testimoni che insieme hanno due terzi del merito; il merito sono le repliche confermate degli ultimi sei mesi, che ogni nodo calcola dai dati pubblici (i nodi validatori del messaggio 38, senza PoW né PoS). Un testimone onesto firma una sola versione per voce, quindi due versioni in conflitto non diventano mai entrambe definitive; se nessuna arriva ai due terzi, il pagamento si rifà. Chi riceve aspetta le firme, circa 100 secondi. Prima del PHS il merito costa poco (circa 4.000–8.000 € di repliche inventate per un terzo, nel modello): l'app lo dice a chi riceve un pagamento. Scelta sulle simulazioni della pagina Economia del TheoryCoin, sezione «Quale pagamento vale». |
| 81 | Come paga un fondo | Precisa la 77. A ogni replica confermata (decisione 78) il fondo della teoria paga un quarto di ciò che contiene in quel momento: la regola usa solo TheoryCoin e segue da sé il valore della moneta. Ricalcolo e conservazione restano un dovere di ogni nodo e non si pagano in TheoryCoin, perché non si può distinguere chi li fa da chi li copia: l'emissione va per il 20% agli studi e per l'80% alle repliche. Il merito di chi conserva passa attraverso le repliche, che danno anche il ruolo di testimone (decisione 80). Nelle simulazioni: 90% di risposte giuste nel caso peggiore, nessun TheoryCoin ai nodi finti. |
| 82 | Nascita dei TheoryCoin | Al lancio non esiste nessun TheoryCoin: ognuno nasce da uno studio o da una replica confermati (decisioni 78, 79 e 81). Nessuno riceve una dotazione: né il progetto né chi ha lavorato prima, perché prima del PHS quel merito si inventa a poco prezzo. I primi TheoryCoin valgono di più, quindi chi verifica per primo è premiato di più; nel primo anno la moneta si diluisce mentre cresce, e l'app lo dice a chi versa in un fondo. Nelle simulazioni la conoscenza non dipende dalla dotazione (88–90% nel caso peggiore), mentre una dotazione di 5.000 lascerebbe a chi la riceve il 16–29% della moneta dopo due anni. |
| 83 | Il protocollo del TheoryCoin | Come le decisioni 77–82 diventano regole che ogni nodo calcola allo stesso modo dai dati pubblici.
|
| 84 | Fragilità più rapida | Precisa la 57 per il confronto tra due o più gruppi senza raggruppamento (tappa 18). Il calcolo di oggi rifà da capo l'intera procedura per ogni unità tolta, e cresce con il quadrato delle righe: 3,6 minuti su 2.000 unità, 13 minuti su 5.000. Il nuovo calcolo tiene le somme e le somme dei quadrati di ogni gruppo, aggiorna a mano quelle del gruppo da cui si toglie un'unità, e decide l'esito dagli estremi dei gradi di libertà di Welch e di Yuen lungo tutte le unità possibili; richiama il calcolo esatto di oggi solo quando il risultato è troppo vicino al confine della zona di rilevanza o il grado di libertà è troppo vicino a cambiare la quarta cifra. Le cifre restano identiche: confrontato su 600 dataset casuali, con gruppi, varianze e dimensioni diverse (backend/strumenti/confronto_fragilita.py), il risultato non cambia mai. Diventa 1 secondo su 2.000 unità, 1,6 secondi su 5.000. Corregge anche un difetto: un gruppo con tutti i valori uguali faceva fallire il calcolo (varianza nulla, rapporto infinito non formattabile); ora il motivo dice che la varianza è nulla. |
| 85 | Calcolo in rete non ancora | Precisa il piano della tappa 18. Il calcolo in rete, previsto dalla prima versione, non si introduce ora: con il calcolo locale resosi rapido (decisione 84), nessuna procedura di oggi richiede più di pochi secondi su un dataset reale (2.000 unità in circa 16 secondi, compreso il caricamento). Quando servirà, restano fissate da ora tre condizioni: in rete gira solo il codice di TheoryFlow, mai codice qualunque, perché non diventi estrazione di altre monete né esecuzione di codice malevolo; solo su dati pubblicati, mai su dataset locali non condivisi (decisione 71); chi riceve il calcolo ne rifà a caso una parte, come già succede tra nodi (decisione 62). La spesa per usare il sistema resta legata al PHS (decisione 79): prima del PHS la quantità emessa è fissa, quindi non serve una spesa. |
| 86 | Dizionario ortografico di TheoryFlow | Precisa la 45. TheoryFlow costruisce un proprio dizionario, uguale in ogni edizione, da Morph-it! (Marco Baroni e Eros Zanchetta, Università di Bologna, versione 0.4.8): delle sue 505.074 forme flesse con lemma e categoria grammaticale (per esempio «guarirebbero · guarire · VER:cond+pres+3+p») restano le 400.771 che sono solo parole, tolti simboli e duplicati, sotto licenza CC BY-SA 2.0 e GPL. Il correttore lo usa sempre, non solo quando trova Hunspell sul sistema; Hunspell, se c'è, resta un filtro in più sulle proposte, ma non è più necessario per un correttore coerente. Distribuito sotto licenza CC BY-SA, come il modello (decisione 40): va citata la fonte e condivisa allo stesso modo ogni versione modificata del file. Chiude il punto aperto A9. |
Requisiti annotati per le versioni successive
- Livello dei dataset. Inserimento dei dati semplice per l'utente, anche in massa. Validazione ed elaborazione statistica fatte dal sistema. Il flusso di riferimento è la mappa «Modello epistemologico unificato». Il progetto è nella pagina Il livello dei dataset.
- Esperimento costruito su misura. Un esperimento conferma una teoria solo se una teoria rivale prevedeva misure diverse: servono metriche controfattuali e una teoria discriminante.
- Calcolo distribuito. Se l'elaborazione è troppo pesante può passare alla TheoryChain, con un controllo che il calcolo richiesto serva alla conoscenza e non sia estrazione di altre monete né codice malevolo.
Punti aperti
Emersi scrivendo questa documentazione. Vanno chiusi prima o durante lo sviluppo.
| N. | Domanda | Perché conta |
|---|---|---|
| A3 | Le riformulazioni dei teoremi negli articoli 26, 29, 30 e 31 sono corrette? | Sono state scritte durante la revisione del 9 ottobre 2026 e non sono state verificate da un esperto: teorema del bound informato; assioma F4; teoremi 3.1, 3.3, 4.1, 5.3 |
| A8 | Come si distribuisce il modello italiano di TheoryFlow? | È sotto licenza CC BY-SA 4.0, che viene dai suoi dati: chi lo usa deve citarne le fonti e condividere allo stesso modo le versioni modificate. Va deciso se e come distribuirlo con le versioni community e business, e se far crescere i dati di addestramento con frasi annotate in proprio (per esempio quelle confermate nell'anteprima) |
| A10 | Il TheoryCoin rientra nel regolamento europeo MiCA? | Non c'è un emittente né una dotazione (decisione 82), ma chi compra TheoryCoin con euro e i servizi di cambio potrebbero ricadere nel regolamento. Va chiesto a un esperto prima che i TheoryCoin si possano scambiare con denaro |
| A11 | Come si cambiano i TheoryCoin con Monero o con euro? | I messaggi 4 e 24 prevedono token convertibili in Monero. Le simulazioni non modellano nessun cambio esterno: va deciso se TheoryFlow offre uno scambio, lo lascia ad altri o non lo prevede |
6. Glossario
Un nome per ogni concetto. Questi termini valgono in ogni documento, commento del codice e schermata.
| Termine | Significato |
|---|---|
| Aggregazione, ▷ | L'atto per cui proprietà compatibili formano un concetto. Si legge «è aggregato da». |
| Aggregazione elementare | Una coppia «concetto ▷ una proprietà». È l'unità che riceve un valore. |
| Alternative, teoria di | Teoria che elenca i modelli rivali su un punto. Serve a dimostrare per esclusione. |
| Circuito | Il disegno dei semivettori di una o più teorie e dei loro incroci (decisione 52). |
| Concetto | Ciò di cui una proposizione parla; ciò che sta a sinistra di ▷. |
| Congetturale, C | Valore di ciò che può essere vero o falso ma non è ancora dimostrato. |
| Contraddetta da D, sostenuta da D | Motivo che un fatto statistico dà a una teoria sul mondo, che resta C. «Sostenuta» richiede due dataset indipendenti. |
| Distinzione, teoria di | Teoria che separa due significati della stessa parola in due proprietà distinte. |
| Esplorazione | Calcolo di che cosa seguirebbe se una congettura fosse vera o falsa. Non produce valori. |
| Falso, F | Impossibile o confutato. |
| Fatto statistico | Il risultato di un dataset analizzato con un piano registrato prima. Ogni nodo può ricalcolarlo; è l'unica cosa che la statistica rende V o F. |
| Forma esplosa | Una proposizione scritta come elenco delle sue aggregazioni elementari, ciascuna con il suo valore. |
| Identità, teoria di | Teoria che dichiara che due parole sono la stessa proprietà. |
| Immissione | Frase che aggiunge una teoria. |
| Incrocio | Il punto in cui due o più semivettori si incontrano. Non è un concetto nuovo: «rossa» che incontra «mela» resta rossa, proprietà della mela, finché non nasce un neologismo. |
| Multiverso ristretto | Le procedure standard alternative a quella del piano, eseguite sugli stessi dati. Se discordano il fatto statistico è inconcludente. |
| Non apofantico, N | Né vero né falso, perché si è dimostrato che non si può sapere. Motivi: malformata, incompleta, non accessibile. |
| ONTO | Linguaggio e motore a proprietà su cui TheoryFlow conserva e calcola. |
| Piano di prova | Tutte le scelte di un'analisi, registrate prima di vedere i dati. |
| Proposizione | Parte di una teoria priva di operatori logici. |
| Proprietà | La forma in cui l'essere si differenzia. Nel sistema: una parola scritta, un solo nodo. |
| Provenienza | Come una teoria è entrata nel sistema: scritta a mano o generata, e da che cosa. |
| Richiesta | Frase che cerca teorie esistenti. |
| Semivettore | La proprietà nel disegno: una semiretta che parte da un'origine con il suo nome e passa per i concetti di cui è proprietà. Una proprietà è un solo semivettore in tutto il circuito. |
| Scheda di provenienza | La descrizione di come un dataset è stato raccolto. Senza, il dato non è una prova. |
| Teoria | Descrizione del mondo espressa in un linguaggio. Può essere una frase o un testo. Anche una regola grammaticale è una teoria. |
| Teoria di partenza | La teoria grammaticale caricata con il sistema. Vale finché non è confutata; non è V. |
| Scenario | Ciò che segue assumendo una congettura vera, oppure falsa. |
| TheoryFlow | La piattaforma. Non l'ontologia, non la fisica. |
| Vincolo logico | Teoria che lega due o più proprietà con un operatore logico. È ciò che rende visibile una contraddizione. |
| Valutazione | L'atto registrato che dà un valore a un'aggregazione: valore, modo, dipendenze, data. |
| Vero, V | Dimostrato per via logica e ontologica. Le misure rendono V solo il fatto statistico, non la teoria sul mondo (decisione 28). |
| Zona di rilevanza | I valori di un parametro che una teoria considera «nessun effetto rilevante», dichiarati prima dei dati. |
Nomi da non usare più
| Al posto di | Si dice |
|---|---|
| Null, nullo, None, indefinito | Non apofantico, N |
| Indeterminato, non verificato | Congetturale, C |
| Soggetto, riferimento | Concetto |
| Insieme, superinsieme, categoria, oggetto | Aggregato |
| Logica ontologica predicativa | Mappatura in aggregazioni |
| Affermazione | Immissione |
| Nodo, intreccio | Incrocio, nel disegno; proprietà, nel sistema |
| Arco, vettore | Semivettore |
| Grafo, circuito vettoriale, circuito semivettoriale | Circuito |
| ⊆, ⊇, → tra proprietà | ▷ |
7. Frasi di prova
Queste frasi sono la specifica. Una regola di mappatura esiste quando qui c'è una frase che la richiede, con il risultato atteso accanto.
Lo stato dice se il programma attuale produce già quel risultato; nel backend lo verificano le prove automatiche test/frasi_di_prova.py (mappatura), test/valori.py (valori) e test/richieste.py (richieste e teorie d'insieme), con il modello italiano di TheoryFlow (decisione 40). Nelle forme esplose le aggregazioni con articoli sono omesse per brevità. «Momento di T» è il concetto di un verbo impersonale, con T le prime cifre dell'impronta della teoria (decisione 38).
Mappatura
| N. | Frase | Forma esplosa attesa | Stato |
|---|---|---|---|
| M1 | Il cane è bello | cane ▷ bello | Funziona |
| M2 | Fido è un cane fedele | fido ▷ cane · cane ▷ fedele | Funziona |
| M3 | Il mare è molto mosso | mare ▷ mosso · mosso ▷ molto | Funziona |
| M4 | Le mele erano gialle | mele ▷ gialle · mele ▷ erano | Funziona |
| M5 | La mela non è blu | mela ▷ blu, sostenuta come F | Funziona |
| M6 | Il cane è bello e il gatto è brutto | cane ▷ bello ^ gatto ▷ brutto | Funziona |
| M7 | L'acqua è chiara, cristallina e fresca | acqua ▷ chiara ^ acqua ▷ cristallina ^ acqua ▷ fresca | Funziona |
| M8 | Maria ha comprato il pane, Paolo la carne | maria ▷ ha comprato · ha comprato ▷ pane ^ paolo ▷ ha comprato · ha comprato ▷ carne: la seconda proposizione eredita «ha comprato» | Funziona |
| M9 | Roma è la capitale d'Italia | roma ▷ capitale · capitale ▷ d' · d' ▷ italia | Funziona |
| M10 | L'acqua se la si scalda diventa vapore | acqua ▷ scalda => acqua ▷ diventa · diventa ▷ vapore: solo il legame | Funziona |
| M11 | Il fuoco è caldo | fuoco ▷ caldo | Funziona |
| M12 | Marco mangia la mela | marco ▷ mangia · mangia ▷ mela | Funziona |
| M13 | Piove, ma esco | momento di T ▷ piove ^ io ▷ esco; teoria implicita C: momento di T ▷ piove => io ▷ esco sostenuta come F | Funziona |
| M14 | Piove, quindi la strada è bagnata | Tre parti: momento di T ▷ piove · strada ▷ bagnata · la prima => la seconda | Funziona |
| M15 | Quando sono uscito, pioveva | Concetto nuovo K, «tempo in cui io sono uscito»: K ▷ tempo · K ▷ io · K ▷ uscito · K ▷ piove | Funziona |
| M16 | Studio affinché io superi l'esame | io ▷ studio; teoria implicita C: io ▷ studio => io ▷ supero · supero ▷ esame | Funziona |
| M17 | Marco dice che piove | marco ▷ dice · dice ▷ «piove»; «piove» è una teoria citata, attribuita a marco, non affermata | Funziona |
| M18 | Marco sa che piove | Come M17: T1 citata, non affermata | Funziona |
| M19 | Il cane che abbaia è mio | Concetto nuovo K, «cane che abbaia»: K ▷ cane · K ▷ abbaia · K ▷ mio; «cane» non riceve «mio» | Funziona |
| M20 | Il cane, che abbaia, è mio | cane ▷ abbaia · cane ▷ mio | Funziona |
| M21 | L'omeopatia non cura le malattie | omeopatia ▷ cura, sostenuta come F · cura ▷ malattie | Funziona |
| M22 | Il treno arriva alla stazione di Roma | treno ▷ arriva · arriva ▷ alla · alla ▷ stazione · stazione ▷ di · di ▷ roma | Funziona |
| M23 | L'acqua bolle a 100 °C al livello del mare | acqua ▷ bolle · bolle ▷ a · a ▷ 100 °c · bolle ▷ al · al ▷ livello · livello ▷ del · del ▷ mare; «100 °C» è un numero con la sua unità di misura, la teoria non è incompleta | Funziona |
| M24 | Il farmaco guarisce più della metà dei pazienti | Concetto nuovo K, «più della metà dei pazienti»: K ▷ pazienti · K ▷ più della metà · farmaco ▷ guarisce · guarisce ▷ K | Funziona |
| M25 | Più del 2% dei chip è difettoso | K, «più del 2% dei chip»: K ▷ chip · K ▷ più del 2% · K ▷ difettoso | Funziona |
| M26 | Meno della metà dei pazienti guarisce | K, «meno della metà dei pazienti»: K ▷ pazienti · K ▷ meno della metà · K ▷ guarisce | Funziona |
Teorie grammaticali generate
| N. | Frase inserita | Teorie attese | Stato |
|---|---|---|---|
| G1 | Le mele erano gialle | «mele è il plurale di mela» · «gialle è il plurale di gialla» · «gialla è il femminile di giallo» · «erano è il passato di sono» | Funziona |
| G2 | La mela è gialla, dopo G1 | Nessuna teoria nuova; incrocio con G1 attraverso «gialla» | Funziona |
Valori
| N. | Situazione | Esito atteso | Stato |
|---|---|---|---|
| V1 | «La mela è rossa», appena inserita | C · manca: mela ▷ rossa | Funziona |
| V2 | «La mela è rossa e la mela non è rossa», una sola teoria | F · si contraddice | Funziona |
| V3 | «Questa frase è falsa» | N · malformata | Funziona |
| V4 | «La distanza vale 2» | N · incompleta | Funziona |
| V5 | Teoria di alternative A, B, C confermata; A e B dimostrate F | C diventa V · per esclusione | Funziona |
| V6 | Dopo V5 si aggiunge l'alternativa D | C torna congettura | Funziona |
| V7 | «Il mammifero depone uova» è F; «il cane è un mammifero» è V | «Il cane depone uova» è F · derivata | Funziona |
| V7b | Come V7, ma «il cane è un mammifero» è ancora congettura | «Il cane depone uova» resta congettura; avviso: sarebbe F se il legame fosse dimostrato | Funziona |
| V8 | Esplorazione su V1: «se mela ▷ rossa fosse V» | V mostrato, nulla salvato | Funziona |
| V9 | Una teoria dice «la mela è blu», un'altra «la mela non è blu»; nessuna dimostrata | Contraddizione segnalata; restano congetture; proposte come alternative | Funziona |
| V10 | «La mela è rossa e blu», senza alcuna teoria che vincoli rosso e blu | Nessuna contraddizione | Funziona |
| V11 | Si inserisce «una cosa non è rossa e blu insieme»; il sistema propone rosso ^ blu sostenuta come F; confermata. Poi V10 | Contraddizione segnalata; entrambe restano congetture | Funziona |
| V11b | Come V11, con il vincolo «una cosa non è calda e fredda insieme» e la teoria «il caffè è caldo e freddo» | Contraddizione segnalata: «calda» e «caldo» sono la stessa proprietà, collegate da una teoria grammaticale (decisione 42) | Funziona |
| V12 | «Se la mela è rossa allora è blu, e se la mela non è rossa allora è blu, e la mela non è blu» | F · falsa in ogni scenario | Funziona |
Richieste
| N. | Richiesta | Esito atteso | Stato |
|---|---|---|---|
| R1 | Di che colore è la mela? | Le teorie che aggregano proprietà a «mela», con i loro valori, e il circuito con gli incroci su «mela» | Funziona |
| R2 | Una richiesta senza teorie pertinenti | Elenco vuoto, detto chiaramente; nessun testo inventato | Funziona |
Tre teorie d'insieme
Servono a provare tutto il percorso: inserimento, mappatura, valore, ricerca con una richiesta e circuito. Nella prima versione nessuna teoria diventa V perché i dati la confermano: i dati arrivano con il livello dei dataset. Una teoria consolidata resta quindi una congettura, ed è il valore giusto finché nessun dato la sostiene.
| N. | Teorie | Esito atteso | Stato |
|---|---|---|---|
| I1 | Una teoria consolidata: «L'acqua bolle a 100 °C al livello del mare» | Mappata come M23, senza parole perse. C · manca: le sue aggregazioni. La richiesta «Che cosa bolle a 100 °C?» la trova | Funziona |
| I2 | Una pseudoscienza e la teoria che la contraddice: «L'omeopatia cura le malattie» e «L'omeopatia non cura le malattie» | Contraddizione segnalata; entrambe restano C e sono proposte come alternative. La richiesta «Che cosa cura le malattie?» le trova entrambe, con gli incroci su «cura» e «malattie» | Funziona |
| I3 | Un paradosso: «Questa frase è falsa» | N · malformata. Non cambia il valore delle altre teorie. La richiesta «Quali frasi sono false?» la trova con il suo valore | Funziona |
Teorie già presenti
Decisione 51. La prova automatica è test/presenti.py.
| N. | Situazione | Esito atteso | Stato |
|---|---|---|---|
| P1 | Esiste «La mela è rossa»; si inserisce «la mela è rossa.», poi di nuovo «La mela è rossa» | Già presente: non si salva una seconda volta, si rimanda a «La mela è rossa» | Funziona |
| P2 | Si inserisce «La mela è rossa e dolce» | Una parte c'è già: si propone di salvare solo «La mela è dolce», che l'utente può riscrivere | Funziona |
| P3 | Dopo P2, «La mela è dolce e rossa» | Già presente, con le due teorie che la contengono | Funziona |
| P4 | Esiste «Marco mangia la mela»; si inserisce «Marco mangia la mela e beve il vino» | Parte nuova: «Marco beve il vino», con il soggetto ereditato | Funziona |
| P5 | «Se la mela è rossa allora è dolce» | Teoria nuova: condizione e conseguenza non sono affermate da sole | Funziona |
| P6 | Tutti gli inserimenti precedenti | Nello storico, ognuno con data, testo scritto ed esito, anche quando non ha salvato nulla; la parte nuova registra la frase intera | Funziona |
Livello dei dataset
La teoria di partenza è «Il farmaco guarisce più della metà dei pazienti», con la popolazione «adulti ricoverati per X nel 2026» e la zona di rilevanza 0,45–0,55, salvo dove è detto altro. Gli intervalli sono al 99,9% (decisione 29). La prova automatica è test/dataset.py.
| N. | Situazione | Esito atteso | Stato |
|---|---|---|---|
| D1 | Si chiede la previsione della teoria | Proposta: unità «pazienti», parametro «quota con guarisce», verso «maggiore di 0,5»; popolazione e zona di rilevanza da completare | Funziona |
| D2 | D1 confermata senza popolazione | N · non apofantica; nessun piano si può collegare | Funziona |
| D3 | D1 completa e confermata, piano registrato; poi si prova a cambiare la zona del piano | Cambio rifiutato: il piano resta quello registrato, con la sua data | Funziona |
| D4 | Un dataset la cui scheda di provenienza lascia senza risposta la regola di ingresso, o risponde «non applicabile» alla randomizzazione senza motivo | Il dataset non entra: «non è una prova», con le due voci | Funziona |
| D5 | Il piano dice «sì» e «no»; la colonna dell'esito contiene anche «forse», e un paziente compare due volte | Dataset rifiutato, con il valore non ammesso e l'unità ripetuta; nulla viene salvato. Lo stesso file corretto entra, con 100 righe raccolte e quelle usate | Funziona |
| D6 | Ross: 10 chip difettosi su 300; teoria «più del 2% dei chip è difettoso», zona 0,015–0,025 | Coda esatta 0,0818, approssimazione normale 0,0495; intervallo esatto 0,0091–0,0821, a cavallo della zona: inconcludente, la teoria resta C senza motivo | Funziona |
| D7 | 80 guariti su 100 | Intervallo 0,6436–0,9106, tutto sopra la zona: C · sostenuta da D1, in attesa di replica | Funziona |
| D8 | Dopo D7, un secondo dataset con 75 guariti su 100, da un'altra persona, nessun paziente in comune, con il suo piano | Intervallo 0,5873–0,8746: C · sostenuta da D1 e D2. Se i due dataset hanno un paziente in comune, resta «in attesa di replica» | Funziona |
| D9 | 1000 guariti su 2000 | Intervallo 0,4630–0,5370, dentro la zona: C · contraddetta da D1 | Funziona |
| D10 | 17 guariti su 20 | Intervallo esatto da 0,4684, a cavallo della zona; quello normale da 0,587, sopra: inconcludente · dipende dal metodo | Funziona |
| D11 | Ragni (Field): ansia di 12 persone davanti alla foto di un ragno e di 12 davanti a un ragno vero, come gruppi indipendenti; teoria «un ragno vero mette più ansia della sua foto», zona da −2 a 2 | Student t(22) = 1,681, p = 0,1068; Welch con 21,39 gradi di libertà; intervalli al 99,9% a cavallo della zona: inconcludente | Funziona |
| D12 | Gli stessi numeri come dati appaiati: le stesse 12 persone, prima la foto poi il ragno | t appaiato t(11) = 2,4725, p = 0,0310: il disegno dichiarato cambia il p; al 99,9% resta inconcludente | Funziona |
| D13 | Programma di sicurezza (Ross): ore perse in 10 stabilimenti, prima e dopo; teoria «il programma riduce le ore perse», zona da −1 a 1 | t appaiato −2,266, p unilaterale 0,025; test dei segni p bilaterale 0,344; al 99,9% inconcludente | Funziona |
| D14 | Cani (Field): ballano 29 su 36 premiati con l'affetto e 20 su 34 premiati con il cibo; teoria «con l'affetto ballano più spesso», zona da −0,05 a 0,05 | Pearson p = 0,047, Yates 0,085, Fisher 0,068; al 99,9% inconcludente con Wald e con Newcombe | Funziona |
| D15 | Una 2×2 con 3 su 4 e 1 su 4 | Frequenze attese sotto 5: Wald non si applica ed esce dal multiverso, con il motivo; Pearson e Yates sono segnalati come non applicabili | Funziona |
| D16 | Una quota sostenuta per poco: 59 guariti su 80 stanno sopra la zona, ma togliendo uno solo dei «sì» (58 su 79) l'intervallo scende a cavallo | C · sostenuta da D1, fragile, in attesa di replica | Funziona |
| D17 | Lo stesso file analizzato da due piani | Al caricamento del secondo, entrambi i calcoli si rifanno al livello 0,0005 e lo dicono: due analisi sullo stesso file | Funziona |
| D18 | Un piano per una quota con 20 unità previste e la zona da 0,45 a 0,55 | Il piano si registra con un avviso: con 20 unità l'intervallo al 99,9% è largo almeno ±0,37 e non potrà mai stare dentro la zona | Funziona |
| D19 | Viagra (Field): libido di 15 persone in tre gruppi da 5, placebo, dose bassa, dose alta; teoria «la dose alta aumenta la libido rispetto al placebo», zona da −1 a 1 | Contrasto alta − placebo 2,8 con p 0,008 (varianza comune dei tre gruppi, 12 gradi di libertà); F(2,12) = 5,12, p 0,025; Welch F(2; 7,94) = 4,32, p 0,054; Yuen sulle medie troncate; al 99,9% inconcludente | Funziona |
| D20 | Sullo stesso file di D19 un secondo confronto, dose bassa − placebo, con il suo piano | Due confronti sullo stesso file: entrambi i calcoli al livello 0,0005; bassa − placebo 1,0 con p 0,28 | Funziona |
| D21 | I ragni di D11 dopo la decisione 58 | Accanto a Student e Welch c'è Yuen, con p 0,216 come nel libro; resta inconcludente | Funziona |
| D22 | Bushtucker (Field): 8 persone, 4 cibi ciascuna, tempo prima del conato; teoria «l'insetto stecco dà il conato più tardi del testicolo di canguro», zona da −1 a 1 | F(3,21) = 3,79; Greenhouse-Geisser ε 0,53, p 0,063; Huynh-Feldt p 0,048; con ε sotto 0,75 il contrasto con l'errore comune non si applica; t appaiato e test dei segni: inconcludente | Funziona |
| D23 | Compleanno e morte (Ross): 1251 persone in 12 classi dichiarate prima dei dati, attese uguali; il «sì» sono le ultime sei classi, zona da 0,45 a 0,55; poi un secondo piano con 4 classi scelte dopo aver visto i dati | Con 12 classi χ² p 0,1023, con 4 classi p 0,0020; il secondo piano è un'altra analisi dello stesso file e il livello si dimezza; quota 691 su 1251, inconcludente | Funziona |
| D24 | High School and Beyond (Raudenbush e Bryk): matematica di 7185 studenti in 160 scuole, 70 cattoliche e 90 pubbliche; teoria «nelle scuole cattoliche si va meglio in matematica che nelle pubbliche», raggruppamento per scuola, zona da −1,5 a 1,5 | Multilivello 2,80 con errore standard 0,439 e 158 gradi di libertà (come nell'output di HLM per un modello equivalente), intervallo 1,33–4,28; medie delle scuole con Welch 1,33–4,30: inconcludente. Ignorando le scuole sarebbe 2,28–3,33, effetto presente: Student, Welch e Yuen escono con il motivo «unità raggruppate» | Funziona |
| D25 | Il modello vuoto delle stesse scuole | Media generale 12,64 con errore standard 0,24; varianza tra scuole 8,61, entro le scuole 39,15, come nel libro | Funziona |
| D26 | Bushtucker di D22 con il modello multilivello | Rapporto di verosimiglianza χ²(3) = 12,69, p 0,005 come in Field, accanto a Greenhouse-Geisser 0,063: il test è informazione, l'esito resta inconcludente; la varianza tra persone stimata a zero è segnalata | Funziona |
| D27 | Lo sciroppo (T) e il riposo (A) confermati come alternative; D1 sostiene T e A non ha fatti su D1 | T: C · compatibile con D1, come l'alternativa «il riposo…», non ancora provata su D1 | Funziona |
| D28 | Una previsione e un piano per A sullo stesso file di D1, con esito contrario ad A | A: contraddetta da D1; T: sostenuta da D1, in attesa di replica; i due calcoli al livello 0,0005 | Funziona |
| D29 | Un dataset osservazionale prima e dopo, 12 persone, che sostiene la teoria «la dieta riduce il peso» | C · sostenuta da D1, in attesa di replica, se si escludono: placebo e cambiamenti nel tempo; confondenti | Funziona |
| D30 | Una replica con assegnazione casuale e due gruppi | La condizione sui confondenti e su placebo e tempo cade, perché D2 le esclude: C · sostenuta da D1 e D2 | Funziona |
| D31 | Un caricamento senza le tre risposte sì o no | Rifiutato con i problemi: valore estremo, soglia, aggregati | Funziona |
| D32 | Un fatto appena calcolato | V; il motivo sulla teoria non dice «da verificare» (decisione 69) | Funziona |
| D33 | Un secondo nodo, un altro processo con il suo nome, rifà il calcolo dal pacchetto | Stesse cifre: il fatto resta V e la verifica del nodo B resta registrata | Funziona |
| D34 | Lo stesso nodo verifica sé stesso; poi un fatto alterato nell'archivio | Accettato, stesse cifre (decisione 69); il fatto alterato dà cifre diverse: N · calcolo non riproducibile, e il motivo non vale | Funziona |
| D35 | Due gruppi di pazienti, uno con tutti i valori uguali (nessuna variabilità) | Il calcolo non fallisce: «student» non applicabile con il motivo «un gruppo ha varianza nulla»; con Welch e Yuen il fatto resta inconcludente (decisione 84) | Funziona |
| D36 | 20 pazienti: nove con infiammazione 1,2 e uno con 1,5, contro dieci col placebo | Effetto rilevante presente; togliendo la sola unità a 1,5 diventa inconcludente: fragile, trovato dal calcolo veloce (decisione 84) | Funziona |
| D37 | Lo stesso calcolo di D11 su 2.000 pazienti anziché 24 | Differenza 2,0384, effetto rilevante presente, in pochi secondi; prima della tappa 18 la sola fragilità ne avrebbe richiesti circa 200 (decisione 84) | Funziona |
Semata
Le frasi che violano un sema (decisioni 63, 64 e 65) e quelle che non lo violano. La prova automatica è test/semata.py.
| N. | Frase | Esito atteso | Stato |
|---|---|---|---|
| S1 | L'universo è nato dal nulla | F a priori: viola l'ingenerabilità | Funziona |
| S2 | Dio ha creato il mondo dal nulla | F a priori: viola l'ingenerabilità | Funziona |
| S3 | L'essere è nato | F a priori: viola l'ingenerabilità | Funziona |
| S4 | L'anima finisce nel nulla | F a priori: viola l'eternità | Funziona |
| S5 | L'essere finisce | F a priori: viola l'eternità | Funziona |
| S6 | L'essere cambia | F a priori: viola l'immutabilità («essere» è il nome, non il verbo) | Funziona |
| S7 | L'essere si muove | F a priori: viola l'immobilità | Funziona |
| S8 | L'essere è diviso | F a priori: viola l'indivisibilità | Funziona |
| S9 | L'essere non è unico | F a priori: viola l'unicità | Funziona |
| S10 | Il nulla esiste | F a priori: viola la pienezza | Funziona |
| S11 | Esiste il nulla | F a priori: viola la pienezza (il soggetto è il nulla) | Funziona |
| S12 | Nulla esiste | F a priori: viola la pienezza (nessuna cosa esiste) | Funziona |
| S13 | Nulla nasce dal nulla | Nessun sema violato, e nessun V a priori | Funziona |
| S14 | L'essere non cambia | Nessun sema violato, e nessun V a priori | Funziona |
| S15 | L'universo si espande | Nessun sema violato: l'universo è un'esistenza | Funziona |
| S16 | L'acqua cambia stato | Nessun sema violato | Funziona |
| S17 | L'acqua bolle a 100 °C al livello del mare | Nessun sema violato: si passa ai dati | Funziona |
| S18 | L'acqua è chiara e il nulla esiste | La seconda proposizione è F a priori, quindi la teoria è F | Funziona |
| S19 | Esiste qualcosa fuori dall'essere | F a priori: viola l'unicità | Funziona |
| S20 | L'anima è una sostanza separata dal corpo | F a priori: viola l'unicità | Funziona |
| S21 | Le idee esistono in un mondo separato | F a priori: viola l'unicità | Funziona |
| S22 | Esistono più universi | F a priori: viola l'unicità | Funziona |
| S23 | Dio ha creato l'universo | F a priori: viola l'ingenerabilità | Funziona |
| S24 | Dio ha creato una sedia | F a priori: viola l'ingenerabilità (un creatore fuori dal mondo) | Funziona |
| S25 | Il nulla ha generato l'universo | F a priori: viola l'ingenerabilità | Funziona |
| S26 | L'essere ha un inizio | F a priori: viola l'ingenerabilità | Funziona |
| S27 | La materia può essere distrutta | F a priori: viola l'eternità | Funziona |
| S28 | L'energia si distrugge | F a priori: viola l'eternità | Funziona |
| S29 | La bomba annienta la città | F a priori: viola l'eternità | Funziona |
| S30 | L'essere ha una fine | F a priori: viola l'eternità | Funziona |
| S31 | Il non essere è | F a priori: viola la pienezza | Funziona |
| S32 | Esiste il vuoto assoluto | F a priori: viola la pienezza | Funziona |
| S33 | L'essere è composto di parti | F a priori: viola l'indivisibilità | Funziona |
| S34 | Marco ha creato una sedia | Nessun sema violato, con l'avviso: in senso proprio creare è fare dal nulla, forse «costruire» | Funziona |
| S35 | Il fuoco distrugge la casa | Nessun sema violato, con l'avviso: si distrugge la struttura che la rende tale, non la cosa | Funziona |
| S36 | Marco ha costruito una sedia | Nessun sema violato, nessun avviso | Funziona |
| S37 | L'universo ha avuto un inizio | Nessun sema violato: l'universo è un'esistenza | Funziona |
| S38 | Dopo la morte la coscienza scompare | Nessun sema violato | Funziona |
| S39 | L'universo finirà | Nessun sema violato | Funziona |
| S40 | Tra gli atomi c'è il vuoto | Nessun sema violato: il vuoto della fisica | Funziona |
| S41 | La cellula genera altre cellule | Nessun sema violato | Funziona |
Fallacie
Le inferenze fallaci e quelle valide (decisione 66). La prova automatica è test/fallacie.py.
| N. | Frase | Esito atteso | Stato |
|---|---|---|---|
| F1 | «Se piove, la strada è bagnata» nel sistema; poi «La strada è bagnata, quindi piove» | Il legame è F a priori: affermazione del conseguente; la teoria è F | Funziona |
| F2 | «Se piove, la strada è bagnata. La strada è bagnata, quindi piove», in una frase sola | Affermazione del conseguente | Funziona |
| F3 | Con F1: «Non piove, quindi la strada non è bagnata» | Negazione dell'antecedente | Funziona |
| F4 | Con F1: «Piove, quindi la strada è bagnata» | Nessuna fallacia: modus ponens | Funziona |
| F5 | Con F1: «La strada non è bagnata, quindi non piove» | Nessuna fallacia: modus tollens | Funziona |
| F6 | «La strada è bagnata, quindi piove», senza alcun «se» nel sistema | Nessuna fallacia riconosciuta | Funziona |
| F7 | «Piove, quindi piove» | Petizione di principio | Funziona |
| F8 | «Marco dice che piove, quindi piove» | Appello all'autorità | Funziona |
| F9 | «Il medico dice che il farmaco guarisce, quindi il farmaco guarisce» | Appello all'autorità, anche se il medico è competente | Funziona |
| F10 | «Tutti dicono che piove, quindi piove» | Appello alla moltitudine | Funziona |
| F11 | «La maggioranza crede che la terra sia piatta, quindi la terra è piatta» | Appello alla moltitudine | Funziona |
| F12 | «Marco dice che piove» | Nessuna fallacia: non c'è inferenza | Funziona |
| F13 | «Dopo lo sciroppo Marco è guarito, quindi lo sciroppo guarisce» | Post hoc | Funziona |
| F14 | «Questo cigno è bianco, quindi tutti i cigni sono bianchi» | Generalizzazione indebita | Funziona |
| F15 | «Tutti i cigni sono bianchi, quindi questo cigno è bianco» | Nessuna fallacia: dal generale al caso | Funziona |
| F16 | Con F1 e F6: la teoria «Piove» | Resta C: la fallacia non tocca la conclusione | Funziona |
Identità e registro
Il wallet e il registro firmato (decisioni 67, 68 e 69). La prova automatica è test/identita.py.
| N. | Frase | Esito atteso | Stato |
|---|---|---|---|
| W1 | Primo avvio, senza wallet: si chiede di inserire una teoria | Rifiutato: serve il wallet. Le letture funzionano | Funziona |
| W2 | Creazione del wallet con la parola d'ordine e il nome «Bob» | 24 parole dell'elenco italiano, mostrate una volta; indirizzo tf1…; nel file né la chiave né le parole in chiaro | Funziona |
| W3 | Un secondo wallet sulla stessa installazione | Rifiutato: c'è già il wallet di Bob | Funziona |
| W4 | Blocca; sblocca con la parola d'ordine sbagliata, poi con quella giusta | Prima rifiutato, poi sbloccato | Funziona |
| W5 | Esci con la parola d'ordine; importa con le stesse 24 parole; poi con una parola cambiata | Stesso indirizzo; con la parola cambiata rifiutato | Funziona |
| W6 | Esci senza la parola d'ordine giusta | Rifiutato: il wallet resta | Funziona |
| W7 | Bob inserisce «Marco dice che piove» | Una voce firmata da Bob con le righe della teoria e della citata; lo storico e la teoria portano il suo indirizzo e il nome | Funziona |
| W8 | Alternative, previsione, piano, dataset con il calcolo, verifica e la cancellazione di una teoria | Una voce per ciascuna; la catena è integra | Funziona |
| W9 | Il wallet nasce in un archivio che ha già delle teorie | La prima voce le elenca come «precedenti al wallet»; la catena è integra | Funziona |
| W10 | Un'aggregazione cambiata a mano in ONTO | Segnalata: riga cambiata, con la voce che l'aveva scritta | Funziona |
| W11 | Una proposizione tolta a mano | Segnalata: riga tolta | Funziona |
| W12 | Una teoria aggiunta a mano, senza voce | Segnalata: riga senza voce | Funziona |
| W13 | Una voce del registro tolta in mezzo | Segnalata: catena interrotta | Funziona |
| W14 | L'ultima voce del registro tolta | Segnalata: la testa scritta accanto al wallet non c'è più | Funziona |
| W15 | Una voce con la firma alterata | Segnalata: firma non valida | Funziona |
| W16 | Bob esce, Anna importa il suo wallet e inserisce una teoria | La voce nuova porta l'indirizzo di Anna, le vecchie restano di Bob; la catena è integra | Funziona |
Rete
Pubblicazione, diffusione, presenza e ricezione (decisioni 70–74). La prova automatica è test/rete.py, con tre nodi sulla stessa macchina e il trasporto di prova; la prova su I2P vera si fa a mano.
| N. | Frase | Esito atteso | Stato |
|---|---|---|---|
| RT1 | Bob pubblica «Il campione 47/B contiene piombo»; ha anche un appunto non pubblicato | Voce 0 della catena pubblica di Bob, firmata; l'appunto non esce | Funziona |
| RT2 | Anna, al primo avvio, incolla l'indirizzo del nodo di Bob | Riceve la teoria con autore Bob; il suo archivio la valuta | Funziona |
| RT3 | Carla è collegata solo ad Anna | Riceve la teoria di Bob tramite Anna, con la firma di Bob | Funziona |
| RT4 | I tre nodi accesi; poi si spegne il nodo di Carla | Tutti attivi; poi Carla è «visto l'ultima volta il …»; Bob resta «c'è stato» per la sua pubblicazione | Funziona |
| RT5 | Una voce alterata in transito | Scartata, non importata né inoltrata | Funziona |
| RT6 | Arriva la voce 2 di un autore senza la voce 1 | Non importata finché manca la precedente; poi entrambe | Funziona |
| RT7 | Bob pubblica con le prove (previsione, piano, dataset) | Anna ricalcola il fatto dal dataset ricevuto e ottiene le stesse cifre | Funziona |
| RT8 | Bob pubblica una teoria che si appoggia a un suo appunto | Avviso «si appoggia a 1 teoria non pubblicata»; da Anna il valore resta C | Funziona |
| RT9 | Anna ha scritto la stessa teoria di Bob | Una teoria sola, con due autori | Funziona |
| RT10 | Carla pubblica «Il campione 47/B non contiene piombo» | Da Anna le due teorie sono in contraddizione | Funziona |
| RT11 | Bob ritratta la sua teoria | Da Anna «ritrattata dall'autore il …»; resta nei conflitti | Funziona |
| RT12 | Il controllo del registro di Anna dopo le ricezioni | Integro: le righe ricevute sono coperte dalle firme degli autori | Funziona |
| RT13 | Il saluto del nodo di Anna a un altro nodo | Porta la chiave di nodo, non l'indirizzo tf1 del wallet | Funziona |
| RT14 | Il nodo senza router I2P e senza trasporto di prova | Non parte: nessuna caduta in chiaro | Funziona |
| RT15 | Un nodo nuovo senza indirizzo incollato | Parte dai nodi di partenza scritti in TheoryFlow | Funziona |
| RT16 | Pubblicare senza wallet sbloccato | Rifiutato | Funziona |
TheoryChain
L'ordine causale tra le catene e le doppie versioni (decisioni 75 e 76). La prova automatica è test/theorychain.py.
| N. | Frase | Esito atteso | Stato |
|---|---|---|---|
| TC1 | Carla riceve la teoria di Bob, poi pubblica la sua | La voce di Carla cita quella di Bob: «Bob prima di Carla» | Funziona |
| TC2 | Bob e Carla pubblicano senza essersi visti | Contemporanee | Funziona |
| TC3 | Anna pubblica la stessa teoria di Bob dopo averla ricevuta | Due autori; Bob è il primo | Funziona |
| TC4 | Due teorie in contraddizione, una pubblicata dopo aver visto l'altra | Nei conflitti, chi è venuto prima | Funziona |
| TC5 | Bob firma due voci 5 diverse e le manda a nodi diversi | Dopo un giro entrambe ovunque, segnate «due versioni»; le due teorie contano | Funziona |
| TC6 | Bob continua da una delle due versioni | La voce 6 è accettata ovunque: la catena è un albero | Funziona |
| TC7 | Una voce con le citazioni alterate | Scartata: le citazioni sono firmate | Funziona |
| TC8 | Due nodi con rami diversi della stessa catena si incontrano | Ognuno riceve il ramo che gli manca | Funziona |
| TC9 | Il controllo del registro dopo le doppie versioni | Integro | Funziona |
TheoryCoin
Misure, conferme, incassi, fondi, pagamenti e testimoni (decisioni 77–83). La prova automatica è test/theorycoin.py.
| N. | Frase | Esito atteso | Stato |
|---|---|---|---|
| TK1 | Bob pubblica una teoria con un dataset; Carla, dopo averla ricevuta, la pubblica con un dataset suo, indipendente, con lo stesso esito | La misura di Bob è confermata e Bob può incassarla; quella di Carla è in attesa di conferma | Funziona |
| TK2 | Come TK1, ma il dataset di Carla ha unità in comune con quello di Bob | Nessuna conferma: le misure non sono indipendenti | Funziona |
| TK3 | Come TK1, ma il dataset di Carla dà «nessun effetto rilevante» | Nessuna conferma; la teoria è contesa | Funziona |
| TK4 | Bob incassa all'avvio, quando nessuno ha merito | L'incasso vale senza firme, «in attesa della fine della settimana»; l'app dice che senza testimoni i movimenti non sono protetti | Funziona |
| TK5 | La settimana si chiude con l'incasso dello studio di Bob e di una replica | Bob riceve 50 TheoryCoin (20% di 250), la replica 200 (80%) | Funziona |
| TK6 | Dopo l'incasso di una replica confermata | Chi l'ha fatta ha merito 1 e fa da testimone | Funziona |
| TK7 | Anna versa 40 TheoryCoin nel fondo della teoria | Con le firme dei testimoni: saldo di Anna −40, fondo 40 | Funziona |
| TK8 | Due repliche della teoria vengono incassate una dopo l'altra | Il fondo paga 10 alla prima e 7,5 alla seconda; restano 22,5 | Funziona |
| TK9 | Anna paga 5 TheoryCoin a Carla | Definitivo con le firme per due terzi del merito; i saldi cambiano su tutti i nodi | Funziona |
| TK10 | Anna firma due pagamenti con lo stesso numero, uno a Bob e uno a Carla, mandati a nodi diversi | I testimoni onesti ne firmano uno solo: al più uno diventa definitivo, l'altro mai | Funziona |
| TK11 | Un pagamento più grande del saldo | I testimoni non lo firmano: non diventa definitivo | Funziona |
| TK12 | Bob prova a incassare due volte la stessa conferma | La seconda volta i testimoni non firmano | Funziona |
| TK13 | Un movimento con una data lontana più di 10 minuti dall'orologio dei testimoni | Non firmato | Funziona |
| TK14 | Tre nodi, dopo un giro | Gli stessi saldi, fondi e meriti su tutti e tre | Funziona |
| TK15 | Chi riceve un pagamento e chi versa nel primo anno | L'app avvisa: prima del PHS il merito dei testimoni costa poco; nel primo anno il valore dei TheoryCoin si diluisce | Funziona |
| TK16 | Il lancio | Tutti i saldi a zero; i TheoryCoin esistenti sono la somma delle settimane chiuse | Funziona |
8. Piano di lavoro
Sei tappe fino alla prima versione, completata il 9 ottobre 2026, poi sette per il livello dei dataset. Ognuna lascia qualcosa che funziona e ha un criterio di uscita che si può verificare.
| N. | Tappa | Contenuto | Criterio di uscita |
|---|---|---|---|
| 1 | Ordine nel prototipo | Il backend parte senza chiavi esterne. Tolto il servizio di correzione remoto. Corretti il percorso del file delle correzioni e il riconoscimento del verbo essere. README con il comando di avvio. Licenze nei repository. Le frasi di prova come prova automatica | Un comando avvia il backend; la prova gira da sola e segna quali frasi passano |
| 2 | ONTO collegato | ONTO avviato come servizio. Una sola chiamata di inserimento. Teorie, proposizioni, proprietà e aggregazioni salvate in ONTO, con provenienza e data | Una teoria inserita si ritrova già mappata dopo il riavvio; il file JSON non c'è più |
| 3 | Mappatura | Forma esplosa. Operatori conservati. Negazione. Avverbi e tempi. Concetto sottinteso o ereditato. Teorie grammaticali generate | Passano le frasi M1–M20 e G1–G2 |
| 4 | Valori | Quattro valori con motivo e storia. Regola delle congetture. Vincoli logici con formula da confermare. Accordo sugli scenari. Propagazione. Contraddizioni. Alternative ed esclusione. Esplorazione | Passano le prove V1–V12 |
| 5 | App | Forma esplosa e valori nell'elenco. Schermate per alternative, contraddizioni ed esplorazione. Circuito con incroci tra teorie. Errori mostrati | Tutte le funzioni della prima versione si usano dall'app, senza toccare il backend a mano |
| 6 | Richieste e correttore | Riconoscimento di richiesta o immissione. Ricerca per proprietà. Correttore ortografico locale | Passano R1–R2; le tre teorie d'insieme danno l'esito atteso |
Livello dei dataset
La prima versione è completa. Il livello dei dataset viene subito dopo, in sette tappe; il progetto è nella pagina Il livello dei dataset.
| N. | Tappa | Contenuto | Criterio di uscita |
|---|---|---|---|
| 7 | Previsione e piano | Scheda della previsione proposta dalla mappatura e confermata dall'utente (decisione 47). Piano di prova registrato in ONTO, che non si modifica | Passano M24–M26 e D1–D3 |
| 8 | Dataset e scheda di provenienza | Dataset grezzo caricato come tabella di ONTO che non si modifica (decisione 35). Scheda di provenienza. Controlli sui dati | Passano D4–D5 |
| 9 | Prima procedura: la proporzione | Intervallo esatto al 99,9%, multiverso con Wilson e normale, fatto statistico, motivo sulla teoria, replica (decisioni 28, 29, 48 e 54) | Passano D6–D10 |
| 10a | Due gruppi, dati appaiati, tabelle 2×2 | Previsioni e piani per questi disegni; Student e Welch, t appaiato e test dei segni, Wald e Newcombe con Pearson, Yates e Fisher; applicabilità, fragilità, precisione attesa, confronti multipli (decisioni 55, 56 e 57) | Passano D11–D18 |
| 10b | Più gruppi e prove ripetute | Confronti dichiarati prima dei dati tra due gruppi o due condizioni; contrasto con la varianza comune, Welch e Yuen; Greenhouse-Geisser e Huynh-Feldt; quote su classi con il χ² di adattamento (decisione 58) | Passano D19–D23: si rifanno Viagra, Bushtucker (senza il modello multilivello) e compleanno |
| 10c | Modelli multilivello | Unità raggruppate (studenti in scuole): modello multilivello e medie dei raggruppamenti nel multiverso; i metodi che ignorano i raggruppamenti come informazione (decisione 59) | Passano D24–D26: si rifanno l'esempio classico High School and Beyond (Raudenbush e Bryk: 7185 studenti in 160 scuole, dati pubblici nel pacchetto R nlme) e il modello multilivello di Bushtucker |
| 11 | Alternative e secondo nodo | Alternative dichiarate contraddette sullo stesso dataset. Spiegazioni rivali aggiunte dal sistema secondo la scheda. Il calcolo rifatto da un altro nodo (decisioni 60, 61 e 62) | Passano D27–D34: lo stesso fatto statistico da due nodi, con le stesse cifre |
Dopo il livello dei dataset
- Semata (tappa 12, decisioni 63 e 64): passano S1–S18. Separazione, creazione e distruzione (tappa 12b, decisione 65): S19–S41. Fallacie (tappa 13, decisione 66): passano F1–F16.
- Identità e registro (tappa 14, decisioni 67, 68 e 69): passano W1–W16.
- Rete (tappa 15, decisioni 70–74): passano RT1–RT16.
- TheoryChain: l'ordine causale tra le catene e le doppie versioni (tappa 16, decisioni 75 e 76): passano TC1–TC9.
- TheoryCoin (tappa 17): simulazioni dell'economia nella pagina Economia del TheoryCoin e decisioni 77–82 (moneta e fondi, lavoro confermato, emissione, testimoni per merito, pagamento dei fondi, nascita) e protocollo (decisione 83): passano TK1–TK16.
- Calcolo locale più rapido; il calcolo in rete resta rimandato, con le condizioni pronte per quando servirà (tappa 18, decisioni 84 e 85): passano D35–D37.
Regole di lavoro
- In ogni momento c'è una sola tappa aperta.
- Una funzione è finita quando ha una prova che gira da sola e sta scritta in questa documentazione.
- Una regola di mappatura si aggiunge solo insieme alla frase di prova che la richiede.
- Una decisione nuova entra nel registro prima di entrare nel codice.
9. Il livello dei dataset
Il livello dei dataset collega le teorie alle misure: da una teoria si ricava una previsione su un parametro, la si confronta con un dataset secondo un piano registrato prima, e il risultato entra nel sistema come motivo che sostiene o contraddice la teoria. Non fa parte della prima versione (decisione 13); questa pagina ne fissa il progetto.
Il modello è stato ricavato leggendo per intero dieci volumi di statistica e di analisi matematica, elencati in fondo. Ogni regola qui sotto viene da almeno uno di essi; dove gli autori non concordano, la scelta è registrata nelle decisioni.
Il percorso
- Teoria. Una teoria già presente nel sistema, per esempio «il farmaco X abbassa la pressione».
- Previsione. La teoria tradotta in un enunciato su un parametro misurabile, con la popolazione, la misura e la zona di rilevanza.
- Piano di prova. Ogni scelta dell'analisi, registrata prima di vedere i dati.
- Dataset con scheda di provenienza. I dati grezzi e la descrizione di come sono stati raccolti.
- Controlli automatici. Il sistema verifica dati, piano e condizioni di applicabilità; se un controllo fallisce non c'è risultato.
- Fatto statistico. Il risultato del calcolo, che ogni nodo può rifare.
- Motivo sulla teoria. La teoria resta C e riceve il fatto statistico come motivo: sostenuta o contraddetta.
Dal risultato al valore
Un test statistico può sempre sbagliare: con un livello del 5% rifiuta un'ipotesi vera circa una volta su venti. La decisione 6 chiede invece una dimostrazione. Le decisioni 28 e 29 risolvono così:
- il fatto statistico («il dataset D, analizzato con il piano P, dà un intervallo al 99,9% tutto fuori dalla zona di rilevanza») è un calcolo deterministico: può essere dimostrato, e allora vale V;
- la teoria sul mondo resta C e riceve il fatto come motivo. Per via statistica nessuna teoria sul mondo diventa V o F, e quindi nessuna si propaga come dimostrata (decisione 25).
Il motivo dipende da dove cade l'intervallo rispetto alla zona di rilevanza:
| Intervallo al 99,9% | Fatto statistico | Teoria che afferma l'effetto | Teoria che lo nega |
|---|---|---|---|
| Tutto fuori dalla zona | Effetto rilevante presente | C · sostenuta da D | C · contraddetta da D |
| Tutto dentro la zona | Nessun effetto rilevante | C · contraddetta da D | C · sostenuta da D |
| A cavallo | Inconcludente | C, nessun motivo | C, nessun motivo |
- Soglia unica. Il livello è uno solo per tutto il sistema, 0,001; nessun piano può sceglierne uno più comodo. Con teorie poco plausibili in partenza un successo a 0,05 è quasi sempre falso: nell'esempio di Motulsky lo è nel 91% dei casi.
- Replica. «Sostenuta» richiede almeno due dataset indipendenti: nessuna unità in comune, raccolti da persone o nodi diversi, ciascuno con il proprio piano. Con un solo dataset il motivo è «sostenuta da D1, in attesa di replica».
- Alternative. Una teoria è sostenuta solo se le alternative dichiarate (decisione 7) sono contraddette sullo stesso dataset; altrimenti il motivo è «compatibile con D, come le alternative A e B».
- Ipotesi di identificazione. Se leggere un'associazione come effetto richiede un'ipotesi non verificabile dai dati (assegnazione casuale, tendenze parallele, uno strumento valido), il motivo la nomina: «sostenuta da D, se vale I».
- Agire non è affermare. Un risultato può giustificare una decisione pratica («continuiamo la produzione») senza dare un valore di verità.
Perché il test non basta: il ragionamento «se la teoria è falsa, questi dati sono improbabili; li abbiamo osservati; quindi la teoria è probabilmente vera» non è valido. Field lo mostra così: chi suona la chitarra probabilmente non è nei Fugazi; Picciotto è nei Fugazi; quindi probabilmente non suona la chitarra. Invece la suona.
La previsione
- È una proposizione sul parametro. «Il farmaco abbassa la pressione» è un predicato finché non si dice di chi e in che senso: in media nella popolazione P, per ogni paziente, in una quota di pazienti. «Per ogni paziente esiste una dose efficace» e «esiste una dose efficace per tutti» sono teorie diverse. Senza questa precisazione il valore è N · non apofantico.
- Ha una zona di rilevanza. L'intervallo di valori che la teoria considera «nessun effetto rilevante», dichiarato prima. Rende possibile dimostrare anche un'assenza.
- Dice esattamente ciò che afferma la teoria. «Le due dosi insieme superano il placebo» non è «ogni dose supera il placebo». Una differenza tra due gruppi si prova sulla differenza: «significativo nei maschi, non nelle femmine» non dimostra che l'effetto sia diverso.
- L'ipotesi nulla è la negazione esatta della teoria. «La pressione media non cambia tra prima e dopo» non è la negazione di «il farmaco funziona»: la pressione può scendere per l'effetto placebo o per il clima.
- Vale sul suo dominio. La stessa relazione su due popolazioni sono due teorie. Un dataset che copre solo una parte prova solo quella; non si estrapola fuori dai valori osservati.
- Si traduce nel parametro esatto. «Chi fuma ha rischio doppio a ogni età» non vuol dire metà probabilità di sopravvivere: tra 50 e 60 anni sono 0,37 contro 0,61. Media e mediana sono due teorie diverse: nei topi di Ross le medie differiscono, le mediane no, perché l'effetto sta in cinque animali.
- Un'unità futura richiede un intervallo di predizione, più largo di quello sulla media.
Il dataset e la scheda di provenienza
Il dataset si conserva grezzo: una riga per osservazione, una colonna per variabile, con tipo, scala, unità e simbolo dei mancanti. È una tabella di ONTO che non si modifica dopo l'inserimento; scheda, piano e fatto statistico sono elementi collegati a essa (decisione 35). Senza scheda di provenienza il dato non è una prova.
| Voce della scheda | Perché serve |
|---|---|
| Popolazione, elenco delle unità, modo di selezione | Il Literary Digest del 1936 intervistò proprietari di telefono e d'auto e sbagliò l'elezione |
| Unità di osservazione e struttura a gruppi | Cento chip prodotti lo stesso giorno non sono cento prove: se una giornata va tutta bene o tutta male, la stessa media nasconde una distribuzione opposta. Con misure correlate nei gruppi l'errore reale passa dal 5% al 74% |
| Regola di assegnazione del trattamento e procedura di randomizzazione | È la randomizzazione a giustificare le ipotesi del modello; senza, «è il programma a essere migliore o sono i soggetti più capaci?» resta aperto |
| Regola di ingresso nel dataset | Unità scelte perché avevano valori estremi migliorano da sole (regressione verso la media) |
| Tasso di base e denominatori | «L'80% dei pedoni investiti di notte era vestito di scuro» non dice nulla senza sapere quanti si vestono di scuro |
| Operazionalizzazione, strumento, dose, testo esatto delle domande | Una domanda in forma positiva o negativa dà risposte diverse; una misura sostitutiva è una teoria a parte, da cui il risultato dipende |
| n raccolto e n usato per ogni stima, con il motivo di ogni perdita | In un esempio di Field il software usa 123 righe su 810 senza avvisare |
| Codifica, categorie di riferimento, soglie | Il segno di un coefficiente dipende dalla categoria di riferimento; una soglia scelta dopo aver visto i dati cambia il risultato |
| Ordine di raccolta, dati censurati, regola di arresto | L'ordine permette di controllare l'indipendenza; censura e arresto entrano nel calcolo |
| Parametri presi come noti da studi precedenti | Sono ipotesi che dipendono da un'altra teoria |
| Chi misura, chi finanzia, incidenti durante la raccolta | L'esito misurato da chi conosce la condizione è un esito influenzato |
| Codice usato: funzione, pacchetto, versione, opzioni | Programmi diversi, e perfino interfacce diverse dello stesso programma, danno numeri diversi |
Il piano di prova
Il piano si registra prima dei dati e non si cambia. Deve essere completo al punto da non lasciare nessuna scelta che dipenda dai dati:
- ipotesi nulla e alternativa, numero di code, zona di rilevanza;
- forma del modello: variabili candidate, interazioni, trasformazioni (passare ai logaritmi e poi fare la media cambia il parametro);
- procedura, implementazione, versione, opzioni e seme;
- dimensione del campione, regola di arresto, potenza per l'effetto minimo rilevante;
- esito primario, confronti previsti, sottogruppi;
- regole per anomali, mancanti, esclusioni, raggruppamenti in classi;
- correzione per confronti multipli, valori iniziali delle stime iterative, tipo di intervallo.
Uno studio pilota usato per dimensionare il campione non entra nella prova. Ciò che si scopre esplorando i dati produce teorie C da provare su dati nuovi.
Controlli automatici
| Controllo | Se fallisce |
|---|---|
| Piano registrato prima dei dati, completo | Nessun risultato |
| Scelta della procedura: è una funzione del tipo di esito, dei predittori e del disegno, letti dalla scheda; l'utente non la sceglie | Procedura rifiutata |
| Condizioni di applicabilità (dimensioni minime, frequenze attese, rapporto tra varianze), controllate in ogni cella del disegno | Nessun risultato, con il motivo |
| Il parametro esiste: con code pesanti la media può non esistere | N · parametro non definito |
| Il parametro è identificato: modello non saturo, nessuna collinearità grave, stima non sul bordo, verosimiglianza non piatta | N · non identificato |
| La stima converge allo stesso valore partendo da più valori iniziali | N · stima non unica |
| La conclusione regge togliendo un'unità o un gruppo alla volta | C · fragile |
| Residui senza struttura | Modello respinto |
| Ipotesi del modello: una simulazione le viola una alla volta. Se la conclusione non cambia, l'ipotesi era di comodo; se cambia, il risultato dipende da essa | Dipendenza registrata |
| Potenza sufficiente | Un risultato non significativo non conta come «no» |
| Grafo causale dichiarato: confondenti, collisori, selezione | Il risultato non legge un effetto |
| Previsioni placebo: nessun effetto dove la teoria dice che non può esserci | Il disegno è F, non la teoria |
| Conteggio di tutte le analisi eseguite sullo stesso dataset; correzione automatica per confronti multipli | Correzione applicata |
| Coerenza dei numeri; dati «troppo perfetti» (20 004 teste su 40 000 lanci) | Segnalazione |
Se per un disegno un controllo non esiste, il sistema lo dice: un controllo mancante non è un'ipotesi rispettata. Allo stesso modo «il criterio non decide» è un esito legittimo.
Quando il metodo cambia la conclusione
Gli stessi dati, analizzati con procedure tutte legittime, possono dare conclusioni opposte. Per questo il sistema esegue anche le alternative standard alla procedura del piano (multiverso ristretto): se concordano il fatto statistico vale; se discordano è «inconcludente · dipende dal metodo».
| Dati | Procedure | Fonte |
|---|---|---|
| Viagra e libido | ANOVA p = 0,025; Welch 0,054; robusti 0,054–0,089 | Field |
| Prove ripetute | Greenhouse-Geisser 0,063; Huynh-Feldt 0,048; modello multilivello 0,005 | Field |
| 276 pazienti in 10 cliniche | Ignorando le cliniche p = 0,045; tenendone conto 0,71 | Field |
| Tabella 2×2 | Pearson 0,047; Yates 0,085; Fisher 0,068 | Field |
| Programma di sicurezza, prima e dopo | t appaiato 0,025; test dei segni 0,344 | Ross |
| Proporzione con pochi casi | Test esatto 0,082; approssimazione normale 0,0495 | Ross |
| Compleanno e data di morte, 1251 persone | 12 classi p = 0,10; 4 classi scelte dopo aver visto i dati 0,002 | Ross |
L'ultima riga mostra il raggruppamento: scegliendo le classi dopo aver visto i dati si ottiene quasi qualsiasi risultato (Giusti lo dimostra per le serie). Per questo le classi stanno nel piano, e il sistema ricalcola con raggruppamenti alternativi.
Spiegazioni alternative aggiunte dal sistema
Alcune spiegazioni rivali sono sempre possibili. Il sistema le aggiunge da solo alla teoria di alternative quando la scheda lo richiede:
- Regressione verso la media. Unità scelte per un valore estremo tornano verso la media senza alcun intervento. Gli istruttori di volo vedono peggiorare chi è stato lodato dopo un ottimo atterraggio e migliorare chi è stato criticato dopo uno pessimo, e concludono a torto che le critiche funzionano.
- Effetto placebo e cambiamenti nel tempo, quando c'è solo il confronto prima e dopo.
- Confondenti, quando il dato è osservazionale: i bambini più alti leggono meglio perché sono più grandi.
- Selezione all'ingresso, quando il dataset registra solo chi ha superato una soglia.
- Livello del dato, quando una teoria sugli individui si confronta con dati aggregati per città o per stato.
Contro l'esperimento costruito su misura
- Un dataset discrimina tra due teorie solo dove le loro previsioni divergono. Il potere discriminante si calcola prima dei dati.
- Esplorazione e conferma usano dati diversi; il sistema sa quale dataset ha suggerito l'ipotesi.
- Il disegno si fissa senza vedere gli esiti: assegnazione casuale, gruppo di controllo, cieco per chi riceve e per chi misura, misura iniziale, più stimoli per ogni condizione, gruppi bilanciati.
- Si conservano tutte le analisi e tutti i risultati negativi, non solo i migliori.
- Un campione enorme scelto per «trovare una differenza» è neutralizzato dalla zona di rilevanza.
- Se il sistema valuta previsioni espresse come probabilità, usa una regola di punteggio che premia chi dichiara ciò che crede davvero.
Il calcolo
- Ogni calcolo è deterministico dati dataset, piano, implementazione e seme: chiunque lo rifà e lo confronta (decisione 69). È questo che rende dimostrabile il fatto statistico.
- Si preferisce la procedura esatta, poi la simulazione con molte iterazioni e l'errore della simulazione dichiarato, e solo per ultima l'approssimazione asintotica. Se l'approssimazione e l'esatta discordano, vale «inconcludente».
- I numeri si ricalcolano dai dati, non si copiano: anche i manuali hanno refusi.
- Il calcolo è tutto in aritmetica decimale, compreso il modello multilivello (decisione 59): chi rifà il calcolo ottiene le stesse cifre, senza tolleranza (decisione 62); non si riportano più cifre di quelle che l'approssimazione garantisce.
Fonti
- David J. Hand, Statistica, Codice edizioni.
- Marco Bramanti, Calcolo delle probabilità e statistica. Teoria ed esercizi, Progetto Leonardo.
- Harvey Motulsky, Intuitive Biostatistics, 4ª ed., Oxford University Press, 2018.
- Scott Cunningham, Causal Inference: The Mixtape, Yale University Press, 2021.
- Paul Newbold, William Carlson, Betty Thorne, Statistica, 9ª ed. italiana, 2021.
- Andy Field, Jeremy Miles, Zoë Field, Discovering Statistics Using R, SAGE, 2012.
- Claudio Canuto, Anita Tabacco, Analisi Matematica I, 4ª ed., Springer, 2014 (e 3ª ed., 2008).
- Enrico Giusti, Esercizi e complementi di analisi matematica, vol. 1, Bollati Boringhieri, 1991.
- Sheldon M. Ross, Probabilità e statistica per l'ingegneria e le scienze, Apogeo.
10. Economia del TheoryCoin
Prima di decidere che cosa sia il TheoryCoin (tappa 17) si è simulato come si comporterebbe la sua economia in ciascuna forma possibile: chi guadagna, quanto si inventa, che cosa fa il mercato, che cosa succede con i nodi finti e con la spesa doppia. Questa pagina riporta le ipotesi, i risultati e i limiti. Le scelte prese su queste basi sono le decisioni 77, 78, 79, 80, 81 e 82.
I numeri servono a confrontare le forme tra loro alle stesse ipotesi, non a prevedere prezzi o redditi veri. Ogni scenario è stato ripetuto 30 volte con semi diversi: in tabella c'è la media e, tra parentesi, l'intervallo in cui cadono 9 ripetizioni su 10. Il codice è in simulazioni/theorycoin nel repository TheoryFlow e ridà le stesse cifre a chiunque lo rilanci.
Che cosa è già stabilito
- Si ricompensa la validazione (canale, messaggio 27): testo → proprietà → validazione → calcolo → ricompensa in una criptovaluta anonima.
- Il calcolo dei nodi validatori si paga in token (messaggi 4 e 24), convertibili in Monero.
- Niente PoW e niente PoS (messaggio 38): il merito va a chi conserva i dati, a chi valida e a chi porta dati empirici.
- Un token per una teoria (messaggio 77), in cui si può investire per farla crescere; chi lo rivendicasse per censurarla lo invaliderebbe.
- Ricompensare senza dipendere da chi finanzia una tesi (messaggio 48).
- Non ci sono blocchi (decisione 75), e due versioni della stessa voce restano entrambe (decisione 76).
Le tre forme
| Forma | Come funziona | Da dove viene |
|---|---|---|
| A moneta per il lavoro | Una sola moneta, creata a ogni lavoro verificato: studi con dataset, repliche, ricalcoli e conservazione. Chi vuole sostenere la ricerca può solo comprare TheoryCoin e tenerli. | Messaggi 4, 24, 27, 38 |
| B token per teoria | Pubblicando una teoria nasce il suo token. Chi ci crede lo compra; il prezzo sale con gli acquisti lungo una curva e scende con le vendite. All'autore va il 10% di ogni acquisto. | Messaggio 77 alla lettera |
| C moneta più fondo per teoria | La moneta di A, più un fondo per ogni teoria. Chi vuole che una questione sia studiata versa nel fondo; il fondo paga 60 € a ogni replica di quella teoria, qualunque ne sia l'esito. | Messaggi 27, 38 e 77 riletto con il 48 |
Per A e C si confrontano due regole di pagamento:
- consegnato: si paga uno studio o una replica appena arriva, dopo il ricalcolo (decisione 69);
- confermato: si paga quando una misura successiva e indipendente sulla stessa domanda dà lo stesso risultato. Non conta se la teoria risulta vera o falsa, ma che due misure concordino.
Il mondo simulato
Due anni, una settimana per passo. Le cifre sono quelle di partenza; gli scenari ne cambiano una per volta.
- Domande. Nascono 5 domande a settimana, del tipo «il campione 47/B contiene piombo?», ciascuna con una risposta vera nascosta. Per 26 settimane ricevono teorie e repliche.
- Misure. Uno studio o una replica onesti costano 50 € e danno la risposta vera 8 volte su 10. Un dataset inventato costa 10 € e dice ciò che vuole chi lo inventa. Il ricalcolo non lo scopre: rifà i conti sui dati, non controlla da dove vengono i dati.
- Falsari. Chi inventa uno studio sceglie la tesi a caso, oppure quella per cui qualcuno paga. Chi inventa una replica copia ciò che dice la maggioranza: è il modo meno rischioso di farsi confermare.
- Chi lavora. Ci sono 8 studi e 2 repliche oneste a settimana anche senza paga. Per ciascun mestiere (studio onesto o inventato, replica onesta o inventata) si entra se il reddito supera il costo e si esce se non lo copre.
- Ricalcolo e conservazione. 100 nodi onesti li fanno a costo quasi nullo. Il risultato di un ricalcolo si può copiare, perché è deterministico. Chi lo copia non lavora, ma un nodo finto costa solo 2 € a settimana. Un attaccante accende il numero di nodi finti che gli rende di più.
- Moneta (A e C).
- Emissione: si coniano al massimo 1000 TheoryCoin a settimana. Il 20% va agli studi, il 50% alle repliche e il 30% a ricalcolo e conservazione.
- Prezzo: è il denaro tenuto in TheoryCoin diviso per i TheoryCoin esistenti. Il denaro tenuto è quello di chi usa la moneta (2000 € a settimana, tenuti 4 settimane), quello di chi sostiene la ricerca (3000 € a settimana) e quello degli speculatori, che inseguono il prezzo quando sale e scappano quando scende.
- Token (B). Ogni settimana:
- chi crede alle misure compra per 3000 € i token delle teorie che le misure sostengono e vende quelle smentite;
- gli speculatori comprano per 2000 € i token in salita e vendono quelli in discesa;
- l'interesse per una teoria cala con l'età.
- Risposta giusta. Per ogni domanda vale ciò che dice la maggioranza delle misure, oneste e inventate. La misura principale è la quota di domande in cui la maggioranza dice il vero.
Le forme a confronto
Condizioni di base, emissione fissa.
| Forma | Domande con la risposta giusta | Teorie inventate | Repliche inventate | Repliche oneste per domanda | Euro pagati per replica onesta |
|---|---|---|---|---|---|
| A consegnato | 79% (73%–83%) | 20% (8%–28%) | 75% (67%–79%) | 0,81 (0,73–0,92) | 146 € (122 €–165 €) |
| A confermato | 85% (82%–87%) | 5% (2%–7%) | 33% (2%–74%) | 1,05 (0,84–1,33) | 112 € (95 €–141 €) |
| B | 79% (66%–87%) | 32% (1%–77%) | 9% (6%–12%) | 0,40 (0,33–0,45) | 251 € (223 €–288 €) |
| C consegnato | 84% (79%–88%) | 20% (11%–28%) | 87% (79%–90%) | 4,18 (3,52–5,34) | 150 € (109 €–172 €) |
| C confermato | 90% (82%–95%) | 4% (2%–11%) | 52% (0%–89%) | 5,60 (3,43–7,32) | 101 € (60 €–157 €) |
- C confermato dà più risposte giuste (90%) e più repliche oneste: 5,6 per domanda, contro circa 1 in A e 0,4 in B. I soldi di chi vuole che una questione sia studiata diventano repliche.
- Pagare il lavoro appena consegnato attira i falsari. In A e C consegnato sono inventate il 20% delle teorie e il 75–87% delle repliche, perché una replica pagata più di 10 € rende di più a chi la inventa. Con la regola «confermato» si scende al 4–5% e al 33–52%.
- B paga solo chi pubblica. Nessuno è pagato per replicare, quindi le repliche oneste sono 0,4 per domanda. Un falsario incassa in media 21 € di commissioni per una teoria che gli costa 10 €, e il 32% delle teorie è inventato.
La moneta: emissione e prezzo
Tre politiche per la quantità di TheoryCoin:
- emissione fissa: 1000 a settimana;
- emissione che si dimezza ogni 26 settimane, come Bitcoin ma più in fretta;
- moneta spesa distrutta: i TheoryCoin spesi per usare il sistema vengono distrutti, quindi la quantità cresce solo se si conia più di quanto si spende.
| Forma | Moneta | Prezzo dopo 2 anni (inizio = 100%) | Calo massimo | Teorie inventate | Risposta giusta | Repliche oneste per domanda |
|---|---|---|---|---|---|---|
| A consegnato | emissione fissa | 12% (9%–14%) | 89% (86%–91%) | 20% (8%–28%) | 79% (73%–83%) | 0,81 (0,73–0,92) |
| A consegnato | si dimezza ogni 6 mesi | 28% (21%–37%) | 73% (64%–78%) | 7% (3%–11%) | 83% (81%–87%) | 0,71 (0,65–0,79) |
| A consegnato | si distrugge quella spesa | 101% (86%–120%) | 23% (13%–29%) | 73% (69%–75%) | 66% (63%–69%) | 1,43 (1,23–1,73) |
| A consegnato | nessuna emissione | 111% (64%–188%) | 27% (16%–40%) | 3% (2%–3%) | 85% (82%–86%) | 0,40 (0,35–0,44) |
| A confermato | emissione fissa | 12% (9%–15%) | 88% (85%–90%) | 5% (2%–7%) | 85% (82%–87%) | 1,05 (0,84–1,33) |
| A confermato | si dimezza ogni 6 mesi | 30% (23%–42%) | 72% (63%–77%) | 3% (1%–4%) | 85% (83%–87%) | 0,76 (0,62–0,88) |
| A confermato | si distrugge quella spesa | 101% (86%–110%) | 27% (16%–38%) | 48% (2%–73%) | 79% (67%–88%) | 2,63 (1,57–3,93) |
| A confermato | nessuna emissione | 111% (64%–188%) | 27% (16%–40%) | 3% (2%–3%) | 85% (82%–86%) | 0,40 (0,35–0,44) |
| C consegnato | emissione fissa | 11% (9%–12%) | 90% (88%–91%) | 20% (11%–28%) | 84% (79%–88%) | 4,18 (3,52–5,34) |
| C consegnato | si dimezza ogni 6 mesi | 28% (21%–41%) | 74% (64%–79%) | 8% (5%–12%) | 86% (82%–88%) | 4,41 (3,72–4,82) |
| C consegnato | si distrugge quella spesa | 99% (85%–115%) | 26% (17%–39%) | 74% (70%–76%) | 71% (67%–74%) | 5,15 (4,61–5,58) |
| C consegnato | nessuna emissione | 108% (66%–192%) | 30% (18%–43%) | 2% (2%–3%) | 81% (79%–83%) | 0,70 (0,55–0,92) |
| C confermato | emissione fissa | 11% (9%–13%) | 89% (86%–91%) | 4% (2%–11%) | 90% (82%–95%) | 5,60 (3,43–7,32) |
| C confermato | si dimezza ogni 6 mesi | 27% (23%–32%) | 74% (69%–77%) | 3% (2%–4%) | 87% (82%–92%) | 3,93 (2,66–5,13) |
| C confermato | si distrugge quella spesa | 98% (86%–107%) | 26% (17%–35%) | 57% (32%–72%) | 82% (72%–91%) | 8,23 (4,94–11,24) |
| C confermato | nessuna emissione | 111% (72%–186%) | 29% (14%–41%) | 2% (2%–3%) | 83% (81%–86%) | 0,42 (0,37–0,49) |
- Con l'emissione fissa e una domanda che non cresce il prezzo perde circa l'89% in due anni. La moneta si diluisce: chi è pagato in TheoryCoin riceve sempre meno euro, e chi la tiene perde.
- Il dimezzamento limita la perdita al 70–73% e riduce anche i falsari, perché resta meno da prendere.
- Distruggere la moneta spesa la rende stabile, ma più soldi stabili attirano più falsari. Con un dataset inventato a 10 € le teorie inventate salgono al 48–74% e le risposte giuste scendono fino al 66%. Una moneta che vale è un premio anche per chi imbroglia.
Rischi di mercato
- Bolla: per le prime 26 settimane entrano 5000 € a settimana di denaro speculativo, e gli speculatori inseguono il prezzo il doppio. In B gli speculatori spendono 10.000 € a settimana invece di 2000.
- Crollo: dopo un anno la domanda di chi usa e di chi finanzia cala dell'80%, e così il denaro degli speculatori.
| Forma | Mercato | Risposta giusta | Prezzo finale | Calo massimo | Teorie inventate | Perdita di chi investe |
|---|---|---|---|---|---|---|
| A consegnato | normale | 79% (73%–83%) | 12% (9%–14%) | 89% (86%–91%) | 20% (8%–28%) | — |
| A consegnato | bolla speculativa | 85% (74%–90%) | 12% (7%–15%) | 98% (96%–100%) | 28% (3%–53%) | — |
| A consegnato | crollo a 1 anno | 81% (78%–84%) | 2% (2%–2%) | 98% (98%–98%) | 18% (8%–26%) | — |
| A confermato | normale | 85% (82%–87%) | 12% (9%–15%) | 88% (85%–90%) | 5% (2%–7%) | — |
| A confermato | bolla speculativa | 89% (81%–93%) | 184% (8%–1100%) | 98% (96%–100%) | 19% (0%–59%) | — |
| A confermato | crollo a 1 anno | 85% (82%–87%) | 2% (2%–3%) | 98% (97%–98%) | 4% (2%–7%) | — |
| B | normale | 79% (66%–87%) | — | — | 32% (1%–77%) | 10% (10%–10%) |
| B | bolla speculativa | 84% (67%–93%) | — | — | 30% (1%–83%) | 10% (10%–10%) |
| B | crollo a 1 anno | 82% (72%–86%) | — | — | 13% (1%–59%) | 10% (10%–10%) |
| C consegnato | normale | 84% (79%–88%) | 11% (9%–12%) | 90% (88%–91%) | 20% (11%–28%) | — |
| C consegnato | bolla speculativa | 83% (70%–91%) | 110% (8%–115%) | 98% (95%–100%) | 36% (7%–83%) | — |
| C consegnato | crollo a 1 anno | 84% (79%–87%) | 2% (2%–2%) | 98% (97%–98%) | 18% (11%–24%) | — |
| C confermato | normale | 90% (82%–95%) | 11% (9%–13%) | 89% (86%–91%) | 4% (2%–11%) | — |
| C confermato | bolla speculativa | 89% (81%–94%) | 18% (8%–21%) | 98% (94%–100%) | 14% (1%–41%) | — |
| C confermato | crollo a 1 anno | 88% (83%–91%) | 2% (2%–2%) | 98% (98%–98%) | 4% (1%–10%) | — |
Nel caso della forma B, alle condizioni di base:
| Misura (forma B, condizioni di base) | Valore |
|---|---|
| Euro investiti in due anni | 518.000 € (518.000 €–518.000 €) |
| Perdita complessiva di chi investe (le commissioni) | 10% (10%–10%) |
| … di cui su teorie poi smentite | 0% (0%–1%) |
| Guadagno o perdita di chi segue le misure | -10% (-10%–-9%) |
| Guadagno o perdita degli speculatori | -11% (-11%–-10%) |
| Teorie il cui token ha raccolto meno di 50 € | 23% (13%–35%) |
| Commissioni per teoria inventata (costo 10 €) | 21 € (10 €–37 €) |
| Commissioni per teoria onesta (costo 50 €) | 39 € (25 €–45 €) |
- La bolla attira i falsari. Mentre il prezzo sale ogni lavoro vale di più, e inventare rende. Anche con «confermato» le teorie inventate passano dal 4–5% al 14–19%. Poi il prezzo perde il 98% dal massimo.
- Il crollo muove il prezzo e quasi non tocca la conoscenza. Il prezzo perde il 98%, ma in C confermato le risposte giuste restano all'88% e le teorie inventate al 4%, perché i fondi già versati e chi lavora anche senza paga continuano.
- In B chi investe perde, tutti insieme, il 10% delle commissioni. Il resto passa da chi entra tardi a chi entra presto. Chi segue le misure perde il 9,5%, gli speculatori l'11%.
- In B quasi un token su quattro (23%) raccoglie meno di 50 €. La maggior parte dei mercati resta vuota, e una teoria che nessuno compra non dà nulla a chi l'ha scritta.
Quanto costa inventare un dataset
L'articolo 28 assegna al protocollo PHS proprio questo compito: rendere costosa la falsificazione. Qui il costo di un dataset inventato passa da 10 € a 30 € e a 60 €, cioè più di uno studio onesto.
| Forma | Costo di un dataset inventato | Teorie inventate | Repliche inventate | Risposta giusta |
|---|---|---|---|---|
| A consegnato | 10 € | 20% (8%–28%) | 75% (67%–79%) | 79% (73%–83%) |
| A consegnato | 30 € | 3% (2%–4%) | 44% (17%–54%) | 85% (82%–86%) |
| A consegnato | 60 € | 2% (1%–3%) | 5% (2%–7%) | 87% (84%–89%) |
| A confermato | 10 € | 5% (2%–7%) | 33% (2%–74%) | 85% (82%–87%) |
| A confermato | 30 € | 2% (1%–3%) | 5% (2%–6%) | 86% (84%–88%) |
| A confermato | 60 € | 2% (1%–3%) | 4% (2%–5%) | 87% (84%–89%) |
| B | 10 € | 32% (1%–77%) | 9% (6%–12%) | 79% (66%–87%) |
| B | 30 € | 2% (1%–2%) | 9% (6%–12%) | 85% (84%–87%) |
| B | 60 € | 2% (1%–2%) | 9% (6%–12%) | 86% (84%–88%) |
| C consegnato | 10 € | 20% (11%–28%) | 87% (79%–90%) | 84% (79%–88%) |
| C consegnato | 30 € | 3% (2%–3%) | 62% (50%–68%) | 87% (84%–90%) |
| C consegnato | 60 € | 2% (1%–3%) | 2% (0%–3%) | 96% (94%–97%) |
| C confermato | 10 € | 4% (2%–11%) | 52% (0%–89%) | 90% (82%–95%) |
| C confermato | 30 € | 2% (2%–3%) | 18% (0%–70%) | 92% (85%–95%) |
| C confermato | 60 € | 2% (1%–3%) | 1% (0%–1%) | 94% (93%–96%) |
- È il parametro che conta di più. Con un dataset inventato a 60 €, cioè più di uno studio onesto, le teorie inventate scendono al 2% in tutte le forme e le repliche inventate quasi a zero. C arriva al 95–96% di risposte giuste.
- A 30 € le teorie inventate quasi spariscono (2–3%). Con «consegnato» però restano molte repliche inventate (44–62%), perché una replica è pagata più di 30 €; con «confermato» scendono al 5–18%.
- Conseguenza: ogni ricompensa per una misura deve restare sotto il costo di inventarla. È il ruolo che l'articolo 28 dà al protocollo PHS.
Un finanziatore di parte
Su una domanda ogni dieci qualcuno vuole il «no» e spende 10.000 € a settimana:
- in A può solo comprare moneta;
- in B compra i token delle teorie che dicono «no»;
- in C versa nei fondi delle teorie che dicono «no».
| Forma | Domande contese, senza finanziatore | Domande contese, con 10.000 €/settimana per il «no» | Tutte le domande, con il finanziatore |
|---|---|---|---|
| A consegnato | 80% (70%–86%) | 70% (63%–76%) | 72% (68%–76%) |
| A confermato | 86% (74%–94%) | 81% (62%–91%) | 82% (72%–89%) |
| B | 80% (69%–91%) | 78% (59%–95%) | 82% (67%–94%) |
| C consegnato | 85% (78%–91%) | 93% (88%–98%) | 85% (79%–88%) |
| C confermato | 90% (82%–96%) | 96% (91%–100%) | 93% (87%–97%) |
- In C i soldi di chi vuole il «no» pagano repliche, e le repliche dicono il vero. Sulle domande contese le risposte giuste salgono dal 90% al 96% con «confermato» e dall'85% al 92% con «consegnato». È ciò che chiede il messaggio 48: chi finanzia non sceglie l'esito.
- In B gli stessi soldi vanno agli autori del «no», e i falsari inventano «no». Le teorie inventate salgono al 42%, le risposte giuste sulle domande contese scendono dall'80% al 78% e metà dei mercati resta vuota.
- In A il finanziatore può solo comprare moneta. Il prezzo sale per tutti, e con lui i falsari ovunque: con «consegnato» le teorie inventate arrivano al 49% e le risposte giuste scendono al 72%.
Nodi finti
Il lavoro che si può copiare (ricalcolo e conservazione) è il punto debole contro chi accende molti nodi. Si confrontano tre casi:
- nessuna difesa, con un nodo finto che costa 2 € a settimana;
- nessuna difesa, con un nodo finto da 10 €;
- la difesa «storia»: si paga ricalcolo e conservazione solo a chi ha fatto una replica nelle ultime 26 settimane.
| Forma | Ricalcolo e conservazione pagati a | Quota presa da nodi finti o falsari | Risposta giusta |
|---|---|---|---|
| A consegnato | nessuna difesa, nodo a 2 € | 13% (12%–15%) | 79% (73%–83%) |
| A consegnato | nessuna difesa, nodo a 10 € | 0% (0%–0%) | 79% (73%–83%) |
| A consegnato | solo chi ha una replica recente | 33% (23%–41%) | 80% (75%–84%) |
| A confermato | nessuna difesa, nodo a 2 € | 14% (12%–17%) | 85% (82%–87%) |
| A confermato | nessuna difesa, nodo a 10 € | 0% (0%–0%) | 85% (82%–87%) |
| A confermato | solo chi ha una replica recente | 27% (1%–39%) | 83% (80%–88%) |
| C consegnato | nessuna difesa, nodo a 2 € | 14% (12%–16%) | 84% (79%–88%) |
| C consegnato | nessuna difesa, nodo a 10 € | 0% (0%–0%) | 84% (79%–88%) |
| C consegnato | solo chi ha una replica recente | 28% (16%–38%) | 84% (80%–87%) |
| C confermato | nessuna difesa, nodo a 2 € | 14% (12%–17%) | 90% (82%–95%) |
| C confermato | nessuna difesa, nodo a 10 € | 0% (0%–0%) | 90% (82%–95%) |
| C confermato | solo chi ha una replica recente | 26% (5%–35%) | 87% (83%–92%) |
- Senza difesa e con nodi finti a 2 € un attaccante prende in media il 14% di ciò che si paga per ricalcolo e conservazione; con la moneta stabile, il 42%. La conoscenza non cambia, ma sono soldi tolti a chi lavora.
- La difesa «storia» non funziona se una replica inventata costa poco. Sposta i soldi ai falsari di repliche (25–34%) e fa salire le repliche inventate: in C confermato dal 52% all'80%.
- Con un nodo finto da 10 € l'attacco non rende più. Imporre un costo a ogni nodo, però, è una prova di lavoro o di possesso, che il messaggio 38 esclude. La strada più semplice è non pagare per nodo il lavoro che si può copiare, o pagarlo poco.
Per la forma scelta: moneta e costo dei dati inventati
Dopo le decisioni 77 e 78 (forma C, lavoro confermato) si sono incrociate cinque politiche della moneta con due costi del dataset inventato: 10 €, come oggi, e 60 €, come con un controllo tipo PHS. La quinta politica, «dimezza e distrugge», mette insieme le due precedenti; «nessuna emissione» paga solo con i fondi versati.
| Moneta | Dato inventato | Risposta giusta | Teorie inventate | Repliche inventate | Repliche oneste per domanda | Prezzo finale | Ai nodi finti |
|---|---|---|---|---|---|---|---|
| emissione fissa | 10 € | 90% (82%–95%) | 4% (2%–11%) | 52% (0%–89%) | 5,60 (3,43–7,32) | 11% (9%–13%) | 14% (12%–17%) |
| emissione fissa | 60 € | 94% (93%–96%) | 2% (1%–3%) | 1% (0%–1%) | 7,04 (5,79–8,01) | 11% (9%–16%) | 14% (12%–17%) |
| si dimezza ogni 6 mesi | 10 € | 87% (82%–92%) | 3% (2%–4%) | 56% (1%–90%) | 3,93 (2,66–5,13) | 27% (23%–32%) | 15% (13%–17%) |
| si dimezza ogni 6 mesi | 60 € | 91% (88%–93%) | 3% (2%–3%) | 1% (0%–1%) | 4,55 (2,94–5,86) | 29% (21%–38%) | 15% (14%–17%) |
| si distrugge quella spesa | 10 € | 82% (72%–91%) | 57% (32%–72%) | 49% (0%–84%) | 8,23 (4,94–11,24) | 98% (86%–107%) | 42% (41%–44%) |
| si distrugge quella spesa | 60 € | 97% (95%–98%) | 2% (1%–3%) | 1% (0%–1%) | 12,76 (12,03–13,26) | 98% (86%–107%) | 43% (41%–45%) |
| si dimezza e si distrugge quella spesa | 10 € | 85% (72%–93%) | 40% (5%–61%) | 45% (0%–87%) | 8,04 (4,81–10,90) | 797% (556%–997%) | 29% (27%–32%) |
| si dimezza e si distrugge quella spesa | 60 € | 96% (95%–97%) | 3% (2%–4%) | 1% (0%–1%) | 11,38 (10,68–11,94) | 839% (614%–1041%) | 29% (27%–32%) |
| nessuna emissione, solo fondi | 10 € | 83% (81%–86%) | 2% (2%–3%) | 55% (7%–99%) | 0,42 (0,37–0,49) | 111% (72%–186%) | 0% (0%–0%) |
| nessuna emissione, solo fondi | 60 € | 84% (81%–86%) | 2% (1%–3%) | 9% (5%–11%) | 0,41 (0,37–0,46) | 106% (63%–186%) | 0% (0%–0%) |
- Senza emissione il lavoro onesto non si regge. Una replica onesta è confermata circa 7 volte su 10, quindi dal fondo incassa in media circa 41 €, meno dei suoi 50 € di costo. Le repliche oneste restano 0,4 per domanda, e con dati inventati a 10 € metà delle repliche pagate è inventata. L'emissione serve a sostenere chi misura davvero.
- Con dati inventati a buon mercato vince l'emissione che cala o resta fissa. Le teorie inventate restano al 3–4% e le risposte giuste all'87–90%, ma il prezzo perde il 73–89%.
- Una moneta stabile o in salita (si distrugge la spesa, con o senza dimezzamento) con dati inventati a buon mercato fa salire le teorie inventate al 40–57%.
- Con dati inventati cari la moneta stabile è la migliore: 96–97% di risposte giuste, 11–13 repliche oneste per domanda, prezzo stabile. Se si dimezza e si distrugge la spesa, il prezzo cresce di circa otto volte in due anni: una moneta che si rivaluta così invita a tenerla invece di usarla, un rischio che il modello non misura.
Quanta moneta creare: tutte le politiche
Per la forma scelta (C, lavoro confermato) si sono provate 26 politiche della moneta:
- Quattro ambienti per il dataset inventato: sempre a 10 €; PHS dopo un anno (da 10 € a 60 €); PHS in ritardo, dopo 18 mesi; sempre a 60 €.
- Tre mercati: normale, bolla, crollo.
- Tre livelli di spesa di chi usa il sistema: 500, 2000 e 8000 € a settimana. È la cifra più incerta.
- In tutto: 28.080 corse.
Le politiche «condizionate» cambiano regola solo quando arriva il PHS; in un ambiente senza PHS non cambiano mai.
Il criterio di scelta, fissato prima dei risultati:
- Si scartano due tipi di politiche, nel mercato normale con il PHS dopo un anno:
- quelle che fanno perdere a chi versa nei fondi più di metà del valore in un anno;
- quelle che in due anni fanno salire il prezzo più di tre volte, perché una moneta così si tiene invece di usarla.
- Tra le rimaste vince quella con più risposte giuste nel caso peggiore.
- A parità (entro un punto) vince quella con la media più alta.
All'inizio il criterio non considerava i livelli di spesa. Il primo vincitore, «500 a settimana, si distrugge un quarto della spesa», con una spesa quattro volte più alta e dati inventati a 10 € portava le teorie inventate al 69%. Il criterio è stato quindi esteso: punto 1 a ogni livello di spesa, punto 2 anche sui livelli di spesa.
| Politica | Ammessa | Fondi dopo un anno (caso peggiore) | Prezzo dopo due anni (caso peggiore) | Risposta giusta, caso peggiore | Risposta giusta, media | Teorie inventate nel 2° anno, caso peggiore |
|---|---|---|---|---|---|---|
| 250 a settimana per sempre | sì | 53% | 39% | 85% | 90% | 3% |
| 250 a settimana; quando arriva il PHS, quantità costante | sì | 53% | 56% | 85% | 91% | 3% |
| nessun TheoryCoin: né emissione né fondi | sì | 100% | 142% | 85% | 85% | 3% |
| 250 a settimana; dopo un anno quantità costante | sì | 53% | 56% | 84% | 91% | 37% |
| 100 a settimana; quando arriva il PHS, quantità costante | sì | 72% | 81% | 84% | 90% | 3% |
| 100 a settimana per sempre | sì | 72% | 62% | 84% | 88% | 3% |
| il 10% della moneta esistente all'anno | sì | 91% | 85% | 83% | 86% | 3% |
| nessuna emissione, solo fondi | sì | 97% | 123% | 82% | 83% | 3% |
| si conia quanto si distrugge: quantità costante | sì | 97% | 111% | 82% | 91% | 86% |
| 500 a settimana, si distrugge metà della spesa | sì | 51% | 248% | 82% | 91% | 81% |
| si dimezza ogni anno | no | 26% | 22% | 88% | 90% | 7% |
| 1000 a settimana per sempre | no | 19% | 13% | 87% | 91% | 20% |
| 500 a settimana per sempre | no | 36% | 24% | 87% | 90% | 13% |
| 500 a settimana; quando arriva il PHS, quantità costante | no | 36% | 40% | 87% | 92% | 13% |
| si dimezza ogni 6 mesi | no | 32% | 33% | 87% | 90% | 3% |
| si dimezza ogni 6 mesi; da un anno si distrugge anche la spesa | no | 32% | 2666% | 87% | 91% | 25% |
| si dimezza ogni 6 mesi e si distrugge la spesa | no | 70% | 2848% | 85% | 92% | 83% |
| 1000 a settimana; da un anno si distrugge la spesa | no | 19% | 250% | 84% | 91% | 64% |
| 500 a settimana, si distrugge un quarto della spesa | no | 40% | 125% | 84% | 91% | 69% |
| 1000 a settimana, si distrugge metà della spesa | no | 29% | 127% | 83% | 91% | 80% |
| 250 a settimana, si distrugge la spesa | no | 118% | 987% | 83% | 91% | 82% |
| 1000 a settimana, si distrugge la spesa | no | 38% | 245% | 82% | 91% | 84% |
| si conia quanto si versa nei fondi | no | 0% | 0% | 82% | 90% | 82% |
| 1000 a settimana, si distruggono tre quarti della spesa | no | 35% | 187% | 81% | 91% | 88% |
| 500 a settimana, si distruggono tre quarti della spesa | no | 58% | 371% | 81% | 91% | 84% |
| 1000 a settimana, si distrugge un quarto della spesa | no | 23% | 62% | 80% | 90% | 76% |
La politica che vince, nel mercato normale:
| Quando inventare diventa caro | Spesa d'uso a settimana | Risposta giusta | Teorie inventate nel 2° anno | Repliche oneste per domanda | Fondi dopo un anno | Prezzo nel 2° anno |
|---|---|---|---|---|---|---|
| dataset inventato sempre a 10 € | 500 € | 86% (81%–90%) | 2% (1%–4%) | 2,64 (1,42–4,32) | 55% (33%–67%) | 65% (48%–78%) |
| dataset inventato sempre a 10 € | 2000 € | 88% (82%–93%) | 2% (1%–4%) | 3,50 (2,18–5,59) | 53% (41%–70%) | 68% (54%–90%) |
| dataset inventato sempre a 10 € | 8000 € | 90% (84%–95%) | 3% (2%–4%) | 5,44 (3,29–7,50) | 57% (49%–66%) | 71% (58%–88%) |
| PHS dopo un anno: 10 €, poi 60 € | 500 € | 90% (81%–93%) | 2% (1%–3%) | 4,06 (2,01–5,77) | 55% (33%–67%) | 97% (72%–128%) |
| PHS dopo un anno: 10 €, poi 60 € | 2000 € | 93% (87%–96%) | 2% (1%–3%) | 7,66 (4,43–9,75) | 53% (41%–70%) | 98% (80%–123%) |
| PHS dopo un anno: 10 €, poi 60 € | 8000 € | 96% (92%–98%) | 1% (0%–1%) | 14,07 (9,01–16,19) | 57% (49%–66%) | 98% (89%–107%) |
| PHS in ritardo, dopo 18 mesi | 500 € | 87% (81%–92%) | 2% (1%–4%) | 2,84 (1,53–4,47) | 55% (33%–67%) | 81% (60%–104%) |
| PHS in ritardo, dopo 18 mesi | 2000 € | 89% (82%–95%) | 2% (1%–3%) | 4,58 (2,17–7,32) | 53% (41%–70%) | 82% (62%–106%) |
| PHS in ritardo, dopo 18 mesi | 8000 € | 91% (84%–97%) | 1% (1%–2%) | 7,52 (3,33–11,78) | 57% (49%–66%) | 83% (71%–98%) |
| dataset inventato sempre a 60 € | 500 € | 95% (93%–96%) | 2% (1%–3%) | 7,23 (6,38–7,74) | 107% (69%–194%) | 99% (58%–155%) |
| dataset inventato sempre a 60 € | 2000 € | 97% (96%–98%) | 2% (1%–3%) | 12,69 (12,12–13,10) | 108% (77%–157%) | 103% (69%–156%) |
| dataset inventato sempre a 60 € | 8000 € | 99% (98%–99%) | 1% (0%–1%) | 21,23 (20,42–21,78) | 114% (93%–139%) | 97% (83%–111%) |
- Con la distruzione della spesa le ricompense in euro crescono con l'uso. Finché inventare costa poco, ricompense grandi pagano i falsari: con una spesa di 8000 € a settimana le teorie inventate del secondo anno arrivano al 69–88%. Per questo cadono tutte le politiche che distruggono la spesa fin dall'inizio.
- Le emissioni grandi, fisse o che calano, reggono ai falsari ma sciolgono i fondi, che perdono il 64–81% in un anno.
- La politica vincente separa i due problemi:
- Prima del PHS: 250 TheoryCoin a settimana. Le ricompense restano piccole a ogni livello di spesa: 86–90% di risposte giuste e teorie inventate al 2–3%. Il prezzo cala, e i fondi perdono il 43–47% in un anno: è il costo di non dare premi grandi finché inventare costa poco.
- Dopo il PHS: si conia ogni settimana quanto si è distrutto, e la quantità di moneta resta costante. Il prezzo si ferma (98% nel secondo anno), le risposte giuste salgono al 90–96% e le repliche oneste fino a 14 per domanda.
- Se il PHS arriva in ritardo la prima fase dura di più: 87–91% di risposte giuste, teorie inventate sotto il 3%.
- Il passaggio non può avvenire a una data fissa. Con il passaggio comunque dopo un anno, se il PHS non c'è le teorie inventate salgono al 37%.
- Senza nessun premio (né emissione né fondi) le risposte giuste restano all'84,5%. La politica vincente aggiunge circa un punto nel caso peggiore, circa sette in media e fino a dodici quando c'è il PHS.
Moneta stabile e dati inventati cari
Si mettono insieme la moneta spesa distrutta e un dataset inventato da 60 €.
| Forma | Risposta giusta | Teorie inventate | Repliche inventate | Prezzo finale | Repliche oneste per domanda |
|---|---|---|---|---|---|
| A consegnato | 93% (90%–94%) | 2% (1%–3%) | 2% (1%–3%) | 100% (91%–116%) | 3,79 (3,61–4,05) |
| A confermato | 93% (91%–94%) | 2% (2%–3%) | 1% (1%–1%) | 99% (88%–111%) | 3,81 (3,57–4,00) |
| C consegnato | 97% (96%–98%) | 2% (1%–3%) | 2% (0%–3%) | 100% (83%–117%) | 13,32 (13,06–13,66) |
| C confermato | 97% (95%–98%) | 2% (1%–3%) | 1% (0%–1%) | 98% (86%–107%) | 12,76 (12,03–13,26) |
Insieme danno i risultati migliori:
- risposte giuste al 93% in A e al 97% in C;
- teorie inventate al 2%;
- prezzo stabile;
- in C, 13 repliche oneste per domanda.
La spesa doppia
Con la decisione 76 due versioni della stessa voce restano entrambe. Per una moneta significa che Bob può firmare due voci 5: in una paga Anna, nell'altra Carla, con gli stessi TheoryCoin. Se entrambe restano valide, la moneta non vale nulla. Serve quindi una regola, e questa simulazione dice quanto deve aspettare chi riceve un pagamento.
La simulazione:
- Il nodo: si comporta come
tf-rete, con un giro ogni 60 secondi, 8 nodi chiamati per giro, scambio di ciò che manca in entrambi i versi e ritardi da I2P (mediana di 2 secondi). - L'attacco: Bob manda una versione solo al nodo di Anna e l'altra solo a quello di Carla, nello stesso istante.
- Quando Bob vince: ciascuna aspetta un certo tempo e accetta se nel frattempo non ha visto l'altra versione; Bob vince se accettano tutte e due.
- Le ripetizioni: 300 per caso; 60 per la rete da 1000 nodi.
| Caso | 0 s | 15 s | 30 s | 60 s | 120 s | 180 s | 300 s | 600 s |
|---|---|---|---|---|---|---|---|---|
| base | 100% | 94% | 74% | 5% | 0% | 0% | 0% | 0% |
| rete piccola (50 nodi) | 100% | 87% | 51% | 0% | 0% | 0% | 0% | 0% |
| rete grande (1000 nodi) | 100% | 98% | 88% | 15% | 0% | 0% | 0% | 0% |
| giro ogni 10 s | 100% | 11% | 0% | 0% | 0% | 0% | 0% | 0% |
| solo il 20% dei nodi acceso | 100% | 97% | 91% | 70% | 14% | 1% | 0% | 0% |
| 30% dei nodi di Bob | 100% | 96% | 79% | 13% | 0% | 0% | 0% | 0% |
| Carla isolata dai nodi di Bob | 100% | 99% | 92% | 50% | 0% | 0% | 0% | 0% |
| chi riceve chiede a 8 nodi | 92% | 61% | 17% | 0% | 0% | 0% | 0% | 0% |
| 30% di Bob, chiede a 8 nodi | 95% | 61% | 18% | 0% | 0% | 0% | 0% | 0% |
- Senza attesa Bob vince sempre. Con il giro di 60 secondi la seconda versione raggiunge chi riceve entro un paio di minuti.
- Aspettando 2 minuti Bob non vince più quando i nodi sono accesi, anche se il 30% dei nodi è suo o se Carla, quando chiama, trova solo nodi di Bob.
- Il caso peggiore è una rete poco accesa. Con solo il 20% dei nodi acceso servono 5 minuti: a 2 minuti Bob vince ancora nel 14% dei casi, a 3 minuti nell'1%.
- Si può accorciare l'attesa. Chiedendo a 8 nodi prima di accettare basta un minuto; con un giro ogni 10 secondi bastano 30 secondi.
- Aspettare serve solo se, scoperta la doppia, si sa quale pagamento vale. Con la decisione 76 com'è oggi restano validi entrambi. La regola è nella sezione «Quale pagamento vale» (decisione 80).
Quale pagamento vale
La sezione precedente dice quanto aspettare quando Bob manda le due versioni nello stesso istante. C'è un attacco peggiore: Bob paga Anna, aspetta che lei accetti e consegni, e solo un'ora dopo rilascia la seconda versione, che paga Carla. Le regole provate per decidere quale dei due pagamenti vale:
- R0, valgono entrambi: la decisione 76 com'è oggi. Nessuno perde, ma Bob ha creato moneta dal nulla, a spese di tutti.
- R1, vale quello che la maggioranza dei nodi ha visto per primo.
- R2, sono nulli entrambi.
- R3, vale quello con l'impronta minore. Bob, provando impronte diverse, sceglie quale vince.
- R5, vale quello citato da altri autori senza conoscere l'altro; se lo sono entrambi, sono nulli (decisione 75). Le citazioni però le dichiara chi le scrive: i nodi di Bob possono citare la seconda versione dicendo di non conoscere la prima.
- R6, testimoni per merito.
- Quando vale un pagamento: quando lo firmano testimoni che insieme hanno due terzi del merito.
- Il merito: sono le repliche confermate degli ultimi sei mesi, che ognuno calcola dai dati pubblici. È il merito dei nodi validatori del messaggio 38.
- Il vincolo: un testimone onesto firma una sola versione per voce, quindi due versioni non possono arrivare entrambe a due terzi.
La diffusione è quella della sezione precedente, con 120 nodi e 60 prove per caso. Quota di chi riceve onestamente che accetta un pagamento poi non valido (nell'attacco ritardato 50% significa che Anna perde sempre: Carla vede subito l'altro pagamento e lo rifiuta):
| Attacco (chi riceve aspetta 2 minuti) | R0 entrambi | R1 visto per primo | R2 nulli | R3 impronta | R5 citazioni | R6 testimoni |
|---|---|---|---|---|---|---|
| simultaneo | 0% | 0% | 0% | 0% | 0% | 0% |
| simultaneo, 30% dei nodi di Bob | 0% | 0% | 0% | 0% | 0% | 0% |
| ritardato di un'ora | 0% | 0% | 50% | 50% | 0% | 0% |
| ritardato, 30% dei nodi di Bob | 0% | 0% | 50% | 50% | 50% | 0% |
| ritardato, 30% dei nodi e 20% del merito a Bob | 0% | 0% | 50% | 50% | 50% | 0% |
| ritardato, 30% dei nodi e 30% del merito a Bob | 0% | 0% | 50% | 50% | 50% | 0% |
| ritardato, 30% dei nodi e 40% del merito a Bob | 0% | 0% | 50% | 50% | 50% | 0% |
| simultaneo, 30% dei nodi e 40% del merito a Bob | 0% | 0% | 0% | 0% | 0% | 7% |
| ritardato, 60% dei nodi di Bob | 0% | 50% | 50% | 50% | 50% | 0% |
| ritardato, 60% dei nodi e 70% del merito a Bob | 0% | 50% | 50% | 50% | 50% | 15% |
Quota di nodi che, dieci minuti dopo, danno lo stesso verdetto:
| Attacco | R0 entrambi | R1 visto per primo | R2 nulli | R3 impronta | R5 citazioni | R6 testimoni |
|---|---|---|---|---|---|---|
| simultaneo | 100% | 68% | 100% | 100% | 100% | 100% |
| simultaneo, 30% dei nodi di Bob | 100% | 67% | 100% | 100% | 100% | 100% |
| ritardato di un'ora | 100% | 100% | 100% | 100% | 100% | 100% |
| ritardato, 30% dei nodi di Bob | 100% | 71% | 100% | 100% | 100% | 100% |
| ritardato, 30% dei nodi e 20% del merito a Bob | 100% | 71% | 100% | 100% | 100% | 100% |
| ritardato, 30% dei nodi e 30% del merito a Bob | 100% | 71% | 100% | 100% | 100% | 100% |
| ritardato, 30% dei nodi e 40% del merito a Bob | 100% | 71% | 100% | 100% | 100% | 100% |
| simultaneo, 30% dei nodi e 40% del merito a Bob | 100% | 68% | 100% | 100% | 100% | 88% |
| ritardato, 60% dei nodi di Bob | 100% | 58% | 100% | 100% | 100% | 100% |
| ritardato, 60% dei nodi e 70% del merito a Bob | 100% | 58% | 100% | 100% | 100% | 82% |
- L'attacco simultaneo si ferma aspettando due minuti, con qualunque regola. L'eccezione è R1, con cui un terzo dei nodi resta in disaccordo.
- Contro l'attacco ritardato:
- con R2 e R3 Anna perde sempre;
- R5 regge solo finché Bob non ha nodi suoi;
- R1 regge finché Bob ha meno della metà dei nodi, e un nodo costa pochi euro a settimana.
- R6 è l'unica che regge anche con il 60% dei nodi e il 40% del merito a Bob. Cede in parte con l'attacco simultaneo quando Bob ha più di un terzo del merito, e con l'attacco ritardato quando ne ha circa due terzi. Il verdetto arriva in circa 100 secondi (2 minuti nel 90% dei casi).
- Quanto costa il merito a Bob. Con i numeri della decisione 79 si fanno 800–1600 repliche ogni sei mesi.
- Prima del PHS: un terzo del merito richiede 400–800 repliche inventate, cioè 4.000–8.000 € per sei mesi, ripagati dai premi stessi.
- Con il PHS: servono 470–1400 repliche, cioè 28.000–84.000 € per sei mesi (due terzi: 113.000–335.000 €), oppure il lavoro vero di un terzo di tutte le verifiche.
- Errore in buona fede (lo stesso wallet su due computer che pagano insieme). Con R6 una delle due versioni arriva ai due terzi, oppure nessuna: in quel caso si rifà il pagamento, senza bloccare nulla. Con «catena ferma» si perderebbe il wallet.
Come paga un fondo, e il lavoro che si può copiare
Fin qui un fondo pagava 60 € a replica, ma il protocollo non conosce il prezzo in euro: la regola deve usare solo TheoryCoin. Con le decisioni 77–80 si sono provate quattro regole di pagamento e tre ripartizioni dell'emissione, nei quattro ambienti e ai tre livelli d'uso (4320 corse). Il criterio è lo stesso: più risposte giuste nel caso peggiore, poi la media.
| Come paga il fondo | Ripartizione dell'emissione | Risposta giusta, caso peggiore | Risposta giusta, media | Teorie inventate nel 2° anno, caso peggiore | Ai nodi finti, caso peggiore | Repliche oneste per domanda |
|---|---|---|---|---|---|---|
| ogni 13 settimane il fondo si divide tra le repliche confermate | 20% studi, 50% repliche, 30% ricalcolo e conservazione | 90% | 93% | 3% | 71% | 8,24 |
| ogni 13 settimane il fondo si divide tra le repliche confermate | 20% studi, 70% repliche, 10% ricalcolo e conservazione | 90% | 93% | 3% | 50% | 9,50 |
| un quarto del fondo a ogni replica confermata | 20% studi, 80% repliche, ricalcolo e conservazione non pagati | 90% | 93% | 3% | 0% | 11,06 |
| ogni 13 settimane il fondo si divide tra le repliche confermate | 20% studi, 80% repliche, ricalcolo e conservazione non pagati | 90% | 93% | 3% | 0% | 9,98 |
| un quarto del fondo a ogni replica confermata | 20% studi, 70% repliche, 10% ricalcolo e conservazione | 90% | 93% | 3% | 50% | 10,43 |
| 60 € a replica (riferimento: il protocollo non conosce l'euro) | 20% studi, 80% repliche, ricalcolo e conservazione non pagati | 89% | 93% | 3% | 0% | 10,77 |
| 60 € a replica (riferimento: il protocollo non conosce l'euro) | 20% studi, 70% repliche, 10% ricalcolo e conservazione | 89% | 93% | 3% | 50% | 9,92 |
| un quarto del fondo a ogni replica confermata | 20% studi, 50% repliche, 30% ricalcolo e conservazione | 88% | 92% | 3% | 71% | 9,16 |
| 60 € a replica (riferimento: il protocollo non conosce l'euro) | 20% studi, 50% repliche, 30% ricalcolo e conservazione | 86% | 92% | 3% | 71% | 7,79 |
| 30 TheoryCoin a replica confermata | 20% studi, 50% repliche, 30% ricalcolo e conservazione | 84% | 90% | 3% | 71% | 6,31 |
| 30 TheoryCoin a replica confermata | 20% studi, 80% repliche, ricalcolo e conservazione non pagati | 84% | 90% | 2% | 0% | 8,35 |
| 30 TheoryCoin a replica confermata | 20% studi, 70% repliche, 10% ricalcolo e conservazione | 84% | 90% | 4% | 50% | 7,73 |
- Una tariffa fissa in TheoryCoin è la regola peggiore (84% nel caso peggiore): non segue il valore della moneta, quindi è troppo bassa quando il prezzo scende e troppo alta quando sale.
- Pagare una quota del fondo a ogni replica confermata, o dividerlo ogni 13 settimane, segue da sé il valore e dà le risposte migliori (90% nel caso peggiore, 93% in media).
- Pagare ricalcolo e conservazione per nodo regala ai nodi finti fino al 71% di quella parte, quando la moneta è stabile. Non pagarli, e dare la loro parte alle repliche, porta i nodi finti a zero e le repliche oneste a 11 per domanda. Ricalcolo e conservazione restano un dovere di ogni nodo, come oggi.
Come nascono i primi TheoryCoin
Il modello partiva da 20.000 TheoryCoin già esistenti, ma qualcuno deve averli. Si è variata la quantità al lancio, da quasi nulla (100) a 80.000, con la domanda presente dal primo giorno oppure crescente in un anno, come in un lancio vero (1440 corse).
| TheoryCoin al lancio | Domanda | Risposta giusta, caso peggiore | Teorie inventate nel 1° anno, caso peggiore | Fondi dopo un anno | Moneta in mano alla dotazione dopo due anni |
|---|---|---|---|---|---|
| 100 | c'è dal primo giorno | 90% | 5% | 1%–1% | 0%–1% |
| 100 | cresce in un anno | 89% | 6% | 30%–37% | 0%–1% |
| 5.000 | c'è dal primo giorno | 89% | 7% | 25%–27% | 16%–28% |
| 5.000 | cresce in un anno | 89% | 3% | 107%–256% | 16%–29% |
| 20.000 | c'è dal primo giorno | 90% | 3% | 54%–57% | 44%–61% |
| 20.000 | cresce in un anno | 88% | 2% | 103%–234% | 44%–62% |
| 80.000 | c'è dal primo giorno | 89% | 3% | 90%–96% | 76%–86% |
| 80.000 | cresce in un anno | 89% | 3% | 99%–158% | 76%–87% |
- La conoscenza quasi non cambia: dall'88% al 90% di risposte giuste, con poche teorie inventate.
- Cambia chi possiede la moneta. Dopo due anni chi ha ricevuto la dotazione iniziale tiene il 16–29% di tutti i TheoryCoin con 5.000, il 44–62% con 20.000 e il 76–87% con 80.000; con una dotazione minima, praticamente niente.
- Cambia il valore dei fondi nel primo anno. Partendo quasi da zero, i primi TheoryCoin valgono molto e poi si diluiscono: chi versa perde circa il 65% se la domanda cresce in un anno, quasi tutto se la domanda c'è dal primo giorno. Con una dotazione di 5.000 o più il valore tiene.
Che cosa ne segue
- La forma C è quella che trasforma meglio il denaro in conoscenza. È anche l'unica in cui i soldi di chi vuole un esito pagano misure che possono smentirlo (messaggio 48). B premia chi pubblica, non chi verifica, e lascia spazio ai falsari e ai finanziatori di parte. A non permette di sostenere una questione precisa.
- Pagare il lavoro confermato è meglio che pagare quello consegnato in tutte le condizioni provate. Da solo però non basta quando i soldi sono tanti.
- Il costo della falsificazione decide tutto. Ogni ricompensa per una misura deve restare sotto il costo di inventarla. Prima che i premi diventino consistenti serve PHS, o un controllo che renda altrettanto cara la falsificazione.
- La quantità di moneta va legata al costo della falsificazione. Finché inventare costa poco servono premi piccoli: un'emissione fissa e bassa. Quando c'è il PHS si passa alla quantità costante: si conia quanto si distrugge, e il valore resta stabile.
- Il lavoro che si può copiare (ricalcolo e conservazione) non si paga; un fondo paga una quota di ciò che contiene a ogni replica confermata.
- Per i pagamenti l'ordine causale non basta. Contro l'attacco ritardato regge solo una regola con testimoni per merito; anche la sua sicurezza, come le ricompense, dipende dal costo della falsificazione.
Limiti del modello
- Le cifre di partenza sono scelte, non misurate. Costi, quote e domanda sono plausibili ma inventati; contano i confronti e le direzioni, non i valori.
- Un falsario non è una persona. I mestieri sono quantità che crescono o calano con il reddito; non si seguono individui, né la concentrazione della ricchezza in poche mani.
- Il mercato è semplice. Prezzo dato dal denaro tenuto, speculatori che inseguono il rendimento, nessuna borsa esterna, nessun cambio con Monero o euro.
- La frode si vede solo con le repliche. Non sono modellati PHS, revisioni umane, ritrattazioni, né i semata e le fallacie che già scartano alcune teorie.
- Gli aspetti legali non sono simulati. Un token che si compra con euro potrebbe ricadere nel regolamento europeo MiCA.
- Spesa doppia: tutti i nodi conoscono tutti (decisione 72), e chi è acceso resta acceso per tutta la prova.
Come rifare i calcoli
Nel repository TheoryFlow, cartella simulazioni/theorycoin: python3 simula.py esegue tutti gli scenari e scrive risultati.json; python3 pagina.py rigenera tabelle e grafici di questa pagina. Solo libreria standard di Python.